ls -l /dev/disk/by-id |gawk 'match($11, /[a-z]{3}$/) && match($9, /^ata-/) { gsub("../", ""); print $11,"\t",$9 }' |sort
Команда ls -l /dev/disk/by-id | gawk 'match($11, /[a-z]{3}$/) && match($9, /^ata-/) { gsub("../", ""); print $11,"\t",$9 }' | sort
используется для получения имен дисков и их соответствующих серийных номеров. Она выполняет следующие действия:
1. ls -l /dev/disk/by-id
— Выводит список файлов и символических ссылок в каталоге «/dev/disk/by-id».
2. gawk 'match($11, /[a-z]{3}$/) && match($9, /^ata-/) { gsub("../", ""); print $11,"\t",$9 }'
— Фильтрует строки с использованием AWK (gawk) так, чтобы остались только строки, где 11-е поле (файл/ссылка) оканчивается на три буквы [a-z]{3}$
и 9-е поле начинается с «ata-«. Затем выводит имена файлов и соответствующие серийные номера, разделенные табуляцией.
3. sort
— Сортирует результаты в алфавитном порядке.
Эта команда полезна для быстрого получения информации о дисках и их серийных номерах. Альтернативно, можно использовать команду lsblk -o NAME,Serial
для более структурированного вывода информации о дисках.