En bash $?
te da el código de retorno del comando anterior. Si el comando anterior fue exitoso, el código de retorno es cero, de lo contrario no -cero.
En el siguiente ejemplo, estoy buscando una cadena en un archivo con caso de éxito y fracaso. Puede usar esta lógica en su script.
Contenido de mi script test.sh
grep "grapes" file1 > /dev/null
if [ $? -eq 0 ]
then
echo "Success. Perform success action"
else
echo "Failure.. Do Failure action"
fi
A continuación se muestra una ejecución de muestra:
#cat file1
apple
grapes
#sh test.sh
Success. Perform success action
#cat file1
apple
#sh test1
Failure.. Do Failure action
нет mmcblk0p
, это mmcblk0
для диска иmmcblkp1
(или другой номер )для раздела (с)
Каждый раз, когда команда терпит неудачу, это происходит из-за того, что вы опечатались в написанном.
Не используйте dd
для копирования карты, пока связанные файловые системы смонтированы (и используются ). Сначала размонтируйте их
umount /media/so/rootfs
umount /media/so/boot
Эта dd
команда ужасно неэффективна. Используйте это вместо этого.
sudo dd if=/dev/mmcblk0 bs=4M of=/home/so/Desktop/trash/raspbian/raspbian_backup.img
Но вы действительно хотите поместить свой файл в каталог trash
?