WSL 制作文件的多个副本

WSL 制作文件的多个副本

我想制作一个文件的多个副本。我找到了一个现成的解决方案并尝试了。令人惊讶的是它没有起作用。

代码:

for i in {1,2,3,4}; do cp MainFile.asy 'CopyFile_$i.asy'; done

当前输出:文件夹位置

MainFile.asy
CopyFile_$i.asy

我很惊讶我哪里错了?更多信息:尝试1: 在此输入图像描述

尝试2:从下面接受的答案并且它有效 在此输入图像描述

Attemp3:从下面的答案来看,它不起作用 在此输入图像描述

答案1

问题是单引号阻止 $i 被扩展。改成这样:

for i in {1,2,3,4}; do cp MainFile.asy "CopyFile_$i.asy"; done

对于在更多 shell 中工作的更通用的版本,可以尝试:

for i in 1 2 3 4; do cp MainFile.asy "CopyFile_$i.asy"; done

或者无需手动输入范围内的每个值:

for i in $(seq 1 4); do cp MainFile.asy "CopyFile_$i.asy"; done

相关内容