Как отсортировать набор строк из различных файлов?

Я думаю, что необходимо будет записать программу для ATmega, который может сообщить о состоянии контакта по последовательному порту.

4
25.07.2014, 23:18
2 ответа

Попробуйте:

$ awk 'FNR == 2' file1 file2 filen | sort -n -k2,2

С помощью gawk вы можете использовать nextfile для повышения эффективности:

$ gawk 'FNR == 2 {print FILENAME,$2; nextfile}' file1 file2 filen | sort -n -k2,2

или вы можете написать свою собственную nextfile функцию в другой реализации awk, ссылайтесь на эту .

Если у вас нет gawk, вы можете использовать perl для более портативного:

$ perl -anle 'print "$ARGV $F[1]" and close ARGV if $. == 2' file1 file2 filen |
  sort -n -k2,2
3
27.01.2020, 20:56
for f in file* ; do { 
    read line
    read na num na
} <"$f"
    printf '%s\t%s\n' "$f" "$num"
done | sort -t\<tab> -n -k2,2

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

.
1
27.01.2020, 20:56

Теги

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