Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is nesting of Here Document possible in a unix bash script?

Is it possible to write a heredoc within another heredoc ?

ssh -T -q yxz@server1 <<-"END_TEXT"
.
.
    ssh -T -q abc@server2 <<-"SUB_TEXT"
    .
    .
    SUB_TEXT
.
.
END_TEXT
like image 738
kaustav datta Avatar asked Nov 06 '12 15:11

kaustav datta


1 Answers

Yes

However, the nested heredoc terminator will only be recognized when indented if the indentation is done with actual tabs. Spaces won't work.

So you probably want to do something more like:

ssh s1 << \eof1
  ssh s2 << \eof2
    hostname
eof2
eof1
like image 99
DigitalRoss Avatar answered Oct 23 '22 23:10

DigitalRoss