Command-Line

嘗試旋轉日誌但是 tee 命令在執行後無法返回

  • October 22, 2022

我的日誌nohup.outroot使用者所有,而我正在嘗試使用system具有特權訪問權限的日誌來輪換使用sudo

我編寫了以下腳本來輪換日誌。

貓rotatelog.sh

cp /var/www/html/nohup.out /var/www/html/nohup.out_$(date "+%Y.%b.%d-%H.%M.%S");
sudo tee  /var/www/html/nohup.out;

問題是當我執行rotatelog.sh它時,它完成了這項工作,但控制項沒有返回到命令行終端。

我試過> /var/www/html/nohup.out但我得到Permission denied錯誤。

如何讓日誌輪換並返回命令行?

tee將阻塞等待標準輸入。

如果你的系統提供了truncate命令,你可以試試

sudo truncate -s 0 /var/www/html/nohup.out

否則,你可以做類似的事情

: | sudo tee  /var/www/html/nohup.out

提供tee一個空的標準輸入。

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