Добавить столбец в файл на основе номера строки

IIRC, цифры — это просто порядок, в котором диски сканируются раньше других. Итак, если для всех дисков используется 1, то все диски имеют одинаковый приоритет для сканирования. Если один диск выходит из строя, загрузка невозможна, но причиной сбоя может быть любой из дисков. Использование, скажем, 2 на некоторых дисках приведет к тому, что эти диски будут сканироваться после тех, которым присвоено 1. Например.

/dev/sdb /appTdb/sdc ext4 defaults,noatime 0 1 /dev/sdc /appTdb/sdd ext4 defaults,noatime 0 2 /dev/sdd /appTdb/sde ext4 defaults,noatime 0 2 /dev/sde /appTdb/sdb ext4 defaults,noatime 0 3

В этом случае сначала будет просканирован диск /dev/sdb, затем /dev/sdc и /dev/sdd и, наконец, /dev/sde. Это может повлиять на вашу последовательность загрузки, например, если /dev/sdb был загрузочным диском. Сбой там будет проблемой, тогда как сбой на других дисках потенциально может быть проигнорирован, если не критичен.

Кстати, почему ваши диски и точки монтирования перепутаны? Обычно они совпадают, чтобы мысленно было проще сопоставить точку монтирования с устройством.

2
06.03.2020, 23:49
2 ответа

Сawk:

# create two test files
printf '%s\n' one two three four five six > target_file
printf '%s\n' 1:.196 5:.964 6:.172 > numbers

awk -F':' 'NR==FNR{ a[$1]=$2; next } FNR in a{ $0=$0 a[FNR] }1' numbers target_file

Выход:

one.196
two
three
four
five.964
six.172

Пояснение:

awk -F':' '      # use `:` as input field separator
  NR==FNR {      # if this is the first file, then...
    a[$1]=$2     # save the second field in array `a` using the first field as index
    next         # stop processing, continue with the next line
  }                         
  FNR in a {     # test if the current line number is present in the array
    $0=$0 a[FNR] # append array value to the current line 
  }
  1              # print the current line
' numbers target_file
4
28.04.2021, 23:21
$ sed 's/:/s:$:/;s/$/:/' nums_file |
  sed -f - file

Пояснение:

° use the number file to create the sed commands to operate on the actual data
° Pass these sed commands over the pipe and use sed to apply them on the data file. 
1
28.04.2021, 23:21

Теги

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