fishにはあえてヒアドキュメントを採用していません。
なぜなら、他の機能で代用できる上、ヒアドキュメントはシェル言語を複雑化してしまうからです。
では、何で代用すべきかというと、string trimコマンドが一番適任だと思います。
string trimコマンドは、文字列の両端のホワイトスペースを除去します。
そこで、シングルクォートと改行を含めれば、中身には「'」「\」以外はそのまま書けます。
「'」が含まれていて「$」が含まれない場合はダブルクォートで囲んでもいいです。
fishシェルスクリプトを書く場合、エスケープはテキストエディタに任せましょう。
僕自身、fishにヒアドキュメントがなくて最初は不満でした。
しかしstring trimで代用できることを知った今ならば、
ヒアドキュメントを言語仕様から外したのは英断だと思いました。
実行例
$ string trim ' one two three ' one two three $ string trim ' one two three ' | wc 3 3 14 $ string trim ' one two three ' > /tmp/3.txt $ cat /tmp/3.txt one two three $ string trim ' Fish\'s feature ' Fish's feature $ string trim " Fish's feature " Fish's feature
最後までお読みいただき、ありがとうございました。参考になれば嬉しいです。
s/trimp/trim/