Что параметр «-l» делает с командой passwd? [дубликат]

Поскольку значения K ?????? уникальны во втором файле, вы можете использовать awk , сначала прочитав второй файл и сохранив каждую строку в массиве по индексу K ?????? затем обработайте 1-й файл и для каждого K ?????? в массиве распечатайте значение и соответствующую строку:

awk 'NR==FNR{split($1, a, ":"); u=a[2];b[u]=$0; next}
{if ($0 in b) {print $0, b[$0]}}' File2_.txt File1_.txt

Альтернативно , с помощью sed вы можете превратить второй файл в сценарий sed и использовать его для обработки первого файла:

sed 's|.*:\([^[:blank:]]*\)[[:blank:]].*|/\1/c\\\
\1 &|' File2_.txt | sed -f - File1_.txt

Предполагается, что существует только один : ( после ko ) и без обратной косой черты во втором файле и что K ?????? не может содержать косую черту.

-1
20.03.2015, 07:55
0 ответов

Теги

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