Linux乱码文件重命名

2021-10-06 10:40:00 / Codes / 0 Comments

最近发现用宝塔解压文件后,文件名为中文的文件不显示,发现可以通过在终端下用mv命令对文件重命名来解决这个问题,但是中文文件名在终端里显示为乱码,无法通过键盘输入文件名进行重命名,但是每个文件都有一个i节点号,可以通过i节点号来管理文件。
首先,要取得文件的i节点号,这个可以通过ls命令的-i选项获得

root@VM-0-14-debian:~# ls -i
41697812 a_files 32983551 a.html

每个文件名前面的数字就是文件的i节点号。有了文件的i节点号,我们就可以利用find命令的-inum选项配合常用的文件管理命令进行文件管理了。重命名命令如下:

root@VM-0-14-debian:~# find . -inum 32983551 -exec mv {} b.html \;

这样a.html就被重命名为b.html了,特别要提一下的是,在find命令中的“{}”表示find命令找到的文件,在-exec选项执行mv命令的时候,会利用按i节点号找到的文件名替换掉“{}。





Comments