![如何将wsl 2 kali linux非UNICODE终端字符编码更改为UNICODE终端字符?](https://linux22.com/image/209710/%E5%A6%82%E4%BD%95%E5%B0%86wsl%202%20kali%20linux%E9%9D%9EUNICODE%E7%BB%88%E7%AB%AF%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81%E6%9B%B4%E6%94%B9%E4%B8%BAUNICODE%E7%BB%88%E7%AB%AF%E5%AD%97%E7%AC%A6%EF%BC%9F.png)
我正在尝试在 WSL 2 KALI LINUX 中使用 Airodump-ng,他们给了我以下警告:
警告:检测到您正在使用非 UNICODE 终端字符编码
当我输入 $locale charmap 时,我发现我正在使用 ->ANSI_X3.4-1968
那么如何将 ANSI_X3.4-1968 更改为 UTF-8 以便拥有 UNICODE 终端?告诉我如何在 wsl 2 kali linux 中获得 UNICODE 终端?
答案1
通常,字符映射表是您正在使用的区域设置的一部分。如果您没有设置任何区域设置,则它们默认为C
或POSIX
,它使用 ASCII(在本例中写为ANSI_X3.4-1968
)。当区域设置的字符集不是 时,会出现此警告UTF-8
。
在大多数现代 Linux 系统上,您可以简单地使用C.UTF-8
区域设置,其工作方式与区域设置类似C
,只是它使用 UTF-8。通常,您可以通过将环境变量设置LANG
为 来完成此C.UTF-8
操作(通常在 shell 配置中),然后重新启动 shell(例如,使用exec bash
或exec zsh
)。您还可以通过执行以下操作为当前 shell 更改此设置export LANG=C.UTF-8
。
您可能还希望使用反映您实际所在的语言和地区的语言环境,或者您所关心的语言和语言的语言环境。例如,您可以选择en_US.UTF-8
、es_MX.UTF-8
、 或fr_CH.UTF-8
您认为合适的。请注意,在某些系统上,您需要先编译语言环境才能使用它们,而C.UTF-8
在完全可用的系统上通常无需执行此操作。
请注意,您还可以通过设置来更改此设置LC_ALL
,但这会覆盖所有其他设置,而LANG
是后备默认设置。因此,最好使用这样您可以根据需要LANG
自定义单独的设置(例如, )。LC_TIME
也可能是终端模拟器将区域设置设置C
为这种情况,因为它根本不支持 UTF-8,但 Microsoft 终端(默认的 WSL2 终端模拟器)或几乎所有其他现代终端模拟器都不是这种情况,确实支持 UTF-8。