grep awk или sed CSV Row, содержащий определенную часть веб-адреса

Я пытаюсь очистить файл журнала Squid, и я хочу удалить строки с веб-сайтом, содержащим «/ 0 /» в 11-м столбце. Пример:

Row1: column1, column2, column3...column10, ht*p://blah.com/page/230/0/blah0.html Row2: column1, column2, column3...column10, ht*p://narph0.net/page/328/narph.htm Row3: column1, column2, column3...column10, ht*p://www.yahata.org/things/time/0/yahata.php Row4: column1, column2, column3...column10, ht*p://www.the.com/thethat/que303/yeah/main.php 

Игнорируйте «*» в «http», потому что stackexchange думал, что это настоящие ссылки.

По сути, я хочу удалить строки 1 и 3, но оставить строки 2 и 4. Я пробовал каждую команду grep , awk и sed которую я мог найти или подумать. Я могу удалить grep если в столбце есть элементы, но ни один из остальных.

One Solution collect form web for “grep awk или sed CSV Row, содержащий определенную часть веб-адреса”

Кажется, вы хотите, чтобы строки не имели /0/ в последнем столбце, вы можете сделать:

 grep -v '[^[:blank:]]*/0/[^[:blank:]]*$' file.txt 

Пример:

 % grep -v '[^[:blank:]]*/0/[^[:blank:]]*$' file Row2: column1, column2, column3...column10, ht*p://narph0.net/page/328/narph.htm Row4: column1, column2, column3...column10, ht*p://www.the.com/thethat/que303/yeah/main.php 

С другой стороны, если вы точно хотите совместить 11-й столбец, вы можете сделать следующее:

 grep -vE '^([^[:blank:]]+[[:blank:]]+){10}[^[:blank:]]*/0/[^[:blank:]]*$' file.txt 

Пример: сопоставление 5-го столбца

 % grep -vE '^([^[:blank:]]+[[:blank:]]+){4}[^[:blank:]]*/0/[^[:blank:]]*$' file Row2: column1, column2, column3...column10, ht*p://narph0.net/page/328/narph.htm Row4: column1, column2, column3...column10, ht*p://www.the.com/thethat/que303/yeah/main.php 
  • Как удалить переменную строку в файле
  • Почему sed действует по-разному в зависимости от выходного файла?
  • Преобразование / proc / cpuinfo в JSON в linux bash
  • Как заставить команду sed искать только полные слова?
  • Массив из команд с каналами не работает
  • Скопируйте до определенного многострочного шаблона
  • Скопируйте первые 2 строки из файла, а затем удалите строки
  • Добавить строку после определенной строки в одной строке в текстовом файле
  • Удалите первый и последний символы, если они есть
  • bash merge 2 списки удаления дубликатов
  • Печать текстового файла из номера строки в другой после поиска строк
  • Interesting Posts

    Как получить статус выхода фонового процесса?

    Как пропустить подкаталоги в цикле for, основанном только на имени?

    Почему моя конкатенация переменных оболочки не работает на ubuntu bash?

    форвардный порт исходящего трафика с использованием iptables

    Какие USB-дистрибутивы могут поместиться в качестве платформ для ноутбуков / разработчиков / демонстраций?

    Виртуальная память ядра в ядре dmesg linux 2.6.31

    Разрешить владельцу создавать и читать файлы, но не изменять или удалять

    Преобразование строк в столбцы файла

    Как узнать, загрузился ли установщик Debian в режиме UEFI или нет?

    network.service Не удалось запустить LSB: создать сеть вверх / вниз – Centos 7

    Найдите точное совпадение идентификатора, который всегда находится на одной строке ниже шаблона через grep

    Проблема с установкой Fedora 26: «Ошибка проверки конфигурации хранилища» (с использованием Live USB)

    Почему ленивый MNT_DETACH или `umount -l` небезопасно / опасно?

    Пустой экран после входа в систему. Хотя виртуальная консоль работает. Пожалуйста, помогите

    Что определяет максимальный размер файла в файловой системе ext2

    Linux и Unix - лучшая ОС в мире.