Jawaban:
Coba ini
for f in {1..5}; do cp my.jpg my$f.jpg; done
(tidak perlu bash di sini untuk mencobanya sendiri)
for loop
?
seq
tidak perlu di Bash. Kamu bisa memakai for f in {1..5}
atau for ((f=1; f<=5; f++))
Berikut adalah cara untuk melakukannya tanpa for
lingkaran dan tanpa risiko menggunakan eval
:
printf '%s\n' {1..5} | xargs -I {} cp my.jpg my-{}.jpg
Itu masih efektif satu loop.
Anda dapat melakukannya tanpa loop .. menggunakan tee
dan {}
ekspansi brace.
EDIT: (diamandemen sesuai Dennis Williamson komentar:
Untuk file bernama "my-.jpg"
pre="my-"; suf=".jpg"
<"$pre$suf" tee "$pre"{1..5}"$suf" >/dev/null
<"$pre$suf" tee "$pre"{1..5}"$suf"
berfungsi dengan baik.
for f in $f
denganfor f in $(seq 5)
.