/ bin/sh VS/bin/bash中的Unicode字符

Val*_*ozz 1 unicode bash sh chars

请试试:

bash -c "printf '\u2744'"
bash -c "echo -e '\u2744'"
Run Code Online (Sandbox Code Playgroud)

所以:

sh -c "printf '\u2744'"
sh -c "echo -e '\u2744'"
Run Code Online (Sandbox Code Playgroud)

为什么/bin/bash我可以获得unicode角色而不是/bin/sh?如何打印unicode characer(例如?)/bin/sh

Cha*_*ffy 5

如果要打印一个unicode字符/bin/sh(POSIX不需要支持\u序列),可以将它直接嵌入到脚本中,也可以将其分解为组件字节并单独打印.

对于问题中使用的雪花符号:

printf '\342\235\204'
Run Code Online (Sandbox Code Playgroud)

现在,你如何找到这些数字?最简单的方法是使用od从壳确实支持Unicode:

$ printf '\u2744' | od -b
0000000 342 235 204
Run Code Online (Sandbox Code Playgroud)