Intereting Posts
Установка драйвера внешнего дерева в Qubes OS NetVM Слишком большой фактор Что такое действие (команда), чтобы показать все открытые окна в Debian? VNC-сервер как виртуальный монитор X11 для расширения экрана Как настроить SELinux для разрешения исходящих подключений из сценария CGI? Как подключить два компьютера Linux с Bluetooth? Получение ошибок сегментации изнутри glib и gobject – Я ДУМАЮ, Я хочу построить / статически связать с независимой версией glib2 Как перенаправить разных пользователей по различным туннелям OpenVPN в Linux? Как перечислять только файлы JPEG из корня ниже с помощью командной строки? Удивлен поведением cp с hardlinks POSIX-совместимый / кросс-shell-способ для получения версии запущенной оболочки? почему местная авария убила мои удаленные задания? Как использовать ESC-последовательности, чтобы сделать область прокрутки терминала Является ли упорный зомби-процесс признаком ошибки? Внезапное выключение ПК, датчики показывают нормальные темпы, прерывания прерывания температуры показывают 1276

Сравните несколько файлов с файлом ref и распечатайте, если это соответствует

Я новый фиктивный пользователь Unix, поэтому извините меня, может быть, просто вопрос. У меня есть несколько файлов, которые выглядят так:

b alternate_ids rsid chromosome position alleleA alleleB index average_maximum_posterior_call info cohort_1_AA cohort_1_AB cohort_1_BB cohort_1_NULL all_AA all_AB all_BB all_NULL all_total all_maf missing_data_proportion frequentist_add_pvalue frequentist_add_info frequentist_add_beta_1 frequentist_add_se_1 comment --- rs148087467 NA 60523 TG 1 0.999401 0.266624 7261.6 5.39417 0.00299072 0 7261.6 5.39417 0.00299072 0 7267 0.000371553 0 0.584342 0.247422 -0.473097 0.86481 NA --- rs187110906 NA 60969 CA 2 0.995453 0.23508 7228.62 38.2204 0.138092 0.0169067 7228.62 38.2204 0.138092 0.0169067 7267 0.00264873 1.16325e-06 0.803757 0.281439 0.0754077 0 

который мне нужно сопоставить с другим файлом:

 a rs586178 rs79598313 rs72634501 rs191448950 rs9988450 rs11207995 

В случае, если alternate_ids и совпадения, напечатайте согласованную строку с новым файлом.

Я слышал о

 $ awk -F'|' 'NR==FNR{c[$1$2]++;next};c[$1$2] > 0' file2 file1 

но он сравнивает только 2 файла. Должен ли я создать цикл для запуска всех файлов? Спасибо за любые предложения.

Это должно проанализировать файл a и если одна из строк находится в файле b , он отобразит строку:

 for i in $(<a); do grep $ib; done 

Если у вас есть один файл типа a который содержит ключи, и несколько типов b , вы можете просто заменить b на переменную петлей на имена файлов.

Если я правильно интерпретирую ваш вопрос, это должно делать то, что вы хотите:

 grep --no-filename --fixed-strings --file a b1 b2 b3 ... bN 

или, с короткими вариантами:

 grep -h -F -fa b1 b2 b3 ... bN 

Он greps для фиксированных строк из файла a в файлах b1 , b2 , b3 и т. Д. Параметр -h или --no-filename подавляет вывод имени файла каждого соответствующего файла.