Как запустить несколько заданий emerge параллельно?

awk -F',' '{
  if (FNR==NR){
    a[$1"@"$3]=$4","$5","$2
  }
  else if ($1"@"$3 in a){
    print $1","$3","a[$1"@"$3]" ~ "$2","$3","$4","$5
  }
}' file1 file2

При обработке первого файла(FNR==NRозначает, что входной номер записи текущего файла равен общему количеству записей, т.е. обрабатывается первый файл ), сохранить строку, содержащую четвертое, пятое и второе поле в массиве aс первым и третьим полем в сочетании с @в качестве индекса.

Когда обрабатывается второй файл(else if)и в массиве существует комбинированный ключ первого и третьего полей вашей текущей строки, напечатайте первое и третье поля, сохраненное значение массива, тильду и поля 2 -5 из текущая строка.

Ваш вопрос выглядит как "домашнее задание", и я настоятельно рекомендую вам попробовать его самостоятельно, если вы хотите понять, awkкак работают массивы.

0
28.03.2021, 22:27
0 ответов

Теги

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