Исключить определенный диск в командном скрипте dd для стирания диска

Исключить определенный диск в командном скрипте dd для стирания диска
 for disk in $(lspv | awk '{print $1}') ; do
   dd if=/dev/zero of=/dev/${disk} bs=1024 count=$(bootinfo -s ${disk})
   echo $disk wiped
done

Как исключить определенные диски, такие как hdisk0, hdisk1 и hdisk3?

С уважением, Адель

решение1

Самый простой способ:

for disk in $(lspv | awk '{print $1}') ; do
   case "$disk" in
      hdisk0|hdisk1|hdisk3)
          continue
          ;;
   *)
       dd if=/dev/zero of=/dev/${disk} bs=1024 count=$(bootinfo -s ${disk})
       echo $disk wiped
       ;;
   esac
done

решение2

Ну, либо явно перечислите в команде диски, которые вы хотите очистить, либо добавьте в команду какой-то фильтр.

Возможно что-то вродеlspv | awk '!/regex/ {print $1}'

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