Osx

Mac OS X 下的 lpstat 和本地化

  • March 9, 2012

如何強制“lpstat”實用程序在本地化 Mac OS X(版本 10.6)下以英文顯示輸出消息?

例子:

lpstat -v

荷蘭語節目:

apparaat voor Samsung_SCX_4300_Series: usb://.....

我需要強制它以英語顯示消息,以便能夠使用正則表達式(“設備 for”前綴)解析應用程序的輸出:

device for Samsung_SCX_4300_Series: usb://

我曾嘗試使用“LANG=en_US.UTF-8”前綴、“LC_MESSAGES=C”前綴等執行它,但這些在 Mac 下似乎都沒有任何效果。英語列在第二個位置的系統偏好下。

Apple 對其發布的CUPS版本中的區域設置檢測進行了一些修改。

查看 Apple 修改的版本cups/language.c(特別是10.6.8’slanguage.c),我發現只要您還設置了 SOFTWARE(任何值,甚至是空字元串),您就應該能夠通過將 LANG 設置為您的首選語言來覆蓋該語言.

如果您沒有同時設置 SOFTWARE 和 LANG,那麼它將預設讀取系統偏好設置的“語言和文本”窗格的“語言”選項卡中的首選(第一)語言。

以下 shell 命令應產生預設/英文消息:

SOFTWARE= LANG=C lpstat -v

如果您沒有通過 shell呼叫*lpstat (例如,不是通過**system(3)*或類似方法),請相應地調整環境。

引用自:https://unix.stackexchange.com/questions/33833