今天中午在處理實驗機Freebsd的時候,想刪除一個cache目錄,誰知道輸入 rm * 的命令後,大概幾秒後螢幕就跳出 /bin/rm: argument list too long 條件反射動作,上百度和google查詢,找到解決方法和原因,原因是一個資料夾下檔案太多,使用rm刪除就會出現/bin
今天中午在處理實驗機Freebsd的時候,想刪除一個cache目錄,誰知道輸入
rm *
的命令後,大概幾秒後螢幕就跳出
/bin/rm: argument list too long
條件反射動作,上百度和google查詢,找到解決方法和原因,原因是一個資料夾下檔案太多,使用rm刪除就會出現/bin/rm: Argument list too long錯誤.
解決方法:**.com/blog/431354
按網址上面寫的輸入
ls | xargs -n 10 rm -fr ls
就解決了,這句解釋為:輸出所有的檔名(用空格分割) xargs就是將ls的輸出,每10個為一組(以空格為分隔符),作為rm -rf的引數也就是說將所有檔名10個為一組,由rm -rf刪除,這樣就不會超過命令列的長度了.
另外找到用指令碼的方法:
for loop in `ls 目錄路徑`
do
rm -f $loop
done
注意:$loop是刪除的檔名,確保路徑是否正確。
但這個還沒有實驗過。