正则表达式 – 使用正则表达式在bash中复制和重命名多个文件
发布时间:2020-12-13 22:56:01 所属栏目:百科 来源:网络整理
导读:我有一个文件结构: A/ 2098765.1ext 2098765.2ext 2098765.3ext 2098765.4ext 12345.1ext 12345.2ext 12345.3ext 12345.4extB/ 2056789.1ext 2056789.2ext 2056789.3ext 2056789.4ext 54321.1ext 54321.2ext 54321.3ext 54321.4ext 我需要重命名所有以20开
我有一个文件结构:
A/ 2098765.1ext 2098765.2ext 2098765.3ext 2098765.4ext 12345.1ext 12345.2ext 12345.3ext 12345.4ext B/ 2056789.1ext 2056789.2ext 2056789.3ext 2056789.4ext 54321.1ext 54321.2ext 54321.3ext 54321.4ext 我需要重命名所有以20开头的文件,以10开头;即我需要将B / 2022222.1ext重命名为B / 1022222.1ext 我看到有关重命名多个文件的许多其他问题,但似乎无法使我的工作.只是为了看看我是否可以弄清楚我在做什么,我实际上尝试做我做的复制/重命名: for file in "*/20?????.*"; do echo "{$file/20/10}"; done 但我得到的是 {*/20?????.*/20/10} 有人能告诉我怎么做吗?
你只是有一点不正确的语法是:
for file in */20?????.*; do mv $file ${file/20/10}; done >从引用的参数中删除引号,否则文件扩展名不会发生.>替换中的$应该在括号之前 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |