Linux删除乱码文件名或者目录名

时间:2023-01-03 22:35:35

  有时,rz上传文件失败或者不小心输入命令会产生乱码文件名。因为用rm 删除特殊字符基本无效,故找到了下面两种简单易用的方法:

例子:

  [langxiaowei@mirror:~]$ ls
  ??                  ??b??g?????E#?藠?T   
  ?7?%??S?^d??X???b戮      falcon-agent-5.1.0.tar.gz 

 

1.rm命令

  rm ./*

  因为rm命令再删除文件前都会询问,故我们可以利用rm询问机制删掉乱码文件。

  确认要删除的乱码文件输入y,其他回复n。期间可以用ctrl+c随时结束

  [langxiaowei@mirror:~]$ rm ./*
  rm: remove regular file `./\245\373b\253\272g\224\257\374\346\370E#\245藠\277T ko\376\335\322\332k%\325m~P\347JbS\364]\245\345b#\250\311[\203m\376\320y\372\375LZn.\3227'? y  
  rm: remove regular file `./falcon-agent-5.1.0.tar.gz'? n
  rm: remove regular empty file `./M\277m\233\260+\263BO'? y
  rm: remove regular file `./yc_linkd-nmob_2.6_ex_CTL-64.tar.gz'? n

注意:请先确保rm命令没有被alais成rm -rf

 

2.找到索引节点进行删除(inode)

   find ./ -inum 54263996 -exec rm {} -rf \;

  [langxiaowei@mirror:~]$ ls -li
  total 11420
  6176785 -rw-rw-r-- 1 langxiaowei langxiaowei 0 Oct 13 17:26 ?7?%??S?^d??X???b戮
  6176784 -rw-rw-r-- 1 langxiaowei langxiaowei 29 Oct 13 17:26 ??b??g?????E#?藠?T ko????k%?m~P?JbS?]??b#??[?m??y??LZn.?7
  6176782 -rw-r--r-- 1 langxiaowei langxiaowei 3203523 Aug 20 10:02 falcon-agent-5.1.0.tar.gz
  6176787 -rw-rw-r-- 1 langxiaowei langxiaowei 0 Oct 24 14:15 M?m??+?BO

  [langxiaowei@mirror:~]$ find ./ -inum 6176785 -exec rm -rf {} \;

这样一个个删除inode即删除了对应文件