Преобразование данных текстового файла в таблицу

По-видимому, вы можете запустить dumpe2fs -b, чтобы увидеть список плохих блоков, например. dumpe2fs -b /dev/sdb1. Я предполагаю, что если вывод пуст, плохих блоков (нет, но у меня сейчас нет диска с плохими блоками, поэтому я не могу его проверить ).

0
24.12.2020, 18:31
1 ответ

Здесь используется GNU awk для многомерных массивов :он считывает все данные за один проход и выдает результат в блоке END. Это "script.awk"

BEGIN {FS = ": "}

!($1 in head) {head[$1] = h++}
$1 == "name"  {name = $2}
{data[name][$1] = $2}

END {
    PROCINFO["sorted_in"] = "@val_num_asc"

    # print the header
    sep=""
    for (item in head) {
        printf "%s%s", sep, item
        sep = ","
    }
    printf "\n"

    # print the data
    for (name in data) {
        sep=""
        for (item in head) {
            printf "%s%s", sep, data[name][item]
            sep = ","
        }
        printf "\n"
    }
}

затем:

$ gawk -f script.awk file
name,copies,copy1,copy2,copy3
name1,3,name1copy1,name1copy2,name1copy3
name2,1,name2copy1,,
name3,2,name3copy1,name3copy2,
3
18.03.2021, 22:41

Теги

Похожие вопросы