使用模式或通配符复制文件

使用模式或通配符复制文件

我正在尝试复制所有文件,如下所示:

...
dialogue022-en.txt
dialogue023-en.txt
dialogue024-en.txt
...

放入这样的文件中:

...
dialogue022-pivot.txt
dialogue023-pivot.txt
dialogue024-pivot.txt
...

答案1

要执行复制,只需使用:

for i in dialogue*-en.txt; do cp "$i" "${i/-en.txt}"-pivot.txt;done

或者,要先查看命令,请使用:

for i in dialogue*-en.txt; do echo cp "$i" "${i/-en.txt}"-pivot.txt;done

斜杠后的部分仅表示应从原始文件名中减去的字符串。

感谢https://unix.stackexchange.com/questions/122605/how-do-i-copy-multiple-files-by-wildcard

答案2

您可以使用正则表达式来代替杰任巴特像这样:

jren "^(dialogue-\d*-)en(\.txt)$" "$1pivot$2"

脚步:

  1. 复制所有代码本页的帖子,打开记事本并将这些文件保存为 jren.txt 并放在与这些文件相同的文件夹中。
  2. 将 jren.txt 重命名为 jren.bat
  3. 按 Windows(按钮)+R 打开 cmd,然后输入 cmd 并转到文件所在的文件夹cd c:\wheremyfilesare(或者在按住 shift 的同时右键单击 Windows 资源管理器中的文件夹并选择“在此处打开命令行”)
  4. 复制并粘贴上面的行到命令行中,瞧!

我通过德本汉姆而且效果非常好。

编辑

警告:这会重命名文件,因此如果您想保留这两个文件,则应先将它们复制到另一个文件夹。为了以防万一,如果该论坛离线,我将jren 代码可在此处下载

相关内容