Вы, похоже, хотите передать вывод вашего скрипта в vim:
script | vim
А затем вы хотите, чтобы скрипт как-то знал, что Vim завершен, и возобновил. Это не так, как перенаправление ввода / вывода работает. Сценарий не знает, в какую программу выводится его вывод.
Вы упомянули другие программы, такие как crontab
и cvs
; Общее у них то, что сами вызывают редактор . Они создают временные файлы, читают переменные окружения EDITOR или VISUAL (обратитесь к руководству за подробной информацией о том, как они выбирают какой), запускают данную программу и ждут ее завершения. Затем они продолжают работать и используют файл, который они указали ранее.
Оказывается, я сделал именно это в Perl. Я создал временный файл (с tempfile
), записал в него кучу текста, а затем использовал system
, чтобы вызвать редактор файла. Вам даже не нужно закрывать файл во время работы редактора.