использование sed для замены строки с использованием информации из совпадающей строки

Решение с использованием автоключа

Вы можете использовать автоклавишу для изменения ярлыков для определенных окон. Autokey позволяет фильтровать заголовки окон с помощью регулярных выражений.

1 )Просто установите autokey и создайте новый скрипт.

2 )Вставьте следующий код в окно сценария и измените его в соответствии с вашими потребностями.:

# This code will scroll the terminal three lines up, when triggered.

import time

keyboard.send_keys("++")
time.sleep(0.01)
keyboard.send_keys("++")
time.sleep(0.01)
keyboard.send_keys("++")
time.sleep(0.01)

2 )Затем скажите autokey назначить скрипт на «горячую клавишу» по вашему выбору.

3 )Наконец, установите регулярное выражение для "Window Filter" примерно так ^Terminal$, в зависимости от названия окон вашего терминала. Вы можете настроить регулярное выражение, чтобы оно соответствовало заголовку вашего конкретного окна. Этот сайт очень полезен при работе с регулярными выражениями.

4 )Сделайте то же самое для прокрутки вниз.

1
11.09.2019, 19:50
1 ответ

Вы запоминаете вещи, заключая в скобки то, что вы хотите запомнить в соответствующей части команды, и вы вспоминаете запомненные вещи, используя \Nс некоторым числом N, чтобы заменить его на то, что запомнил N-й набор скобок в соответствующей части:

sed -E 's/(L[0-9]{1,2})_name([0-9]+)/\1_new_name\2/g' file.csv

Полную информацию см. в руководстве sed .

РЕДАКТИРОВАТЬ :Я должен указать, что вам разрешено использовать различные специальные символы, такие как ()[]{}+, не экранируя их, потому что вы указали -E, т.е. расширенные регулярные выражения. Опять же, руководство содержит полную информацию.

1
27.01.2020, 23:41

Теги

Похожие вопросы