centos 刪除指定檔案之外的其他檔案

來源:互聯網
上載者:User

標籤:

linux下刪除指定檔案之外的其他檔案 一、Linux下刪除檔案和檔案夾常用命令如下:刪除檔案: rm file  www.2cto.com  刪除檔案夾: rm -rf dir需要注意的是, rmdir 只能夠刪除 空檔案夾。 二、刪除制定檔案(夾)之外的所有檔案呢? 1、方法1,比較麻煩的做法是:複製需要保留的檔案到其他檔案夾,然後將該目錄刪除, 然後將需要保留的移動 回來。mv keep ../ #保留檔案(夾) keeprm -rf * #刪除當前檔案夾裡的所有檔案mv ../keep ./ #將原來的東西移動回來 2、方法2,當前檔案夾中結合使用grep和xargs來處理檔案名稱:ls | grep -v keep | xargs rm #刪除keep檔案之外的所有檔案說明: ls先得到當前的所有檔案和檔案夾的名字, grep -v keep,進行grep正則匹配尋找keep,-v參數決定了結果為匹配之外的結果,也就是的到了keep之外的所有檔案名稱,然後 xargs用於從 標準輸入獲得參數 並且傳遞給後面的命令,這裡使用的命令是 rm,然後由rm刪除前面選擇的檔案。好處:使用了grep來Regex來匹配檔案名稱字,可以一次保留多個檔案,從而進行更加準確的處理。 3、方法3,使用find命令代替ls,改進方法3從而能夠處理制定檔案夾的檔案:find ./test/ | grep -v keep | xargs rm #刪除當前test檔案夾中keep檔案之外的所有檔案說明,用grep而不用find -name選取名字,因為find選取名字時比較麻煩,對Regex支援不夠,無法排除指定檔案名稱。 4、方法4,直接使用find命令刪除其他檔案:find ./ -name ‘[^k][^e][^e][^p]*‘  -exec rm -rf {} \; #刪除keep以外的其他檔案。find ./ -name ‘[^k][^e][^e][^p]*‘  | xargs rm -rf  #刪除keep以外的其他檔案。推薦!說明:上面第二行的代碼效率高些,原因在於刪除多個檔案時 -exec會啟動多個進程來處理,而xargs會啟動一個rm進程來處理。

centos 刪除指定檔案之外的其他檔案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.