bash:查找特定文件并剪切最后5个字符

问题描述 投票:0回答:1

我的文件夹./下有一些文件:

$ls
XX
AArse
BArse
CCCAArse
YY
....

某些命令之后,我得到

AA
BA
CCCAA

如果文件名末尾有rse

将重命名(剪切姓res)。

如何在命令行中实现某些命令

bash file-rename
1个回答
0
投票

使用Perl的独立rename命令,正则表达式和bash的globbing:

rename -n 's/...$//' *rse

在某些发行版中,rename也称为prename。如果一切正常,请删除-n


0
投票

使用bash

shopt -s nullglob
for file in *rse; do
  mv -i "$file" "${file%rse}"
done

shell选项nullglob将不匹配的glob模式扩展为空字符串,参数扩展${file%rse}从文件名中删除最短的后缀rse

选项-i提示覆盖已经存在的文件。

© www.soinside.com 2019 - 2024. All rights reserved.