我的文件名称为:
Ff6_01.png
Ff6_02.png
Ff6_03.png
...
...
FF1_01.png
FF1_02.png
FF1_03.png
我想删除每个文件名的前两个字母,因为那时我会有正确的文件顺序。有谁知道linux shell中的命令?
答案 0 :(得分:6)
您可以使用语法${file:2}
来引用从第3个字符开始的名称。
因此,您可以这样做:
for file in F*png
do
mv "$file" "${file:2}"
done
如果${file:2}
对您不起作用(rename
),您也可以使用sed
或cut
:
for file in F*png
do
new_file=$(sed 's/^..//' <<< "$file") <---- cuts first two chars
new_file=$(cut -c3- <<< "$file") <---- the same
mv "$file" "$new_file"
done
$ file="Ff6_01.png"
$ touch $file
$ ls
Ff6_01.png
$ mv "$file" "${file:2}"
$ ls
6_01.png