如何在终端中显示区域状态指示器(国家标志)

时间:2018-10-09 12:43:45

标签: bash emoji gnome-terminal

如何在Linux终端中显示区域状态指示器(如国家/地区标记)?这有可能吗?

我正在编程一个VPN客户端,并希望为该客户端包括的国家/地区添加一些标志。例如,我想显示日本国旗()。我在Bash脚本中将两个Unicode符号彼此相邻地粘贴,但是在终端中运行脚本时,我只是使两个符号彼此相邻(它们没有“合并”)。出于示例目的,我在下面有一部分文件(请注意,符号之间有一个空格,因此它们不会在浏览器中“合并”,真实脚本中没有该空间)。 / p>

#!/bin/bash
echo "Please choose a server:"
echo -e "  Japan (1)"     # in the real script there is no space here.
echo -e "..."
read -p "> " choice
...

运行时:

$ ./script.sh
Please choose a server:
  Japan (1)            [ with no space in between ]
...

我了解区域状态指示器的概念,但是我的问题是,是否可以在终端中使用它们。

编辑:我注意到一些回答者在理解我的问题时遇到了麻烦,因此我提供了运行此脚本时终端外观的屏幕截图。 Regional Status Indicator example in Terminal

1 个答案:

答案 0 :(得分:2)

不确定是否复制了正确的字节序列,但是您可以简单地使用正确的转义符来代替:

$ echo -e "\U1f1ef\U1f1f5 Japan (1)"
 Japan (1)

这可能是您的终端了解Unicode序列并正确呈现它的问题,而不是脚本的问题。