Cria um nome de arquivo sequencial com o comando dd

0

Sou um pouco mais novo quando se trata de Linux, mas estou tentando restaurar alguns arquivos de um de nossos clientes de uma unidade de fita antiga. Eles solicitaram que retirássemos os arquivos em blocos de dados brutos de 1024k. O comando que estou usando para fazer isso é o seguinte:

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

Isso está funcionando muito bem, mas estou tendo que alterar manualmente o nome do arquivo para cada arquivo gerado e tenho certeza de que há uma maneira melhor de fazer isso. Idealmente eu também gostaria de empregar o comando 'sleep' ou algo similar para que eu não tenha que sentar e apertar o botão a cada poucos segundos.

Muito obrigado pessoal !!

    
por phdigital 28.06.2017 / 06:22

2 respostas

0

Use um loop:

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
    
por muru 28.06.2017 / 06:31
0

Uma solução de amostra será usar o comando for e seq da seguinte forma:

for i in 'seq -f "%02g" 1 99'
do
 sudo dd if=/dev/nst0 of="FILE$i" bs=1024k count=1
done
    
por Romeo Ninov 28.06.2017 / 08:44