使用循环重命名文件

20 浏览
0 Comments

使用循环重命名文件

这个问题已经在这里有了答案:

基于 Unix 模式重命名多个文件

我有很多以相同格式 (???_ideal.sdf) 命名的文件,我需要将所有这些文件重命名为 (???.sdf),从文件名中移除 \"ideal\"。例如:

Files: 
002_ideal.sdf 
ERT_ideal.sdf 
234_ideal.sdf 
sCX_idel.sdf
New Files:
002.sdf 
ERT.sdf 
234.sdf 
SCX.sdf

我想使用循环,但我不知道如何指示在新的文件名中应该删除 \"individual\"。

例如:

for file in ???_individual.sdf; mv $file 什么?

admin 更改状态以发布 2023年5月21日
0
0 Comments

\n\n根据这个答案,你也可以使用以下一行代码来编写它:\n\n

rename 's/^(.*)_ideal.png/$1.png/s' **/**

\n\n第一个参数替换了_ideal.png,第二个参数表示所有文件。

0
0 Comments

根据您的提供的样本,请尝试以下步骤。这只会在终端上打印重命名命令(在实际更名之前,请确保命令正确无误),如果命令正确无误,请从以下内容中删除 echo,以执行实际重命名操作。 \n

for file in *_ideal.sdf
do
   echo mv "$file" "${file/_ideal/}"
done 

0