当前位置: 首页 > 面试题库 >

Shell / Bash快捷方式,用于批量重命名文件夹中的文件

仇航
2023-03-14
问题内容

Shell /
Bash中是否有快捷方式,可以根据正则表达式或某些其他条件来重命名文件夹中的所有文件。我在这里寻找的是我的文件夹文档,其中有一个100文本文件,具有以下命名约定:

<longdocumentidentifier>-doc-<counter>.txt.

我需要将所有具有上述约定的文件重命名为:

doc-<counter>.txt

有没有一种单线可以帮助我解决上述问题?


问题答案:

我建议这样的事情:

for i in *-doc-*.txt; do mv "$i" "${i/*-doc-/doc-}"; done

${i/*-doc-/doc-}替换第一次出现*-doc-doc-

如果您需要进行多个替换(请参见注释1),则需要使用该${var//Pattern/Replacement}变体。如果需要替换名称的开头,则需要使用${var/#Pattern/Replacement},如果需要替换结尾的名称(即,扩展名),则需要使用${var/%Pattern/Replacement}表格。

有关更多详细信息,请参见Shell参数扩展。此扩展特定于bash。



 类似资料:
  • 本文向大家介绍Python批量重命名同一文件夹下文件的方法,包括了Python批量重命名同一文件夹下文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python批量重命名同一文件夹下文件的方法。分享给大家供大家参考。具体分析如下: 朋友发了一个文件夹过来,里面的图片都以 .tmp 为后缀。 手工修改的话工作量太大。故写了一个 Python 脚本进行批量重命名。 对 Python

  • 问题内容: 我想批量重命名目录中的多个文件,以便从文件名中删除前面的数字和连字符。 如何使用linux命令执行此操作? 问题答案: 这应该使它: 它从块的开头(即数字)开始多次,然后连字符并将其从文件名中删除。 如果不在您的计算机中,则可以使用循环和: 测试 要么:

  • 问题内容: 有没有一种简单的方法可以使用Python重命名目录中已包含的一组文件? 示例: 我有一个充满* .doc文件的目录,我想以一致的方式重命名它们。 X.doc->“ new(X).doc” Y.doc->“ new(Y).doc” 问题答案: 这样的重命名非常容易,例如使用os和glob模块: 然后可以在示例中使用它,如下所示: 上面的示例会将dir中的所有文件都转换为,其中是文件的先前

  • 本文向大家介绍PHP实现批量重命名某个文件夹下所有文件的方法,包括了PHP实现批量重命名某个文件夹下所有文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现批量重命名某个文件夹下所有文件的方法。分享给大家供大家参考,具体如下: 自己手动这样一个个的重命名,累啊。所以还是偷懒一下。 我重命名的规则是把所有有空格的全部替换成“_”,然后再后面加一个"_s"。 更多关于PHP相关

  • 本文向大家介绍python实现批量文件重命名,包括了python实现批量文件重命名的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python批量文件重命名的具体代码,供大家参考,具体内容如下 问题描述 最近遇到朋友求助,如何将大量文件名前面的某些字符删除。 即将图中文件前的编号删除。 Python实现 用到了python中的os模块,os模块中的rename方法可以实现对文件的重命

  • 本文向大家介绍PowerShell实现批量重命名文件,包括了PowerShell实现批量重命名文件的使用技巧和注意事项,需要的朋友参考一下 假设你有一个很大的文件夹,里面全是图片,你想对文件夹中图片的名称,按照某个统一的规则进行重命名,本文的脚本会简单进行演示: 文件夹中所有的JPG文件都被重命名过了,新的图片文件名形如”pic_”和一个6位的数字,你根据这个模板稍加改装,可以完成更加丰富的自定义