Я писал сценарий оболочки, который стирает, разбивает на разделы и форматирует выбранный диск, когда у меня возникли проблемы с дисками nvme.
По сути, я пытаюсь выполнить способ использования подстановочного знака * в приведенном ниже операторе if, чтобы проверить, является ли этот диск диском nvme или нет, поэтому я могу затем объявить переменные для разделов, которые будут использоваться позже в сценарии.
Это актуальная часть сценария прямо сейчас:
if [ "$DRIVE" == "/dev/nvme*" ] ; then
DRIVEp1="${DRIVE}p1"
DRIVEp2="${DRIVE}p2"
DRIVEp3="${DRIVE}p3"
else
DRIVEp1=${DRIVE}1"
DRIVEp2=${DRIVE}2"
DRIVEp3=${DRIVE}3"
fi
Когда я запускаю скрипт как есть, и для $ DRIVE установлено значение "/dev/nvme0n1", скрипт игнорирует совпадение и переходит к предложению else.