Execute um comando Vim a partir de um script bash

2

Isso está relacionado a uma pergunta que fiz anteriormente, mas gostaria de mantê-la separada caso alguém mais possa encontrar uso nela.

Eu tenho um comando que estou executando em um arquivo chamado dummy.out na linha de comando que é como segue

vim -E -s dummy.out <<-EOF
   :%s/old/new/g
   :%s/old2/new2/g
   :%s/old3/new3/g
   :update
   :quit
EOF

da linha de comando, isso está funcionando, mas quando eu o adiciono ao meu arquivo bashscript.sh

#!/bin/bash
# bash script

var01="start script"
echo $var01

vim -E -s dummy.out <<-EOF
   :%s/old/new/g
   :%s/old2/new2/g
   :%s/old3/new3/g
   :update
   :quit
EOF

Eu recebo o seguinte erro

warning: here-document at line 7 delimited by end-of-file (wanted 'EOF')

Como eu obteria esse comando da linha de comando para executar dentro desse arquivo bash?

    
por Trent 18.02.2015 / 14:11

1 resposta

0

Ok, parece que o EOF foi muito mais sensível do que eu esperei

isso não funciona

vim -E -s dummy.out <<-EOF
   :%s/old/new/g
   :%s/old2/new2/g
   :%s/old3/new3/g
   :update
   :quit
EOF

isso faz

vim -E -s dummy.out << EOF
:%s/old/new/g
:%s/old2/new2/g
:%s/old3/new3/g
:update
:quit
EOF
    
por 18.02.2015 / 15:07