Пока ваш скрипт определяет переменную, но не оценивает ее:
Вы назначаете "./test.sh ${value} | grep testing "
, но ${value}
будет расширено во время этого назначения . Но на данный момент вы еще не определили value
, поэтому он пуст, и строка становится "./test.sh | grep testing"
. Используйте одинарные кавычки('
)вместо двойных кавычек ("
), чтобы оболочка не расширяла переменную :
'./test.sh ${value} | grep testing '
Позже вы echo
значение переменной. Если вы хотите выполнить команду ./test.sh...
, которую вы сохранили в переменной, вам нужно ее оценить, например
eval "${val[$KEY]}"
Если вы перейдете на страницу загрузки Sabrent для вашего SSD , вы найдете пакет под названием «SSC software» -, который представляет собой конвертер размера сектора.
С его помощью вы можете изменить размер блока, представляемый системе SSD, на 512 или 4096 байт, но процесс переключения уничтожит все данные, хранящиеся в настоящее время на SSD.
Чтобы просмотреть текущее представление системы о размере блока,запустить lsblk -t
. Для истинного 512 -байтового устройства хранения (, насколько известно ядру ), вы должны видеть PHY -SEC, LOG -SEC и MIN -IO со значением 512.
Для устройства 512e вы увидите MIN -IO и PHY -SEC как 4096 и LOG -SEC как 512, что указывает на то, что система знает, что устройство будет работать оптимально, если доступ будет осуществляться фрагментами по 4 КБ. байт, даже если в настоящее время он эмулирует классический размер блока 512 -байт.
А для настоящего устройства 4k все три значения должны быть равны 4096.