Articles of grep

Как искать шаблон с помощью grep?

Я хочу найти файл, чтобы проверить наличие таких шаблонов: text1,text2,[1.2.3,3.4.5,6.7.8,etc] . Количество запятых в квадратных скобках не определено. Я попробовал следующую команду, но она печатает запятые после text1 и text2 что не то, что я хочу. Я ищу только для поиска запятых в квадратных скобках. $ grep -E ‘[*,*]’ myfile.txt РЕДАКТИРОВАТЬ # 1 Вот несколько […]

Мне нужно найти только каталоги в каталоге, но исключить связанный каталог и его ссылку

Я нахожусь в корневом каталоге и у меня есть несколько папок внутри: 0.1 0.2 0.3 0.4 0.5 0.6 shortcut -> 0.6 Мне нужно перечислить вышеупомянутые каталоги без ярлыка и папки 0.6. Я не буду искать над этим местоположением или внутри любой из этих папок. У меня также могут быть некоторые файлы, но я должен их […]

Выходной контекст (-C) для grep создает массивные файлы

Задача: Я использую grep для поиска в некоторых текстовых файлах, передавая результаты из одного grep (исключая несколько строк) в другую (сопоставляя несколько строк) + отображая некоторый контекст, используя параметр -C как показано ниже: grep -v “Chapter” *.txt | grep -nE -C1 ” leaves? ” Проблема: Это работает очень хорошо при печати результатов, но создает очень […]

Ярлык на рабочем столе работает для скрипта bash, но не для самого скрипта?

Мне нужно создать скрипт, который я могу привязать к сочетанию клавиш. Скрипт открывает экземпляр mozilla, если он не открыт, и если он минимизирует или максимизирует окно. Вроде как выпадающий терминал. Сценарий работает, когда я открываю его с помощью ярлыка на рабочем столе, но если я открываю сценарий напрямую, щелкая по нему или макросом для сочетания […]

Как искать совпадение, затем несоответствие в этой строке, но включать контекстные строки для сопоставленной строки?

Скажем, у меня есть файл, содержащий: ⟫ cat schema.rb create_table “things”, id: :serial, force: :cascade do |t| t.string “other_column” # … t.datetime “created_at” end create_table “users”, id: :serial, force: :cascade do |t| t.citext “email” # … t.datetime “created_at”, precision: 0 end и я хочу найти все строки, соответствующие created_at но не соответствующие precision: Это достаточно […]

Как заменить строку на точное совпадение строки

У меня есть файл с этим содержанием: dskldfsd.com domain domain.com sub.domain.com domain.main.com anythinghere Я хочу удалить строку, которая содержит слово domain . Используя grep, эта команда находит нужную строку: grep -w ‘^domain$’ test.txt Но я хочу удалить эту строку, которая содержит domain в виде одного слова от начала до конца строки. Я хочу сохранить строки, […]

Выберите линии на основе линий над ними

У меня есть список предметов, из которого я хочу выбрать имена активных предметов: item { status: “Active” properties { key_a: value } id: 42 name: “Foo” } item { status: “Disabled” properties { key_b: value } id: 12 name: “Bar” } item { status: “Active” id: 2 name: “Baz” } Я знаю, что могу извлечь […]

Как запустить grep с несколькими шаблонами AND?

Я хотел бы получить совпадение нескольких шаблонов с неявным AND между шаблонами, т.е. эквивалентно запуску нескольких greps в последовательности: grep pattern1 | grep pattern2 | … Так как же преобразовать его в нечто подобное? grep pattern1 & pattern2 & pattern3 Я хотел бы использовать один grep, потому что я строю аргументы динамически, поэтому все должно […]

Как заменить запятые в скобках

У меня есть текстовый файл, который выглядит следующим образом: 12.com,128.15.8.6,TEXT1,no1,[‘128.15.8.6’] 23com,122.14.10.7,TEXT2,no2,[‘122.14.10.7’] 45.com,91.33.10.4,TEXT3,no3,[‘91.33.10.4’] 67.com,88.22.88.8,TEXT4,no4,[‘88.22.88.8’, ‘5.112.1.10’] Поскольку я хочу вставить содержимое файла в таблицу с помощью команды MySQL, говорящей separated by ‘,’, строка lat в скобках (которая может содержать строки, разделенные запятой) вызывает проблемы, когда MySQL хочет разделить их, а таблица hte не делает есть достаточно столбцов […]

как напечатать только часть каждой строки, которая помечается определенным символом

У меня есть файл с более чем 10000 строк: head samples https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192170/type/READ_SET_FASTQ/filename/HI.2613.007.Custom_0022.ED9_SD2A27-1_180_R1.fastq.gz.md5 https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192170/type/READ_SET_FASTQ_PE/filename/HI.2613.007.Custom_0022.ED9_SD2A27-1_180_R2.fastq.gz.md5 https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192171/type/READ_SET_FASTQ/filename/HI.2613.007.Custom_0021.ED4_KS1A29-7_338_R1.fastq.gz.md5 https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192171/type/READ_SET_FASTQ_PE/filename/HI.2613.007.Custom_0021.ED4_KS1A29-7_338_R2.fastq.gz.md5 https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192168/type/READ_SET_FASTQ/filename/HI.2613.007.Index_18.ED17_MO1A26-7_353_R1.fastq.gz.md5 https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192168/type/READ_SET_FASTQ_PE/filename/HI.2613.007.Index_18.ED17_MO1A26-7_353_R2.fastq.gz.md5 https://genomequebec.mcgill.ca/nanuqMPS/readSetMd5Download/id/192169/type/READ_SET_FASTQ/filename/HI.2613.007.Index_14.ED14_IA2A35-2_310_R1.fastq.gz.md5 Я хочу напечатать только часть каждой строки, которая начинается с “HI. *” Это мой желаемый результат: HI.2613.007.Custom_0022.ED9_SD2A27-1_180_R1.fastq.gz HI.2613.007.Custom_0022.ED9_SD2A27-1_180_R2.fastq.gz HI.2613.007.Custom_0021.ED4_KS1A29-7_338_R1.fastq.gz HI.2613.007.Custom_0021.ED4_KS1A29-7_338_R2.fastq.gz HI.2613.007.Index_18.ED17_MO1A26-7_353_R1.fastq.gz HI.2613.007.Index_18.ED17_MO1A26-7_353_R2.fastq.gz