Что должен сделать скрипт KornShell (ksh) - это проверить мой dmesg для дисков, внутренних и внешних файлов. На выходе dmesg внутренние диски отображаются как wd [0-9], а внешние - sd [0-9]. У меня, конечно, не так много дисков, но я хочу, чтобы мой сценарий охватывал как можно больше возможностей. Будут проверены устройства 0-9. Так вот в чем заключается идея:Проверка наличия строк в файле (ksh)
создать два массива размера 9, выполнить поиск по dmesg, если wd0 существует, если так сделать первый элемент внутренних элементов 1, если wd1 существует, то сделать второй элемент массива 1 или 0 в противном случае.
Если это был поиск одного конкретного диска, например. wd0, я мог бы сделать что-то вроде:
internal=`dmesg | grep "^wd0" | head -n 1 | cut -d\ -f1`
, что делает
internal = wd0
Но как проверить, если строки wd0-wd9 существует в dmesg в "невменяемым" путь
# create arrays
set -A internals 0 0 0 0 0 0 0 0 0
set -A externals 0 0 0 0 0 0 0 0 0
(код ниже не является кодом ksh, но представляет идею в синтаксисе c-типа):
for (i=0;i<=8;i++){
if (wd0) # that is if wd0 exists, if wd1 exists etc.
internal[i] = 1;
else
internal[i] = 0;
}
И, конечно же, этот процесс должен выполняться для внешних.
Почти то, что мне нужно, я изменю его к моим потребностям. Благодарю. :) – saliarosaurus