удаление строк sed

Сначала обратите внимание, что смена левого клика нецелесообразна и может конфликтовать с другим связыванием ключей, например с меню.

Но вы можете использовать ccsm для запуска другого ключа для показа мыши location:

Если у вас нет ccsm: Install From Here

Вам также нужен пакет , но вы можете использовать ccsm для запуска другого ключа для показа местоположение мыши: . Вы можете найти его в программном центре Ubuntu.

Перейти к диспетчеру настроек CompizConfig> Доступно> Показать мышь:

В левом меню Use This Plugin: установите флажок Enable Show mouse. Измените привязку клавиш мыши Initiate, как показано ниже.

Чтобы определить значение номеров кнопок Compiz, Установите From Here .

В меню Use This Plugin слева : check Enable Show mouse. Кнопка 2 обычно представляет собой средний или правый щелчок

Чтобы вступить в силу, вам может потребоваться перезапустить Compiz:

compiz --replace &

2
задан 9 August 2017 в 22:06

6 ответов

Мое решение:

grep '^[a-z]' meyveler.txt

Который возвращает строки, соответствующие вашему желаемому шаблону, нет необходимости использовать cat, egrep, xargs или sed.

Объяснение ошибки:

У вас нет файла для обработки с помощью sed, поэтому вы не можете использовать -i.

-i редактирует файлы на своем месте

Фактически вы передаете содержимое вашего файла meyveler.txt в виде потока в команду sed, а sed отредактирует его в стандартный вывод.

-i редактирует файлы на их месте

Однако, поскольку steeldriver упомянул об этом, вы ищете:

egrep "^[^a-z].*$" meyveler.txt | xargs -Iline sed -i "/line/d" meyveler.txt
2
ответ дан 22 May 2018 в 19:37
  • 1
    Нет, у меня есть файл meyveler.txt – solfish 9 August 2017 в 22:12
  • 2
    Но вы не передаете файл в файл sed, который вы передаете его содержимое в sed, это разные. – Ravexina 9 August 2017 в 22:13
  • 3
    когда я выполняю вашу команду, не умею удалять строки, сделал ли я что-то не так? – solfish 9 August 2017 в 22:16
  • 4
    @Ravexina OP связывает шаблон с sed, предположительно, для редактирования того же файла, из которого был выбран шаблон; то, что отсутствует, является именем файла в конце всего этого, т. е. egrep "^[^a-z].*$" meyveler.txt | xargs -Iline sed -i "/line/d" meyveler.txt. Но только в конкурсе по обфускации кода. – steeldriver 9 August 2017 в 22:16
  • 5
    @solfish проверить обновление;) – Ravexina 9 August 2017 в 22:17

Мое решение:

grep '^[a-z]' meyveler.txt

Который возвращает строки, соответствующие вашему желаемому шаблону, нет необходимости использовать cat, egrep, xargs или sed.

Объяснение ошибки:

У вас нет файла для обработки с помощью sed, поэтому вы не можете использовать -i.

-i редактирует файлы на своем месте

Фактически вы передаете содержимое вашего файла meyveler.txt в виде потока в команду sed, а sed отредактирует его в стандартный вывод.

-i редактирует файлы на их месте

Однако, поскольку steeldriver упомянул об этом, вы ищете:

egrep "^[^a-z].*$" meyveler.txt | xargs -Iline sed -i "/line/d" meyveler.txt
2
ответ дан 18 July 2018 в 08:48

Мое решение:

grep '^[a-z]' meyveler.txt

Который возвращает строки, соответствующие вашему желаемому шаблону, нет необходимости использовать cat, egrep, xargs или sed.

Объяснение ошибки:

У вас нет файла для обработки с помощью sed, поэтому вы не можете использовать -i.

-i редактирует файлы на своем месте

Фактически вы передаете содержимое вашего файла meyveler.txt в виде потока в команду sed, а sed отредактирует его в стандартный вывод.

-i редактирует файлы на их месте

Однако, поскольку steeldriver упомянул об этом, вы ищете:

egrep "^[^a-z].*$" meyveler.txt | xargs -Iline sed -i "/line/d" meyveler.txt
2
ответ дан 24 July 2018 в 19:10

Для файла meyveler.txt вы можете удалить все строки, которые начинаются с буквы нижнего регистра a-z с sed, просто так:

sed '/^[^a-z]/d' meyveler.txt

Вышеуказанная команда будет считываться с вашего файл и распечатать отфильтрованный вывод на терминал. Если вы хотите отредактировать файл непосредственно на месте, добавьте флаг -i. Вы можете сохранить исходный файл в качестве резервной, если вы укажете суффикс (например, -i.bak сохранит исходные данные как meyveler.txt.bak):

sed -i '/^[^a-z]/d' meyveler.txt

Вам не нужно cat читать и вам не нужны grep или egrep для их фильтрации. Вся эта функциональность встроена в sed.

3
ответ дан 22 May 2018 в 19:37
  • 1
    извините за недоразумение при вышеуказанном комментарии, я имею в виду, что есть несколько способов сделать, но я пытаюсь продвигать другие комбинации. спасибо @Byte Commander – solfish 9 August 2017 в 22:20
  • 2
    Ага. Но ваш подход настолько усложнен. Во-первых, почему вы хотите использовать cat для чтения файла? Каждый инструмент в вашей командной строке может читать напрямую из файлов, вам не нужен другой для этой задачи. Во-вторых, если вы комбинируете grep и sed с xargs, каждая выходная строка из grep, т.е. каждая строка, которую вы хотите удалить, вызывает отдельный вызов sed, который обрабатывает весь файл каждый раз, только чтобы удалить каждый строка, содержащая строку grep. Другими словами, вы просматриваете весь файл несколько раз, а не один раз, и даже можете удалить слишком много удалений. – Byte Commander 9 August 2017 в 22:28
  • 3
    hımm, я вижу тебя теперь ясно – solfish 9 August 2017 в 22:32

Для файла meyveler.txt вы можете удалить все строки, которые начинаются с буквы нижнего регистра a-z с sed, просто так:

sed '/^[^a-z]/d' meyveler.txt

Вышеуказанная команда будет считываться с вашего файл и распечатать отфильтрованный вывод на терминал. Если вы хотите отредактировать файл непосредственно на месте, добавьте флаг -i. Вы можете сохранить исходный файл в качестве резервной, если вы укажете суффикс (например, -i.bak сохранит исходные данные как meyveler.txt.bak):

sed -i '/^[^a-z]/d' meyveler.txt

Вам не нужно cat читать и вам не нужны grep или egrep для их фильтрации. Вся эта функциональность встроена в sed.

3
ответ дан 18 July 2018 в 08:48

Для файла meyveler.txt вы можете удалить все строки, которые начинаются с буквы нижнего регистра a-z с sed, просто так:

sed '/^[^a-z]/d' meyveler.txt

Вышеуказанная команда будет считываться с вашего файл и распечатать отфильтрованный вывод на терминал. Если вы хотите отредактировать файл непосредственно на месте, добавьте флаг -i. Вы можете сохранить исходный файл в качестве резервной, если вы укажете суффикс (например, -i.bak сохранит исходные данные как meyveler.txt.bak):

sed -i '/^[^a-z]/d' meyveler.txt

Вам не нужно cat читать и вам не нужны grep или egrep для их фильтрации. Вся эта функциональность встроена в sed.

3
ответ дан 24 July 2018 в 19:10
  • 1
    извините за недоразумение при вышеуказанном комментарии, я имею в виду, что есть несколько способов сделать, но я пытаюсь продвигать другие комбинации. спасибо @Byte Commander – solfish 9 August 2017 в 22:20
  • 2
    Ага. Но ваш подход настолько усложнен. Во-первых, почему вы хотите использовать cat для чтения файла? Каждый инструмент в вашей командной строке может читать напрямую из файлов, вам не нужен другой для этой задачи. Во-вторых, если вы комбинируете grep и sed с xargs, каждая выходная строка из grep, т.е. каждая строка, которую вы хотите удалить, вызывает отдельный вызов sed, который обрабатывает весь файл каждый раз, только чтобы удалить каждый строка, содержащая строку grep. Другими словами, вы просматриваете весь файл много раз, а не один раз, и даже можете удалить слишком много удалений. – Byte Commander 9 August 2017 в 22:28
  • 3
    hımm, я вижу тебя теперь ясно – solfish 9 August 2017 в 22:32

Другие вопросы по тегам:

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