Вопросы с тегом «awk»

Шаблонно-ориентированный язык сканирования и обработки.

2
grep: отображать имя файла один раз, затем отображать контекст с номерами строк
В нашем исходном коде разбросаны коды ошибок. Найти их легко с помощью grep, но мне бы хотелось, find_codeчтобы я выполнял функцию bash (например, find_code ####), которая будет обеспечивать вывод в следующем виде: /home/user/path/to/source.c 85 imagine this is code 86 this is more code 87 { 88 nicely indented 89 errorCode …

1
Создание индикатора выполнения с «диалогом» из вывода rsync
Я ищу способ отфильтровать / перенаправить вывод rsync таким образом, чтобы он мог быть передан в команду "dialog --gauge", чтобы я мог получить красивый индикатор выполнения во время синхронизации файлов. В настоящее время я только протестировал это непосредственно в приглашении, но я планирую сделать это в сценарии оболочки (bash). Я …
16 linux  bash  scripting  awk  rsync 

2
Как использовать регулярное выражение в качестве разделителя полей в awk?
Я пытаюсь использовать регулярное выражение в качестве разделителя полей в awk. Из моего чтения это кажется возможным, но я не могу понять правильный синтаксис. rpm -qa | awk '{ 'FS == [0-9]' ; print $1 }' awk: cmd. line:1: { FS awk: cmd. line:1: ^ unexpected newline or end of …

5
Найти файлы, которые содержат несколько ключевых слов в любом месте файла
Я ищу способ перечислить все файлы в каталоге, которые содержат полный набор ключевых слов, которые я ищу, в любом месте файла. Таким образом, ключевые слова не должны появляться в одной строке. Один из способов сделать это будет: grep -l one $(grep -l two $(grep -l three *)) Три ключевых слова …

3
awk + print line только если первое поле начинается со строки как Linux1
как напечатать строку, если первое поле начинается с Linux1 например: echo Linux1_ver2 12542 kernel-update | awk '{if ($1 ~ Linux1 ) print $0;}' цель состоит в том, чтобы напечатать строку, в то время как первое поле начинается с Linux1 пример строк: Linux1-new 36352 Version:true Linux1-1625543 9847 Linux1:16254 8467563 примечание - …

8
Как проверить, все ли элементы массива равны в bash?
Следующий массив представляет количество дисков на каждой машине Linux Каждый отдельный массив содержит количество дисков на компьютере с Linux . echo ${ARRAY_DISK_Quantity[*]} 4 4 4 4 2 4 4 4 Какой простой способ определить, что все значения массива равны? Хороший статус: 4 4 4 4 4 4 4 4 Плохой …
15 bash  shell-script  awk  array 


5
Как я могу преобразовать метки времени в столбце в дату?
У меня есть файл, содержащий это: 1415602803,LOGIN SUCCESS,AUTH,user2,192.168.203.63,10.146.124.73,59996,22 1415602807,LOGIN SUCCESS,AUTH,user1,172.24.31.10,172.32.1.1,48191,22 1415602811,LOGIN FAILED,AUTH,root,172.24.166.153,10.146.124.73,52506,22 1415602815,LOGIN FAILED,AUTH,user3,192.168.123.55,10.146.32.99,55750,22 Я хочу преобразовать отметку времени в дату в этом формате: 2014-11-10 02:00:03,LOGIN SUCCESS,AUTH,user2,192.168.203.63,10.146.124.73,59996,22 2014-11-10 02:00:07,LOGIN SUCCESS,AUTH,user1,172.24.31.10,172.32.1.1,48191,22 2014-11-10 02:00:11,LOGIN FAILED,AUTH,root,172.24.166.153,10.146.124.73,52506,22 2014-11-10 02:00:15,LOGIN FAILED,AUTH,user3,192.168.123.55,10.146.32.99,55750,22 Как я могу это сделать? Я знаю, что это работает: perl -pe 's/(\d+)/localtime($1)/e'(из этого …

8
Как выполнить многострочную grep
Как бы вы выполнить grep для текста, который появляется в две строки? Например: pbsnodes это команда, которую я использую, которая возвращает использование кластера Linux root$ pbsnodes node1 state = free procs = 2 bar = foobar node2 state = free procs = 4 bar = foobar node3 state = busy …


5
Объедините два файла построчно с символом тройки разделителя «|||»
У меня есть два параллельных файла с одинаковым количеством строк на двух языках, и я планирую объединить эти два файла построчно с разделителем |||. Например, два файла следующие: Файл А: 1Mo 1,1 I love you. 1Mo 1,2 I like you. Hi 1,3 I am hungry. Hi 1,4 I am foolish. …

2
Самый быстрый способ удалить дубликаты в большом списке слов?
Мне нужно дедуплицировать большой список слов. Я попробовал несколько команд и провел некоторое исследование здесь и здесь, где они объясняют, что самый быстрый способ дедупликации списка слов, кажется, использует awk. awk -> O (n)? сортировать -> O (n log n)? Однако я обнаружил, что это, похоже, не соответствует действительности. Вот …
14 bash  awk  performance  sort 

3
Как удалить столбец или несколько столбцов из файла с помощью команды оболочки?
Мой файл, ARCHIVE B1_NAME B2_NAME B3_NAME ELEMENT INFO_NAM WERT PROCID -------- -------- -------- -------- -------- -------- ---- ------ 15MinAvg AIRSS 33-GIS DMDMGIS1 I MvAvr15m 1123 CP 15MinAvg AIRSS 33-GIS DMDMGIS1 P MvAvr15m 2344 CP 15MinAvg AIRSS 33-GIS DMDMGIS1 Q MvAvr15m 4545 CP 15MinAvg AIRSS 33-GIS DMDMGIS2 I MvAvr15m 6576 CP …

5
Как взять абсолютное значение с помощью awk?
Если у меня есть ниже двух дат: 2015-09-12,2015-08-13 И мне нужно получить количество дней между ними, я буду использовать следующий код: awk -F'[-,]' '{print 360*($4-$1)+30*($5-$2)+($6-$3)}' Выход для этого кода будет в то -29время как на самом деле разница29

5
Удалите повторяющиеся строки, сохраняя порядок строк
[root@server]# awk '!seen[$0]++' out.txt > cleaned awk: (FILENAME=out.txt FNR=8547098) fatal error: internal error Aborted [root@server]# «Сервер» имеет: 8 ГБ ОЗУ + 16 ГБ SWAP, x> 300 ГБ свободного места, amd64, настольный ЦП. Научный Linux 6.6. На нем больше ничего не работает, чтобы сделать LOAD. Awk прерывается через несколько секунд .. …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.