シェルスクリプト総合 その15at UNIX
シェルスクリプト総合 その15 - 暇つぶし2ch623:608,612,615,619,622
09/11/23 18:25:17
$ ./a.out
C
123456789
$ LC_NUMERIC=da_DK ./a.out
da_DK
123.456.789
$ LC_ALL=da_DK ./a.out
C
123.456.789
となりました。

>>615の後半のようにLC_ALL=da_DK bashで環境作ってからやる方が楽なので、
本末転倒になりましたが。。。


ところで、これで興味深いのは、LC_ALLはLC_NUMERICに影響を及ぼさないことです。
>>615では LC_ALL=da_DK bash 後にlocaleすると、LC_ALL=LC_NUMERIC=da_DKになりますが、
bashの初期化処理でLC_ALLの値をLC_NUMERICにコピーしているのかも?


最後に。619の訂正。
SIMPLE COMMAND EXPANSIONの節の 4.にあるように、
parameter expansionされてからコマンドが実行されるようなので、
$ LC_NUMERIC=da_DK printf "%s\n" "$LC_NUMERIC"
はコマンドが実行される前に引数の$LC_NUMERICが「C」(参考>>615)と展開される。
そのため、Cが表示される。


長文失礼しました。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch