網站首頁 編程語言 正文
一、 Linux下刪除文件和文件夾常用命令如下:
刪除文件: rm file_name
刪除文件夾: rm -rf dir
需要注意的是, rmdir 只能夠刪除空文件夾。
二、刪除指定文件(夾)之外的所有文件呢?
方法1,復制需要保留的文件到其他文件夾,然后將該目錄刪除, 然后將需要保留的移回來。
mv keep …/ #保留文件(夾)keep
rm -rf * #刪除當前文件夾里的所有文件
mv …/keep ./ #將原來的東西移動回來
方法2,當前文件夾中結合使用grep和xargs來處理文件名:
ls | grep -v keep | xargs rm #刪除keep文件之外的所有文件
說明: ls先得到當前的所有文件和文件夾的名字, grep -v keep,進行grep正則匹配查找keep,-v參數決定了結果為匹配之外的結果,也就是的到了keep之外的所有文件名,然后 xargs用于從標準輸入獲得參數 并且傳遞給后面的命令,這里使用的命令是 rm,然后由rm刪除前面選擇的文件。
好處:使用了grep來正則表達式來匹配文件名字,可以一次保留多個文件,從而進行更加準確的處理。
方法3,使用find命令代替ls,改進方法3從而能夠處理指定文件夾的文件:
find ./test/ | grep -v keep | xargs rm #刪除當前test文件夾中keep文件之外的所有文件
說明,用grep而不用find -name選取名字,因為find選取名字時比較麻煩,對正則表達式支持不夠,無法排除指定文件名。
5、方法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進程來處理。
原文鏈接:https://blog.csdn.net/Michael177/article/details/125119645
- 上一篇:Linux中xargs命令的用法
- 下一篇:CSS樣式:less語言的用法
相關推薦
- 2022-06-22 Git的基礎文件操作初始化查看添加提交示例教程_其它綜合
- 2022-11-26 Python?Django教程之模板的使用_python
- 2022-10-04 R語言將變量分組的3種方法實例(含cut函數說明)_R語言
- 2022-07-28 C++超詳細講解強制類型轉換_C 語言
- 2022-10-29 Spring的純注解配置詳解
- 2022-03-07 Centos7環境下YUM的搭建方法_Linux
- 2022-04-15 C#的并發機制優秀在哪你知道么_C#教程
- 2022-09-13 iOS開發之UIMenuController使用示例詳解_IOS
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支