如何使用一个命令自动执行“dpkg-reconfigure locales”?

sho*_*key 16 locale

在控制台输入dpkg-reconfigure locales,一个gui跳出来,我选择en_HK.UTF-8作为我的目标,点击进入。

在此处输入图片说明

dpkg-reconfigure locales
Generating locales (this might take a while)...
en_HK.UTF-8... done
Run Code Online (Sandbox Code Playgroud)

如何将整个过程自动化为一个命令?

Dav*_* M. 8

对我有用的魅力是@DevRobot@Gunnar Hjalmarsson 的答案(以root 身份运行)之间的结合。编辑:添加了一些改进以避免烦人的错误:

update-locale "LANG=en_HK.UTF-8"
locale-gen --purge "en_HK.UTF-8"
dpkg-reconfigure --frontend noninteractive locales
Run Code Online (Sandbox Code Playgroud)

另一种可能性(效果更好)是通过debconf-utils实用程序和debconf-set-selections(以 root 身份运行):

echo "locales locales/default_environment_locale select en_HK.UTF-8" | debconf-set-selections
echo "locales locales/locales_to_be_generated multiselect en_HK.UTF-8 UTF-8" | debconf-set-selections
rm "/etc/locale.gen"
dpkg-reconfigure --frontend noninteractive locales
Run Code Online (Sandbox Code Playgroud)

希望这可能会有所帮助。


Tel*_*Why 6

一条命令:

sudo update-locale LANG=en_HK.UTF-8

轻松的一天:)

  • update-locale 用于更新`/etc/default/locale`。换句话说,这是别的东西...... (5认同)

T-D*_*awg 5

我会建议:

echo "en_HK.UTF-8" | sudo tee -a /etc/locale.gen
sudo locale-gen
Run Code Online (Sandbox Code Playgroud)

或者如果它绝对必须是“一个命令”:

echo "en_HK.UTF-8" | sudo tee -a /etc/locale.gen; sudo locale-gen
Run Code Online (Sandbox Code Playgroud)

有关解释,请参阅我在https://askubuntu.com/a/1246655/912933 上的回答