`echo`で "-n"を印刷する方法は?

`echo`で

30年以上経過したこのコマンドで "-n"文字列を印刷する方法がわかりませんecho

私はこれを試しました:

Michaels:Scripts$ echo -n
Michaels:Scripts$ echo "-n"
Michaels:Scripts$ echo -e "-n"
Michaels:Scripts$ echo -- -n
-- -n
Michaels:Script$ echo -- "-n"
-- -n
Michaels:Script$ echo "\-n"
\-n

私はMac OS X MLを使用しています。私はこのような行動が非常に奇妙で予想外のものだと思います。

ベストアンサー1

これを使用したくない場合は、prinf少なくとも次のSO Q&Aに応じていくつかのオプションがあります。echo "-n"は-nを印刷しませんか?

これが最善の選択のようです:

$ echo "x-n" | cut -c 2-
-n

またはいくつかの変形があります。

$ echo -- '-n'|cut -d" " -f2
-n

印刷機能

printfそのような問題はありません:

$ printf "%s\n" -n
-n

おすすめ記事