Nohup

為什麼 clear 命令不適用於 nohup sleep?

  • December 30, 2016

這是2個程式碼範例。兩者都是nohupbash 字元串中的程式碼。第一個完成工作,第二個沒有。我問為什麼。

sudo apt-get purge zip unzip
nohup bash -c " sleep 20s; apt-get install zip unzip; " & 

上述命令在後台執行並安裝為這些軟體(我通過執行標準輸入“ zip”確認了它。


nohup bash -c " sleep 20s; clear; "

此命令在前台執行但不清除 tty。這是為什麼?我該怎麼做才能清除目前會話的螢幕?是否有任何參數/執行方式/腳本可以與命令一起執行,這可能對此有所幫助?

clear程序正在寫入由命令重定向標準輸出。所以這對終端沒有影響。nohup

您可以在 中看到輸出(來自clearnohup.out

你可以這樣做:

nohup bash -c " sleep 20s; clear >/dev/tty; "

它告訴外殼將輸出重定向cleartty設備。您可以使用該tty命令來辨識您正在使用的終端設備,例如,

   nohup bash -c " sleep 20s; clear > $(tty); "

但在大多數情況下,兩者都會起作用。

您可能會收到來自 的警告nohup,可以將其靜音:

   nohup bash -c " sleep 20s; clear > $(tty); " 2>/dev/null

引用自:https://unix.stackexchange.com/questions/333644