Linux 刪除帶有特殊字符的文件

原文鏈接:https://www.cnblogs.com/tester-hehehe/p/5715128.html

首先 做好備份, 腳本語句在測試環境下 測試一遍。。

通過文件的inode號刪除文件

先用ls -i 找出要刪除文件的inode 號

   ls -i |grep xxxxxx|awk '{print $2}'|xargs -i rm -f {}

    xxxxxx爲文件的 inode 號

通過文件大小刪除文件

 1.刪除當前目錄以及所有子目錄下的文件大小爲零的文件

    find ./ -size 0 -exec rm {} \;

 2.刪除當前目錄下文件大小爲零的文件(子目錄不刪除)

find ./ -maxdepth 1 -empty -type f -print -delete          #-maxdepth 指定目錄層級 

 

#/bin/bash
for filename in `ls`
do
    if test -d $filename
    then continue
    else    
       a=$(ls -l $filename | awk '{ print $5 }')
            if test $a -eq 0
             then
                rm $filename
             fi
        fi      
done

 

 

將文件夾下所有文件都移動到新建的某個目錄下,然後將需要的文件移出來,最後強制刪除新建的文件

 

Linux 使用 rm刪除文件的時候都會提示是否要刪除    而且 `rm 文件夾 `  不加參數-rf文件夾是 刪除不了的 

我們可以通過  rm ./* 來一個個判斷是否刪除    ‘yes’ or ‘no’       (比較冒險  不推薦)

標籤: linux

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章