Как несколько команд заданы для ex из командной строки?

Я ищу использовать ex-режим vim для сценария, который я пытаюсь написать, но я не могу понять синтаксис, который позволит мне написать несколько команд.

Мой код выглядит примерно так:

  • Редактирование командной строки bash (быстрые клавиши Emacs)
  • Усилить тихие проходы в mp3-файле
  • Легкая утилита / программа для запуска команды после случайной задержки
  • Можно ли ввести ключ в cp -i?
  • Не удалось удалить файлы с USB-накопителя (ни по dd / dev / zero, ни по rm -r)
  • Как найти файл, имя которого содержит заданную строку, например «abcde»?
  • ex -c 'normal! 2gg19|^V49gg59|y' geom.inc 

    Таким образом, это просто входит в ex-режим для файла geom.inc, выделяет блок текста и блокирует этот текстовый блок. Все, что я хочу добавить, это то, что он закроет файл, как только он это сделает, но я не могу понять, как включить дополнительную команду для закрытия файла. Я вообще знаю «|» используется для объединения вместе команд, но никакая комбинация, которую я попробовал, не сработала. Обычно это заставляет думать, что одной из команд является другой файл.

  • lsof для конкретного процесса?
  • cURL <- функция
  • сопоставление шаблонов без эха
  • Почему мой IP-адрес не установлен?
  • Попытка отправить HTML-почту на Mac OSX Mountain Lion
  • cp -L против cp -H
  • 3 Solutions collect form web for “Как несколько команд заданы для ex из командной строки?”

    Я делал глупые ошибки. Как предлагает @Jeff Schaller, несколько подсказок -c позволят использовать несколько команд. Итак, мой рабочий пример выглядит так.

     ex -c 'normal! 2gg19|^V49gg59|y' -cwq geom.inc 

    Когда я вхожу в ex mode (ex), запросите команду (-c), определите блок («normal! 2gg19 | ^ V49gg59 | y», где normal! Разрешает использование регулярных команд vi, 2gg19 | означает переход во вторую строку и 19-й столбец ^ V входит в визуальный блок, 49gg59 | перемещается в 49-ю строку и 59-й столбец, а y блокирует блок), а запрос вызывает другую команду для записи и выхода (-cwq).

    Просто поместите команду «x» или «wq» в конец

     ex -c execute 'normal! 2gg19|^V49gg59|y|x' geom.inc 

    Я склонен подключать команды, например:

     $ echo ' 0r !seq 10 w test ' | ex $ cat test 1 2 3 4 5 6 7 8 9 10 
    Linux и Unix - лучшая ОС в мире.