4

私は次のことをしようとしています:

#!/bin/sh
ssh user@server "echo \"Test \n for newline\""

これは次のように表示されます。

test \n for newline

\nシェルを実際の改行として解釈するにはどうすればよいですか?

4

4 に答える 4

4

-eなどのオプションを使用してみてくださいecho -e "Test \n for newline"

echoオプションがない場合は-e、 を使用しますprintf。それは広く利用可能であり、その実装にはほとんど多くのバリエーションがありません。

于 2013-06-17T13:31:13.977 に答える
2

移植性を高めるには、printf代わりに を使用しechoます。

#!/bin/sh
ssh user@server 'printf "Test \n for newline"'

POSIX 標準によれば、改行文字としてecho処理する必要があります。オプションを指定しない限り、\nビルトインbashはそうしません。echo-e

于 2013-06-17T13:42:26.493 に答える