自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux下利用inode刪除指定文件

系統(tǒng) Linux
在Linux中,有時候會遇到文件名是亂碼或者是某些特殊中文的文件,這時候通過文件名就很難刪除。同時,對于linux中的任何一個文件都必然有其唯一的inode值,這時候就可以通過inode來刪除異常文件名的文件。

利用inode刪除指定文件

本文主要介紹使用inode刪除異常文件名的文件的方法,供大家參考:

在Linux中,有時候會遇到文件名是亂碼或者是某些特殊中文的文件,這時候通過文件名就很難刪除。

同時,對于linux中的任何一個文件都必然有其***的inode值,這時候就可以通過inode來刪除異常文件名的文件。

操作的對象一般為類似下面的文件:

 

  1. [root@server tmp]# ll 
  2.  
  3. 總用量 61404-rw-r--r-- 1 root root 0 6月 16 14:58 ? 
  4.  
  5. -rw-r--r-- 1 root root 0 6月 19 12:29 ?? 
  6.  
  7. -rw-r--r-- 1 root root 0 6月 21 14:53 ???3kqU-rw-r--r-- 1 root root 0 6月 21 14:53 ?6;?Xf??mA???9???T֙ 
  8.  
  9. -rw-r--r-- 1 root root 0 6月 19 12:29 9y??????sy?z?D?l???I?MO???8z????@]9??U@?XlAI]?k 

 

產生這類文件的原因:

1.上傳文件時網絡異常導致

2.Windows創(chuàng)建的某些文件名在Linux下無法正常識別

3.中文特殊字符無法識別

解決方法如下:

1.查詢這些文件的inode值

ll -i 

 

  1. [root@server tmp]# ll -i 
  2.  
  3. 總用量 6140415206100 -rw-r--r-- 1 root root 0 6月 16 14:58 ?15206090 -rw-r--r-- 1 root root 0 6月 19 12:29 ??15206092 -rw-r--r-- 1 root root 0 6月 21 14:53 ???3kqU15206233 -rw-r--r-- 1 root root 0 6月 21 14:53 ?6;?Xf??mA???9???T֙ 
  4.  
  5. 15206235 -rw-r--r-- 1 root root 0 6月 21 14:53 A??K? 

以上,最左邊的數(shù)字即為對應文件的inode值,不過無法直接使用rm命令刪除文件,需要其他命令配合使用

2.刪除異常文件

正常情況下這些文件也是可遇不可求的,不過涉及到rm的命令要小心謹慎,事前做一下測試,熟練下操作怎么也是不為過的,沒有這些亂碼的文件,可以使用正常的文件做測試,

有以下這幾種方法:

先創(chuàng)建需要的文件

 

 

  1. [root@zstest1 tmp]# cd /tmp 
  2.  
  3. [root@zstest1 tmp]# touch aaa bbb ccc ddd eee 
  4.  
  5. [root@zstest1 tmp]# ll -i 
  6.  
  7. 總用量 01442581 -rw-r--r-- 1 root root 0 9月 22 15:00 aaa1442582 -rw-r--r-- 1 root root 0 9月 22 15:00 bbb1442583 -rw-r--r-- 1 root root 0 9月 22 15:00 ccc1442584 -rw-r--r-- 1 root root 0 9月 22 15:00 ddd1442585 -rw-r--r-- 1 root root 0 9月 22 15:12 eee 

 

(1)使用find自帶的delete參數(shù)進行刪除aaa文件

  1. [root@zstest1 tmp]# find ./* -inum 1442581 -delete 
  2.  
  3. [root@zstest1 tmp]# ll -i 
  4.  
  5. 總用量 0 
  6.  
  7. 1442582 -rw-r--r-- 1 root root 0 9月 22 15:00 bbb 
  8.  
  9. 1442583 -rw-r--r-- 1 root root 0 9月 22 15:00 ccc 
  10.  
  11. 1442584 -rw-r--r-- 1 root root 0 9月 22 15:00 ddd 
  12.  
  13. 1442585 -rw-r--r-- 1 root root 0 9月 22 15:12 eee 

 

(2)使用find自帶的-exec參數(shù)結合rm命令刪除bbb文件(進行刪除確認)

 

  1. [root@zstest1 tmp]# find ./* -inum 1442582 -exec rm -i {} \; 
  2.  
  3. rm:是否刪除普通空文件 "./bbb"?y 
  4.  
  5. [root@zstest1 tmp]# ll -i 
  6.  
  7. 總用量 0 
  8.  
  9. 1442583 -rw-r--r-- 1 root root 0 9月 22 15:00 ccc 
  10.  
  11. 1442584 -rw-r--r-- 1 root root 0 9月 22 15:00 ddd 
  12.  
  13. 1442585 -rw-r--r-- 1 root root 0 9月 22 15:12 eee 

 

(3)使用find自帶的-exec參數(shù)結合rm命令刪除ccc文件(不進行刪除確認)

  1. [root@zstest1 tmp]# find ./* -inum 1442583 -exec rm -f {} \; 
  2.  
  3. [root@zstest1 tmp]# ll -i 
  4.  
  5. 總用量 0 
  6.  
  7. 1442584 -rw-r--r-- 1 root root 0 9月 22 15:00 ddd 
  8.  
  9. 1442585 -rw-r--r-- 1 root root 0 9月 22 15:12 eee 

 

(4)使用find和xargs結合刪除ddd文件(無法使用-i參數(shù)進行刪除確認)

  1. [root@zstest1 tmp]# find ./* -inum 1442584 |xargs rm -f 
  2.  
  3. [root@zstest1 tmp]# ll -i 
  4.  
  5. 總用量 0 
  6.  
  7. 1442585 -rw-r--r-- 1 root root 0 9月 22 15:12 eee 

 

(5)使用rm命令刪除指定文件(由find命令找到的文件名)

  1. [root@zstest1 tmp]# rm `find ./* -inum 1442574` 
  2.  
  3. rm:是否刪除普通空文件 "./eee"?y 
  4.  
  5. [root@zstest1 tmp]# ll 
  6.  
  7. 總用量 0 
  8.  
  9. # 使用find命令的-inum選項確認文件名 
  10.  
  11. [root@zstest1 tmp]# touch fff 
  12.  
  13. [root@zstest1 tmp]# ll -i 
  14.  
  15. 總用量 01442574 -rw-r--r-- 1 root root 0 9月 22 15:38 fff 
  16.  
  17. [root@zstest1 tmp]# find ./* -inum 1442574 
  18.  
  19. ./fff 

 

總結一下:

以上幾種不同的刪除方式,總體來說都是通過指定文件的inode值,使用find命令的-inum選項確認其文件名,然后傳遞給rm命令進行刪除

完畢,呵呵呵

如果這篇文章使你有所收獲,我很榮幸。另外,如果你有時間,可以選擇將它分享出去,讓更多的人獲益,謝謝你

責任編輯:龐桂玉 來源: 嵌入式Linux中文站
相關推薦

2011-04-14 15:12:10

Linux恢復

2017-01-12 19:22:19

Linuxlsof命令恢復刪除的文件

2017-11-03 09:59:16

Linux文件空間

2021-02-03 10:43:54

Linux系統(tǒng)磁盤

2020-01-07 15:10:32

Linuxinode命令

2021-09-13 12:15:57

Linux文件命令

2020-10-12 07:44:20

Linux舊文件tmpwatch

2009-02-27 11:01:46

LinuxNoStaples掃描文檔

2011-03-18 10:16:13

LinuxiptablesIP

2022-11-02 08:20:43

Linux

2009-11-27 13:26:15

Open Suse

2020-09-16 23:04:32

Linux創(chuàng)建用戶主adduser

2017-01-16 10:40:33

2016-12-13 23:08:48

Linux命令

2009-08-17 08:29:00

c#刪除指定文件

2009-07-18 10:42:23

粘著位Unix文件惡意刪除

2009-08-30 15:00:35

UnixUnix文件惡意刪除

2009-02-10 10:34:20

2012-05-08 10:51:10

Linuxshell腳本

2017-08-25 15:56:54

Linuxproc文件系統(tǒng)CPU利用率
點贊
收藏

51CTO技術棧公眾號