跑
set -x
echo 中文
echo english它显示了
+ echo $'\344\270\255\346\226\207'
中文
+ echo english
english如何使它显示+回波中文$而不是+ echo $'\344\270\255\346\226\207'?
发布于 2021-05-31 08:14:51
如何显示+ echo中文$而不是+ echo $'\344\270\255\346\226\207'?
不改变bash源是不可能的。
如何使使其显示+回显中文$而不是+ echo $'\344\270\255\346\226\207'?
为bash源代码编写一个修补程序,并实现使用此表示的您自己的行为。没有其他方法,因为set -x输出来自bash本身(除了前缀+可以用PS4配置)。set -x的输出是列表()。
发布于 2021-05-31 08:29:46
可能取决于Bash的版本、操作系统和地区环境:
$ echo 中文
+ echo 中文
中文
$ echo "$BASH_VERSION"
+ echo '5.0.17(1)-release'
5.0.17(1)-release
$ locale
+ locale
LANG=fr_FR.UTF-8
LANGUAGE=fr:de_DE:en
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC=fr_FR.UTF-8
LC_TIME=fr_FR.UTF-8
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY=fr_FR.UTF-8
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER=fr_FR.UTF-8
LC_NAME=fr_FR.UTF-8
LC_ADDRESS=fr_FR.UTF-8
LC_TELEPHONE=fr_FR.UTF-8
LC_MEASUREMENT=fr_FR.UTF-8
LC_IDENTIFICATION=fr_FR.UTF-8
LC_ALL=https://stackoverflow.com/questions/67769857
复制相似问题