ロケールを変更するシェルスクリプトは効果がありません。

ロケールを変更するシェルスクリプトは効果がありません。

私のロケールを切り替える簡単なスクリプトを書いた。コンソールに1行ずつ作成して実行するとうまくいきますが、それとも.bashrc

しかし、sudoを使用したり使用したりせずにスクリプトを実行する際の顕著な影響はありません。 (地域設定は変更されません)

問題はなぜですか?
私のスクリプトが間違っているか、何か他のものを見逃していますか?

源泉:

#!/bin/bash
set -x
LANG=en_US.utf8
LANGUAGE=en_US.utf8
LC_ALL=en_US.utf8
export LANG
export LANGUAGE
export LC_ALL
echo "Language set!"

実行段階とエコーを得ましたLanguage setが、それはすべてです。私もそれを試しました#!/bin/sh


オペレーティングシステム情報:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.3 LTS"

Kernel:    3.13.0-042stab103.6

ベストアンサー1

現在のシェルに変更を適用するには、スクリプトを「実行」するのではなく「インポート」する必要があります。したがって、スクリプト名が「script.sh」の場合、変更は./script.shそのまま実行されず、現在のセッションに適用されます。. ./script.sh

おすすめ記事