Linux基礎教程 linux系統中的批量刪除文件與空文件刪除的命令介紹

Linux基礎教程  linux系統中的批量刪除文件與空文件刪除的命令介紹linux

Linux資料下面刪除文件或者目錄命令rm(remove):dom

  兄弟連Linux培訓功能說明:刪除文件或目錄。教程

  語 法:rm [-dfirv][--help][--version][文件或目錄...]遞歸

  補充說明:執行rm指令可刪除文件或目錄,如欲刪除目錄必須加上參數"-r",不然預設僅會刪除文件。rem

  參 數:get

  -d或--directory 直接把欲刪除的目錄的硬鏈接數據刪成0,刪除該目錄。it

  -f或--force 強制刪除文件或目錄。io

  -i或--interactive 刪除既有文件或目錄以前先詢問用戶。基礎

  -r或-R或--recursive 遞歸處理,將指定目錄下的全部文件及子目錄一併處理。隨機數

  -v或--verbose 顯示指令執行過程。

  --help 在線幫助。

  Linux下批量刪除空文件(大小等於0的文件)的方法

  代碼以下

  find . -name "*" -type f -size 0c | xargs -n 1 rm -f

  用這個還能夠刪除指定大小的文件,只要修改對應的 -size 參數就行,例如:

  代碼以下

  find . -name "*" -type f -size 1024c | xargs -n 1 rm -f

  就是刪除1k大小的文件。(但注意 不要用 -size 1k,這個獲得的是佔用空間1k,不是文件大小1k的)。

  若是隻要刪除文件夾或者名字鏈接等,能夠相應的改 -type 參數,具體細節見 man find

  刪除N天前文件

  LINUX按時間批量刪除文件(刪除N天前文件)

  代碼以下

  find /opt/Oracle/admin/CCXE/bdump/ -mtime +10 -name "*.*" -exec rm -Rf {} ;

  /opt/Oracle/admin/CCXE/bdump/ :想要進行清理的任意目錄

  -mtime:標準語句寫法

  +10:查找10天前的文件,這裏用數字表明天數,+30表示查找30天前的文件

  "*.*":但願查找的數據類型,"*.jpg"表示查找擴展名爲jpg的全部文件,"*"表示查找全部文件

  -exec:固定寫法

  rm -rf:強制刪除文件,包括目錄

  {} ; :固定寫法,一對大括號+空格+/+;

  完全刪除文件

  有些時候咱們要完全刪除一些文件,可使用shred命令來實現,shred是coreutils的一部分,因此Linux中基本都會有這個命令。

  shred完全刪除文件的方法:

  代碼以下

  $ shred -u file

  shred會用一些隨機內容覆蓋文件所在的節點和數據塊,並刪除文件(-u參數)。

  若是想清除的更完全一點能夠加-z 參數,意思是先用隨機數據填充,最後再用0填充。

  代碼以下

  $ shred -u -z file

  另外shred還能夠清除整個分區或磁盤,好比想完全清除/dev/sdb1分區的內容能夠這樣:

  $ shred /dev/sdb1 (注意不要加-u參數)

  shred的詳細參數:

  -f, --force 更改權限容許寫入(若有必要)

  -n, --iterations=N 重寫N次,默認爲3次

  --random-source=FILE 從指定文件讀取數據

  -s, --size=N 將文件粉碎爲固定大小 (可以使用後綴如K、M、C等)

  -u, --remove 重寫後截短並移除文件

  -v, --verbose 顯示進度

  -z, --zero - add 用0覆蓋數據

  –help 顯示幫助

  –version 顯示版本信息

相關文章
相關標籤/搜索