0

我有名为t1.txt, t2.txt, t3.txt...的文件,t4.txt我需要一个 shell 脚本来重命名它,如下所示:

文件一: M.m.1.1.1.201108290000.ready

文件二: M.m.1.1.1.201108290001.ready

等等,最后4位的序列号发生变化。

如果有人帮助我,我将不胜感激:)

此致

4

1 回答 1

3

这可能是您需要的:

cd /home/me/Desktop/files/renam/
n=201108290000
for file in *.txt; do
    echo $file
    prefix=M.m.1.1.1.
    file_name=M.m.1.1.1.$n.ready
    echo $file_name
    n=$(( $n+1 ))
    mv $file $file_name
done

它与您自己编写的内容接近,您只是错过了一些 bash 语法。请注意,您可能希望更改 的初始值n,否则您提到的文件t1.txt将变为M.m.1.1.1.201108290000.ready. 根据您的用途,这可能会令人困惑。

我还建议您避免使用程序和内置函数的名称作为变量名称,例如seq在您的情况下。

于 2011-08-29T16:09:15.500 回答