Como ecoar várias linhas?

3

Eu tenho essas linhas:

server {
    listen       80;
    server_name  $brand.mydomain.com;
    root         /srv/www/clients/$brand/soon;
}

Como eu poderia adicionar todas essas linhas de uma só vez ao final de / etc / nginx / sites-available / default?

Envolvendo este texto:

cat >/etc/nginx/sites-available/default  <<'EOT'
  EOT

funciona, mas apaga todo o conteúdo do arquivo. Eu quero acrescentar. Tentei embrulhar com isso:

  cat >/etc/nginx/sites-available/default  >>'EOT'
  EOT

mas o script apenas trava.

    
por user385917 23.01.2016 / 21:38

2 respostas

2

Para anexar a um arquivo, você deve usar >> .
Se o arquivo existir, a saída do comando será anexada ao arquivo.
Se não existir, será criado como se você usasse um único > .

No seu caso, a solução que funcionou substituindo >> /etc/nginx/sites-available/default em vez de > ... deve funcionar.

    
por 23.01.2016 / 21:55
2

Você pode usar >> em vez de > para anexar texto a um arquivo:

$ cat >> /etc/nginx/sites-available/default  <<'EOT'
    
por 23.01.2016 / 21:59

Tags