insere linha complexa no arquivo html a partir do script linha de comando / bash

0

Eu uso um script bash para adicionar um arquivo javascript a um diretório, mas depois disso eu preciso inserir na index.html esta linha entre as linhas 30 e 31.

<script type="text/javascript\" src="./js/jquery.browser.js\"></script>

Eu usei o seguinte comando no meu, mas não funciona (ele me imprime o conteúdo do index.html como o gato faria):

sed '30i\ <script type=\"text/javascript\" src=\"./js/jquery.browser.js\"></script> ' /path/to/index.html

devo usar perl? talvez sed diretamente? se sim como? obrigado pela leitura.

    
por kuzko 29.07.2014 / 19:11

1 resposta

2

Você precisa adicionar a opção -i para atualizá-lo, e não para o padrão.

Além disso, 30i é inserido antes da linha 30, então você precisa de 31i . Além disso, você inseriu um único espaço, suponho que isso seja um erro.

Então você precisa:

sed -i '31i\<script type=\"text/javascript\" src=\"./js/jquery.browser.js\"></script> ' /path/to/index.html
    
por 29.07.2014 / 19:58