kaustav datta
kaustav datta

Reputation: 705

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

Upvotes: 21

Views: 7852

Answers (1)

DigitalRoss
DigitalRoss

Reputation: 146053

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

Upvotes: 23

Related Questions