删除文件的前导字符和最后一个字符

时间:2015-02-19 00:38:26

标签: bash

所以我有一组以数字开头的文件,我试图删除它们并最终得到这个

03 - Ultimate Spider-Man #130.cbz-}
03 - Ultimate Spider-Man #156.cbz-}
03 - Ultimate Spider-Man #76-77.cbz-}
04 - Ultimate Spider-Man #157.cbz-}
04 - Ultimate Spider-Man #78.cbz-}

关于如何删除' - }'的bash脚本的任何线索。和领先的数字?所以输出

Ultimate Spider-Man #130.cbz

由于

1 个答案:

答案 0 :(得分:1)

好的,您应该在标题man bash

下查看EXPANSION

如果所有文件名都以相同的字符数开头,您可以这样做:

LIST=$(ls) #you can make a list of all the file names and store in a variable
for i in $LIST; do
    mv $i ${i:4}
done

这将“替换”前四个字符和空格。

因此,如果您有03 - foo bar,则会获得foo bar

或者如果你mv $i ${i:4:4},你会得到foo

只是想知道如何做到这一点。你可以玩弄它。