Создайте последовательное имя файла с помощью команды dd

Я немного новичок в том, что касается Linux, но я пытаюсь восстановить некоторые файлы для одного из наших клиентов со старого ленточного накопителя. Они просили, чтобы мы извлекли файлы в виде необработанных фрагментов данных по 1024 тыс. Для этого я использую следующую команду:

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

Это работает очень хорошо, однако мне приходится вручную изменять имя файла для каждого сгенерированного файла, и я уверен, что есть лучшее способ сделать это. В идеале я также хотел бы использовать команду 'sleep' или что-то подобное, чтобы мне не приходилось сидеть и нажимать ввод каждые несколько секунд.

Большое спасибо, ребята!

0
задан 28 June 2017 в 07:27

2 ответа

Одно демонстрационное решение будет состоять в том, чтобы использовать for цикл и seq команда как это:

for i in `seq -f "%02g" 1 99`
do
 sudo dd if=/dev/nst0 of="FILE$i" bs=1024k count=1
done
0
ответ дан 28 June 2017 в 17:27

Используйте цикл:

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
0
ответ дан 28 June 2017 в 17:27

Другие вопросы по тегам:

Похожие вопросы: