bashset-x非英文字符显示
跑
set -x
echo ??
echo english
表明
+ echo $'344270255346226207'
??
+ echo english
english
如何让它显示+回声??$ 而不是 + echo $'344270255346226207'?
回答
可能取决于 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=