Как захватить 2 выходных значения и обработать их

Как захватить 2 выходных значения и обработать их

Я пытаюсь создать надежное решение для записи образа на карту памяти с помощью dd.

Идея: Я хочу разместить в системе скрипт, который другие смогут выполнить, не имея никаких знаний о написании изображений.

Размер изображения может измениться, поэтому для определения размера необходимо выполнить запрос заранее.

isoinfo -d -i /media/usb/image.iso | grep -i -E 'block size|volume size' | sed 's/^.*is: \(.*\)/\1/'

чтобы получить цифры размера блока и тома. Теперь мне нужно включить значения в следующий код

dd if=/media/usb/image.iso of=/dev/sdc bs=2048 count=96053 status=progress

Я пытался решить эту проблему с помощью автозаполнения bs= и count=, но не могу понять, как получить и обработать вывод из первого фрагмента кода.

Я пробовал xargs, но это мне не очень помогло. Надеюсь, у вас есть какое-то решение для меня.

Ура, Ян!

решение1

Вам не нужно устанавливать bsи countдля определенных значений, если вы хотите скопировать все изображение в место назначения. Просто убедитесь, что размер блока выбран достаточно большим, чтобы обеспечить быструю операцию копирования, например bs=16M. Без countкопирования всего ввода, например

dd if=/media/usb/image.iso of=/dev/sdc bs=16M status=progress

Связанный контент