通过inode来操作文件
2012-09-13 19:37 康杜 阅读(958) 评论(3) 编辑 收藏 举报在unix或linux上,有时候我们会遇到一些文件名是乱码。这时候我们不能通过文件名来操作文件。这种情况下,我们可以考虑通过find加上文件唯一的inode来操作。
$ cd /tmp $ touch Заглавная_страница $ ls
通过ls -il 找到这个文件的inode number
alex@ubuntu:/tmp$ ls -il total 7 106512 drwxrwxrwt 2 lightdm lightdm 1024 9月 13 08:26 at-spi2 106530 drwx------ 2 alex alex 1024 9月 13 17:21 CRX_75DAF8CB7768 106509 drwx------ 2 alex alex 1024 9月 13 08:26 keyring-5LKhnG 106514 drwx------ 2 lightdm lightdm 1024 9月 13 08:26 pulse-2L9K88eMlGn7 106498 drwx------ 2 root root 1024 9月 13 08:26 pulse-PKdhtXMmr18n 106524 drwx------ 2 alex alex 1024 9月 13 08:26 pulse-tgglgvvPdrP3 106516 drwx------ 2 alex alex 1024 9月 13 08:26 ssh-RVInWbFr1927 106517 -rw------- 1 alex alex 0 9月 13 08:27 tmp5VFUne 106515 -rw-rw-r-- 1 lightdm lightdm 0 9月 13 08:26 unity_support_test.0 106536 -rw-rw-r-- 1 alex alex 0 9月 13 19:30 Заглавная_страница
通过find命令根据inum找到这个文件,然后删除或者改名
alex@ubuntu:/tmp$ find . -inum 106536 -exec rm {} \;
alex@ubuntu:/tmp$ find . -inum 106536 -exec mv {} newname \;