
Puedo mover 5 archivos a algún lugar usando:
$ mv my-{1..5}.jpg /path/to/dir/
¿Cómo puedo hacer una copia de un archivo 5 veces fácilmente?
# doesn't work
$ cp my.jpg my-{1..5}.jpg
¿Es posible no utilizar un for loop
?
Respuesta1
Prueba esto
for f in {1..5}; do cp my.jpg my$f.jpg; done
(no tengo bash aquí para probarlo yo mismo)
Respuesta2
Aquí tienes una forma de hacerlo sin for
bucle y sin los riesgos de usar eval
:
printf '%s\n' {1..5} | xargs -I {} cp my.jpg my-{}.jpg
Sigue siendo efectivamente un bucle.
Respuesta3
Intentar tee
:
tee <my.jpg >/dev/null my-{1..5}.jpg
O parallel
:
parallel cp my.jpg ::: my-{1..5}.jpg
Respuesta4
Puedes hacerlo sin bucle... usando tee
una {}
expansión de llaves.
EDITAR:(modificado segúnDennis Williamsoncomentario:
Para un archivo llamado "my-.jpg"
pre="my-"; suf=".jpg"
<"$pre$suf" tee "$pre"{1..5}"$suf" >/dev/null