如何轻松复制一份文件并复印 5 份?

如何轻松复制一份文件并复印 5 份?

我可以使用以下方法将 5 个文件移动到某个位置:

$ mv my-{1..5}.jpg /path/to/dir/

如何轻松复制一份文件 5 份

# doesn't work
$ cp my.jpg my-{1..5}.jpg

可以不使用吗for loop

答案1

尝试这个

for f in {1..5}; do cp my.jpg my$f.jpg; done

(这里没有 bash,所以自己尝试一下)

答案2

for这是一种无需循环且没有使用风险的方法eval

printf '%s\n' {1..5} | xargs -I {} cp my.jpg my-{}.jpg

它实际上仍然是一个循环。

答案3

尝试tee

tee <my.jpg >/dev/null my-{1..5}.jpg

或者parallel

parallel cp my.jpg ::: my-{1..5}.jpg

答案4

您可以在不使用循环的情况下完成此操作......使用tee{}括号扩展。

编辑:(根据丹尼斯·威廉姆森评论:

对于名为“my-.jpg”的文件

pre="my-"; suf=".jpg"
<"$pre$suf" tee "$pre"{1..5}"$suf" >/dev/null

相关内容