AWK - Сравнение значения двух переменных в двух разных файлах

Очень плохая производительность Dash - это ошибка, которая, похоже, содержит исправление (или уже загружено?). Отчет об ошибке находится на странице https://bugs.launchpad.net/unity/+bug/1064834, и ваш вопрос звучит так же, как если бы вы столкнулись с этой проблемой. Попробуйте установить nux 3.1 и посмотреть, помогает ли это.

Как и другие, уже упоминавшиеся, нерелевантные результаты Amazon можно устранить с помощью

sudo apt-get remove unity-lens-shopping

и снова выйти из системы.

1
задан 28 October 2013 в 02:49

1 ответ

Вот еще один подход:

while read i; do awk -v i="$i" '$3-i>10' file2; done < file1

Объяснение:

while read i; do ... ; done < file1: Итерирует через файл один, сохраняя значение, которое он находит там (вся строка), как . awk -v i=$i '$3-i>10' file2: Это проходит через файл2 и печатает каждую строку, где третье поле меньше текущего значения $i. Трюк передаёт переменную скрипту awk с параметром -v var_name=value.

Обратите внимание, что этот ответ (и Radu) будет печатать каждую строку, которая соответствует каждой переменной. В результате будет много дублированных строк, чтобы удалить их с помощью sort:

while read i; do awk -v i="$i" '$3-i>10' file2; done < file1 | sort -u
0
ответ дан 24 May 2018 в 16:07

Другие вопросы по тегам:

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