Cree un nombre de archivo secuencial con el comando dd

Cree un nombre de archivo secuencial con el comando dd

Soy un poco nuevo en lo que respecta a Linux, pero estoy intentando restaurar algunos archivos para uno de nuestros clientes desde una unidad de cinta antigua. Solicitaron que extraigamos los archivos en fragmentos de datos sin procesar de 1024k. El comando que estoy usando para hacer esto es el siguiente:

sudo dd /dev/nst0 of=FILE01 bs=1024k

Esto funciona bien, sin embargo, tengo que cambiar manualmente el nombre de cada archivo generado y estoy seguro de que hay una mejor manera de hacerlo. Idealmente, también me gustaría emplear el comando "dormir" o algo similar para no tener que sentarme y presionar Enter cada pocos segundos.

¡¡Muchas gracias chicos!!

Respuesta1

Utilice un bucle:

i=01
while sudo dd if=/dev/nst0 of="FILE$i" bs=1024k count=1 # loop till `dd` errors out
do
    i=$(printf "%02d" $((i+1))) # 0-padded 2-digit number
done

Respuesta2

Una solución de muestra será utilizar forun bucle y sequn comando como este:

for i in `seq -f "%02g" 1 99`
do
 sudo dd if=/dev/nst0 of="FILE$i" bs=1024k count=1
done

información relacionada