1.每個檔案有唯一的索引号
2.ls -i 可獲得索引号
3.find指令重命名:
find . -inum 索引号 -exec mv {} newname \;
-exec後為shell指令,{}代表目前檔案名,\;表示shell指令結束
4.批量重命名:
ls -i | awk '{printf("find . -inum %s -exec mv {} %03d.txt \;\n",$1,++i)}' | sh
awk的printf指令與C語言類似,$1表示已空格分隔的第一個參數,++i變量未初始化,預設為0
linux下删除亂碼檔案名, 不廢話:
1. ls -i 列出檔案的節點ID, 如: 123456789
2. find ./ -inum 123456789 -print -exec rm -rf {} \;
批量删除:
for n in 123456789 987654321;do find . -inum $n -exec rm -f {} \;;done
本文轉自 326647452 51CTO部落格,原文連結:http://blog.51cto.com/svsky/1829540,如需轉載請自行聯系原作者