rename - 用特定单词重命名多个文件
问题描述
我知道这个问题已经被问过很多次了,但是我对使用命令行很陌生,无法弄清楚我有多个文件的名称是这样的
SRR10984718_dbGaP-26719.sra
SRR10984540_dbGaP-26719.sra
SRR10984788_dbGaP-26719.sra
我想将它们重命名如下
SRR10984718.sra
SRR10984540.sra
SRR10984788.sra
我感谢您的帮助
解决方案
您可以直接使用用户renaem
或perl ,也可以使用一点点shell
脚本。
通常我直接使用Perl。
$ ls -1
SRR10984540_dbGaP-26719.sra
SRR10984718_dbGaP-26719.sra
SRR10984788_dbGaP-26719.sra
$
# dry run
$ perl -le '($old=$_) && s/_dbGaP-26719//g && print for <*.sra>'
SRR10984540.sra
SRR10984718.sra
SRR10984788.sra
$
# rename
$ perl -le '($old=$_) && s/_dbGaP-26719//g && rename($old,$_) for <*.sra>'
$
# test
$ !ls
ls -1
SRR10984540.sra
SRR10984718.sra
SRR10984788.sra
这部分s/_dbGaP-26719//g
用于匹配和替换。相应地更改所需的模式(例如_dbGaP-26719
)。
推荐阅读
- wpf - DataTemplate 在具有 ItemSource 的 StatusBar 中带有分隔符
- python - python run 3 while 无限循环
- javascript - 浏览器唤醒后重新加载ngrx存储
- ruby-on-rails - 有一个 rbenv 配置问题
- java - Mock-Server - 自定义对象作为 REST 响应
- sql - sqlite3 - GROUP BY 查询对几乎所有列求和
- html - React:简单的引导程序将卡片组包装在卡片组件中
- python - 有没有办法对数据框列进行排序以绘制一个值与所有其他值的计数?
- c# - 实例化创建两个对象而不是一个
- sql - SQL 将数据从表插入到另一个表