有點新手,抱歉。
我想產生一個腳本來輸入 current_directory 下名稱中包含“bifn*0.2e”的所有目錄,然後每分鐘自動刪除名稱中包含“acc”的檔案。這些是由另一個過程不斷產生的。這就是我所擁有的並且似乎有效。
#!/bin/bash
while true
do
find /current_directory/bifn*0.2e* -name '*acc*' -mmin +1 -delete
sleep 60
done
但是,在運行腳本 ./auto_remove 後,我執行了 Ctrl+Z 並bg
使其在背景運行。我希望這個腳本即使在我退出終端後也能繼續刪除檔案。那部分也有效。但現在我無法殺死它正在做的事情,也沒有看到腳本正在運行的證據(除了 acc 檔案被刪除!)。我嘗試過輸入ps fjx
,或者jobs.
也嘗試過重新運行腳本並註釋掉查找行。
所以,請幫我阻止它正在做的事情!而且,為了將來的使用,我怎樣才能更優雅地做我想做的事情,同時能夠在需要時終止它?
答案1
好吧,我發現了終止的問題。我必須登入正在執行該腳本的特定節點,然後執行kill。我仍然不確定將來如何避免這種情況。
答案2
一半的腳本是不必要的。刪除所有時間檢查。只需將其設定為檢查名稱並刪除即可。然後在每分鐘的 crontab 中設定它。如果由於某種原因想停止它,只需透過註解執行行來停止 cron 並重新啟動 cron