Por que você não passa os comandos do Vim com -c ?!
$ vim -u NONE -r SWP_FILE -c 'w DST_FILE' -c q
Se fosse linux , eu faria assim:
echo "w DST_FILE | q" | vim -Esu NONE -r SWP_FILE
Estou tentando fazer o mesmo em windows com git bash , mas sem resultado. Ele trava e não cria um arquivo recuperado. Desta forma, quase funciona:
vim -u NONE -r SWP_FILE
Mas eu preciso salvar manualmente o arquivo resultante. O mesmo acontece quando eu corro de cmd com o mesmo comando:
echo "w DST_FILE | q" | vim -Esu NONE -r SWP_FILE
Tags command-line vim windows