我想在我的Shell提示符中添加Unicode骷髅和十字骨头符号(特别是'SKULL AND CROSSBONES' (U+2620)),但我无法找到使echo输出它或任何其他4位Unicode字符的方法。两位数的字符很容易打出来。例如:echo -e "\x55"
。
除了下面的答案之外,还应该注意,显然,您的终端需要支持Unicode才能得到您期望的输出。gnome-terminal在这方面做得很好,但它不一定默认开启。
在macOS的终端应用程序中,转到“首选项->编码”并选择Unicode(UTF-8)。
bash
标签建议您使用的区域设置)值高达"\x7F"
的情况...由一个 单字节 表示的模式永远不会在范围\x80-\xFF
内。这个范围在单字节 UTF-8 字符中是非法的。例如,Unicode 代码点值为U+0080
(即\x80
)实际上在 UTF-8 中是两个字节..\xC2\x80
。 - Peter.Oprintf "\\u007C\\u001C"
。 - kenorbgnome-terminal
中使用echo -e '\ufc'
并不能产生一个ü,即使字符编码设置为UTF-8。然而,例如urxvt
正常打印输出,如printf "\\ub07C\\ub01C"
(不会显示为�或方框)。 - isomorphismeswhile read -r line; do echo -e "$line"; done
- kenorb