• ベストアンサー

echoで「-n」を出力する方法

echoで「-n」を出力するようにしたいのですが、 echo -nとすると「-n」がオプションと解釈されて何も表示されませんし、 echo -- -nとすると「-- -n」と表示されてしまいます。 echoで「-n」を表示させたい場合はどのように指定すれば良いのでしょうか? (前後にスペースが入ってしまう、他のコマンドを使うなどはNG) よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

ネタ的な回答 echo -n -;echo n

entree
質問者

お礼

ご回答ありがとうございました。 以下を満足する必要があったため期待したものとは違っていましたが 最も無難な回答だったためベストアンサーとしました。 - 引数に「-」や「\」が入っているかもしれないシェル変数が来ても オプションやエスケープ文字として解釈されてしまわないこと - Solarisなどに移植しても改修することなく動作すること。

その他の回答 (3)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.4

echo -e \\x2Dn 2D は、マイナス記号の文字コード16進表記です。意外と面倒ですね。 -eオプションを使っているので他のエスケープシーケンスも有効になりますから、-n 以外に \ を含んだ文字列を出力するなら注意が必要。

entree
質問者

お礼

ご回答ありがとうございました。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

確認ですが, 「-n」のあとには改行が必要ですか? それとも, 改行なしですか?

entree
質問者

お礼

ご回答ありがとうございました。

回答No.1

-の前にエスケープ文字を入れても駄目なのかな?

entree
質問者

お礼

ご回答ありがとうございました。

関連するQ&A