And*_*rew 2 filesystems bash ubuntu directory rename
可能的重复:
重命名多个文件(更改扩展名)
假设在我的当前/工作目录中有五个文件:
file1.xvg
file2.xvg
file3.xvg
file1.eps
file2.eps
Run Code Online (Sandbox Code Playgroud)
有什么方法可以重命名当前/工作目录中的所有文件,扩展名为.xvg并给它们新的扩展名.txt(单独留下.eps文件)?可以用这个来完成rename
,mv
或mmv
也许?我正在使用 Ubuntu Linux。谢谢!
Lev*_*von 10
对于您的特定问题,此命令将起作用。验证您对建议的重命名是否满意,然后删除-n
以继续操作。
rename -n 's/\.xvg$/.txt/' *.xvg
Run Code Online (Sandbox Code Playgroud)
这基本上意味着对于.xvg
当前目录中具有扩展名的所有文件,查找以 ( $
)结尾的文件.xvg
并将该部分名称更改为.txt
.
更多细节和下面的例子。
是的,该rename
命令会为您执行此操作。一个简短的示例,其中我将所有带有.html
扩展名的文件重命名为.html_bak
,忽略目录中的其他文件。
我会强烈建议使用-n
命令行选项第一(下文解释),看看有什么变化将执行实际的命令之前发生。
我从什么开始:
$ ls
a.html a.txt b.html htmlfile
Run Code Online (Sandbox Code Playgroud)
的-n
手段做一个“试运行” ..只是表明什么会改变,不改变任何事情!
$ rename -n 's/\.html$/.html_bak/' *
a.html renamed as a.html_bak
b.html renamed as b.html_bak
Run Code Online (Sandbox Code Playgroud)
原来的文件还在。
$ ls
a.html a.txt b.html htmlfile
Run Code Online (Sandbox Code Playgroud)
现在是真实的:
$ rename 's/\.html$/.html_bak/' *
Run Code Online (Sandbox Code Playgroud)
文件已重命名。
$ ls
a.html_bak a.txt b.html_bak htmlfile
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我*
用来指定重命名操作要考虑的文件。我本可以将其限制为.html
仅使用*.html
.
有关更多信息,请参阅重命名手册页
归档时间: |
|
查看次数: |
20451 次 |
最近记录: |