我正在嘗試創建一個運行行程的 .sh 檔案,然后將一些日志輸出寫入單獨的檔案。除了一種讓 cygwin 實際寫入檔案的方法之外,我幾乎所有東西都在作業。以下兩個都顯示了一個新的 cygwin 視窗,并且似乎遵循日志檔案,但都沒有寫入輸出檔案:
cygstart tail -f ./logs/full-log.txt | grep --line-buffered "LOG_FILE:" > ./logs/lrp-log.txt
mintty tail -f ./logs/full-log.txt | grep --line-buffered "LOG_FILE:" > ./logs/lrp-log.txt
以下作業,但我想把它合并到我的更大的腳本中,所以我需要某種方式讓它在后臺運行,以便我的腳本可以繼續運行。
tail -f ./logs/full-log.txt | grep --line-buffered "LOG_FILE:" > ./logs/lrp-log.txt
uj5u.com熱心網友回復:
我懷疑
cygstart tail -f ./logs/full-log.txt | grep --line-buffered "LOG_FILE:" > ./logs/lrp-log.txt
方法:
{ cygstart tail -f ./logs/full-log.txt; } | grep --line-buffered "LOG_FILE:" > ./logs/lrp-log.txt
即你正在運行:
{ cygstart tail } | grep
而不是你想要做的:
cygstart { tail | grep }
如果您只是想修改一個 shell 腳本以放入tail | grep后臺,那么這可能就是您真正需要的:
( tail -f ./logs/full-log.txt | grep --line-buffered "LOG_FILE:" > ./logs/lrp-log.txt; ) &
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/397136.html
