是否可以-n
仅使用shell 中echo
内置的命令来回显两个字符的字符串bash
?
我知道我可以做,printf '%s\n' -n
但只是想知道echo
内置函数是否能够输出字符串-n
。
使用-e
八进制 55 表示-
:
$ echo -e '\055n'
-n
Run Code Online (Sandbox Code Playgroud)
... 或 156 的n
八进制,或两者的八进制:
$ echo -e '\055\0156'
-n
Run Code Online (Sandbox Code Playgroud)
如果-e
是困扰你,设置shell选项xpg_echo
,使echo
总是解释反斜杠序列(这通常不是你想要什么,虽然):
$ shopt -s xpg_echo
$ echo '-\0156'
-n
Run Code Online (Sandbox Code Playgroud)
该echo
中bash
也承认十六进制:
$ echo -e '\x2d\x6e'
-n
Run Code Online (Sandbox Code Playgroud)