Shell
刪除幾個連續的文件名,但忽略第一個文件名的一部分
有時,我的腳本會陷入無限循環。當循環創建新文件時,事情變得一團糟。
我目前有這種文件名格式:
Task.4883.store.log
4883
櫃檯在哪裡。我需要刪除所有文件,除了前 10 個(即 0-9 中的計數器,包括在內)。目前,在我做出反應並停止腳本之前,會創建大約 10k 個文件。SSD的速度真的很快。
rm
不接受這麼多論點 會變得有點困難:-bash: /bin/rm: Argument list too long
哦,我目前在mac上。
find . -name 'Task.??*.store.log' | xargs rm -f
一個 POSIX 的,可以處理文件名中包含換行符的文件:
find . -name 'Task.??*.store.log' -exec rm -f {} +