Как отправить команды из файла в VIM?

Как отправить команды из файла в VIM?

Это содержание cmd.txt:

:w 2.txt
:q

В командной строке я делаю

D:\>vim 1.txt<cmd.txt

Я ожидаю cmd.txt в качестве входного потока (а не моей клавиатуры), и vim сохранит 1.txt как 2.txt, а затем завершит работу.

Однако это не работает. Vim говорит, что ввод не с терминала, и зависает.

Я хочу отправлять команды из внешнего файла. Как это сделать?

Обновлять:

Я хочу заменить много шаблонов. У меня есть файл, в котором говорится об истории НБА, где название команды ссылается на город, и я хочу изменить его на «фамилию».

Я каким-то образом сгенерировал команды подстановки (30 правил/строк):

:%s/\v<Boston>/Celtics/g
:%s/\v<Brooklyn>/Nets/g
:%s/\v<New York>/Knicks/g
:%s/\v<Philadelphia>/76ers/g
:%s/\v<Toronto>/Raptors/g
:%s/\v<Golden St>/Warriors/g
:%s/\v<LA Clippers>/Clippers/g
:%s/\v<LA Lakers>/Lakers/g
:%s/\v<Phoenix>/Suns/g
:%s/\v<Sacramento>/Kings/g
:%s/\v<Chicago>/Bulls/g
:%s/\v<Cleveland>/Cavaliers/g
:%s/\v<Detroit>/Pistons/g
:%s/\v<Indiana>/Pacers/g
:%s/\v<Milwaukee>/Bucks/g
.....

Я хочу ввести файл в vim для выполнения этих команд. Я не хочу вводить эти команды вручную.

Я могу сгенерировать правила другим способом и ввести их в другую программу, или даже написать простую программу для выполнения замены. Но я был бы признателен, если бы это можно было сделать в Vim, Powershell или Total Commanders, которые я недавно изучаю.

решение1

Это можно сделать с помощью -sпараметра командной строки:

vim -s cmd.txt 1.txt

Однако комментарий Теуна Винка все еще актуален. Что вы на самом деле пытаетесь сделать? Это звучит как классикаПроблема X->Y.

решение2

Я знаю, что этот пост старый, но то, о чем просит @Gqqnbig, возможно.

Просто сохраните список команд, которые вы хотите часто выполнять, в файл. В идеале дайте ему расширение .vim, например nbaEdits.vim

В файле данных, над которым вы хотите выполнить команды, просто введите эту команду из командной строки VIM (я пробовал это только через Windows):

:source c:\myVimCommands\nbaEdits.vim

**Выше предполагается, что ваш командный файл находится в папке c:\myVimCommands

Связанный контент