Den*_*ves 4 command-line bash rename batch-rename
假设我的文件夹中有这些文件:
cat.txt
dog.txt
house.txt
tree.txt
Run Code Online (Sandbox Code Playgroud)
我想将它们全部重命名为这样的:
file1.txt
file2.txt
file3.txt
file4.txt
Run Code Online (Sandbox Code Playgroud)
这可以通过命令行完成吗?
我只看到有关重命名具有某种模式的文件的问题,例如 rename dog1.txt
、dog2.txt
-> cat1.txt
、cat2.txt
.
使用rename
实用程序来做到这一点:
rename -n '$_ = sprintf "file%d.txt", ++$::count' *
Run Code Online (Sandbox Code Playgroud)
-n
使命令显示如果运行它会发生什么。如果输出是你想要的,运行它而不-n
实际重命名文件。*
你想要重命名,例如什么:dog*.txt
仅重命名dog1.txt
,dog2.txt
......对file1.txt
,file2.txt
等等。$_
是我们应该修改的默认输入(文件名)。=
我们正在修改它sprintf
我们定义开始由一个模式file
之后%d
手段号和结束的.txt
。++$::count
,这是每次重命名后迭代的简单计数器。这个想法来自这里。
归档时间: |
|
查看次数: |
1192 次 |
最近记录: |