Tag: sed

Переименование нескольких файлов с помощью sed

У меня есть следующий набор файлов top_axi_256_wrapper_05.02.01.14.00_sample06.tgz top_axi_128_wrapper_05.02.01.14.00_sample06.tgz Я хочу заменить 05.02.01.14.00 на 05_02_01_14_00 . Таким образом, окончательный вывод – это следующие переименованные файлы top_axi_256_wrapper_05_02_01_14_00_sample06.tgz top_axi_128_wrapper_05_02_01_14_00_sample06.tgz Мой каталог может содержать следующие типы имен файлов. a72_a_0.0.0_0.00.04_ac_dc.tgz Здесь я хочу переименовать файл в a53_1c_256K_a_0_0_0_0_00_04_ac_dc.tgz Как это сделать?

Как поймать все после префиксной фразы с SED?

Как поймать все после префиксной фразы с sed? Как здесь я хотел поймать active/idle : $ sudo hdparm -C /dev/sda /dev/sda: drive state is: active/idle $ sudo hdparm -C /dev/sda | sed "s/\s*drive state is:\s+\(.*\)/\1/;tx;d;:x" (далее следует пустой вывод)

Инкрементная арифметика Sed

Я хочу заменить число в конце строки, увеличивая число на каждый каждый раз, когда я запускаю определенную строку sed. строка выглядит так: Сервер-порт = 25555 Я думал, что смогу запустить что-то вроде этой линии sed, но это не сработает. sed -i 's/port=[0-9]{5}/int(&+1)/'

Как умножить два столбца в файле на постоянное число

У меня такой файл. входные данные 4.2394 4.4569 4.2427 4.1011 4.2879 4.1237 4.2106 4.4844 4.2373 4.1071 4.1322 4.0502 4.3103 4.4255 4.4342 4.5262 Мне нужно умножить каждый элемент на постоянный множитель (в этом примере коэффициент равен 8.06573), чтобы создать такой вывод: вывод 34.193855762 35.948152037 34.220472671 33.078365303 34.585043667 33.260650801 33.961562738 36.169959612 34.176917729 33.126759683 33.329209506 32.667819646 34.765716019 35.694888115 […]

Escape regex sed (1 строчный регистр, 1 верхний регистр, 1 символ, 1 номер) для bash

Цель состоит в том, чтобы удалить каждую строку, не содержащую один прописной, один строчный, один специальный символ и одно число из файла. Я не могу запустить это регулярное выражение: (?=.*?[AZ])(?=.*?[az])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$ Как в команде bash: sed -ri '\/(?=.*?[AZ])(?=.*?[az])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$\/!d' rh.txt Поскольку ошибка: sed: -e expression #1, char 67: unterminated address regex Я не уверен, что сбежать. Любая […]

Заменить второе появление между двоеточием и скобкой

Я должен заменить каждую строку после двоеточия на то же слово + знак подчеркивания + следующим образом: {"first": "1_first", "second": "1_second"} Ожидаемые результаты: {"first": "first_1", "second": "second_1"} {"first": "first_20", "second": "second_20"} {"first": "first_33", "second": "second_33"} Я преуспел в первом: echo '{"first": "first_1", "second": "second_1"}' | sed "s/\( \".*\",\)/ \"first_$j\",/" Результат: {"first": "first_888", "second": "second_1"} Но […]

Как получить только определенные поля из данного файла?

У меня есть список сотрудников в следующем формате Name: Phone No: Email: Name: Address: Phone No: Email: Name: Country: Address: Phone No: Email: Name: Address: Name : Email: Address: Все, что я хочу, это получить только имя и адрес электронной почты. Как добиться того же? Я пробовал что-то вроде cat filename | grep -e ^Name: […]

Извлеките две строки после строки с определенным значением

У меня есть текстовый файл, и я хотел бы извлечь две строки данных, следуя строке, содержащей только «Имя» в качестве значения. имя 032 Экспресс-намерение участвовать в дипломатическом сотрудничестве (например, политика поддержка) Описание имя 033 Экспресс намерение предоставить материальную помощь, не указанную ниже Описание Таким образом, вывод сверху был бы файлом, который имеет: 032 Экспресс намерен […]

sed, чтобы заменить строки 2 строки после сопоставления шаблона в AIX 6.1

Я пытаюсь заменить символ, 2 строки после соответствующего шаблона. Для этого я использую этот код: sed '/some_pattern/{N;N;s/word1/word2/}' /etc/filesystems > /etc/filesystems.tmp && mv -f /etc/filesystems.tmp /etc/filesystems Я протестировал эту команду и подтвердил, что она отлично работает в Linux. Однако, когда я использую его в AIX, я получаю сообщение об ошибке вроде: sed: Function /some_pattern/{N;N;s/word1/word2/} cannot be […]

иметь файл журнала, который я хотел бы разбить на несколько файлов на основе контента

У меня есть файл журнала, который я хотел бы разбить на несколько файлов Содержание *** Configuration Database *** Logs *** Configuration Logs *** Query Logs . . and so on Проблема в том, что названия раздела появляются снова в теле с соответствующими данными или журналами между разделами, поэтому мне придется искать второй экземпляр каждого заголовка […]

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