Linux bash set-x非英语字符显示
跑 它表明Linux bash set-x非英语字符显示,linux,bash,shell,Linux,Bash,Shell,跑 它表明 set -x echo 中文 echo english 如何让它显示+回声中文 $ 而不是+echo$'\344\270\255\346\226\207' 如何显示+回音中文 $ 而不是+echo$'\344\270\255\346\226\207' 如果不更改bash源,这是不可能的 如何使其显示+回音中文 $ 而不是+echo$'\344\270\255\346\226\207' 为bash源代码编写一个补丁,并实现将使用此表示的您自己的行为。没有其他方法,因为set-x输出来
set -x
echo 中文
echo english
如何让它显示+回声中文 $ 而不是+echo$'\344\270\255\346\226\207'
如何显示+回音中文 $ 而不是+echo$'\344\270\255\346\226\207'
如果不更改bash源,这是不可能的
如何使其显示+回音中文 $ 而不是+echo$'\344\270\255\346\226\207'
为bash源代码编写一个补丁,并实现将使用此表示的您自己的行为。没有其他方法,因为
set-x
输出来自bash本身(除了前缀+
可通过PS4
配置)。生成set-x的输出。可能取决于Bash的版本、操作系统和区域设置环境:
$echo中文
+回音中文
中文
$echo“$BASH\u版本”
+echo“5.0.17(1)-发布”
5.0.17(1)-发布
$locale
+地点
LANG=fr_fr.UTF-8
语言=fr:de_de:en
LC_CTYPE=“fr_fr.UTF-8”
LC\u NUMERIC=fr\u fr.UTF-8
LC_时间=fr_fr.UTF-8
LC\u COLLATE=“fr\u fr.UTF-8”
LC_MONETARY=fr_fr.UTF-8
LC_MESSAGES=“fr_fr.UTF-8”
LC_纸张=fr_fr.UTF-8
LC_NAME=fr_fr.UTF-8
LC\U地址=fr\U fr.UTF-8
LC_电话=fr_fr.UTF-8
LC_测量=fr_fr.UTF-8
LC_标识=fr_fr.UTF-8
立法会全体议员=
为什么?调试模式显示UTF字符的字节表示形式要更明确,如果您不知道过程中每个步骤的字符编码,那么查看单个字节是非常有价值的,并且解码的形式是不明确的。
+ echo $'\344\270\255\346\226\207'
中文
+ echo english
english