テキスト「-n」をエコーする方法

テキスト「-n」をエコーする方法

-nシェルに組み込まれたコマンドのみを使用してecho2文字の文字列をエコーすることは可能ですかbash

私はこれができることを知っていますが、組み込みの機能が文字列を出力できるかどうかをprintf '%s\n' -n知りたかったです。echo-n

ベストアンサー1

-e8進数55を使用することは、次のことを意味します-

$ echo -e '\055n'
-n

...または8進数として156nまたは8進数の両方:

$ echo -e '\055\0156'
-n

これが-e面倒な場合は、常にバックスラッシュシーケンスを解釈するようにxpg_echoシェルオプションを設定しますecho(ただし、これは一般的に望むものではありません)。

$ shopt -s xpg_echo
$ echo '-\0156'
-n

inは16進数echobash認識します。

$ echo -e '\x2d\x6e'
-n

おすすめ記事