Как найти различие в маркерах в двух строках с помощью инструментов Unix?

Учитывая только этот файл, вы можете сделать что-то вроде:

<testfile jq -r '.data | map(.displayName), map(.value) | join(", ")'

. Оператор выбирает поле из объекта / хеша. Таким образом, мы начинаем с .data , что возвращает массив с данными в нем. Затем мы дважды отображаем на массиве, сначала выбирая имя отображения, а затем выбирая значение, давая нам два массива только с значениями этих клавиш. Для каждого массива мы присоединяемся к элементам с «», образуя две строки. Аргумент -R -R JQ не процитировать полученные строки.

Если ваш фактический файл дольше (т. Е. Есть записи для более чем одного человека), вы, вероятно, понадобится что-то более сложное.

0
27.03.2014, 22:51
3 ответа
[114300]GNUly: [12122]дает:[12123]столбцы:[12124]-токены только в s1[12125]-токены только в s2[12126]-токены и в том, и в другом. [12127]Вы подавляете столбец, передавая соответствующую опцию (как [114678]-3[114679] для подавления 3-го столбца).[114309].
2
28.01.2020, 02:20
[114296]С помощью GNU [114668]awk[114669] в [114670]bash[12121]
1
28.01.2020, 02:20
[114278] Вы можете сделать что-нибудь вроде ниже. [12111]Объяснение [12112]Я объединяю 2 файла вместе в другой файл и разделяю лексемы запятой в качестве разделителя. После этого я распечатываю только те значения, которые уникальны (имеется в виду только те значения, которые встречаются один раз, которые, как мне кажется, являются тем, что вы ищете). [12113]input1 содержимое файла[12114]input2 содержимое файла[12115]После выполнения вышеуказанного скрипта я получаю вывод как,[12116]Если вы заметите вышеприведенный вывод, то он будет печатать только уникальные значения из обоих файлов. [12117]Если, однако, вам нужна только разница, вы можете воспользоваться командой, приведенной ниже. [12118]
1
28.01.2020, 02:20

Теги

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