我想使用命令行安装某些东西,我们有 2 个操作系统和 2 种语言。要以正确的语言安装软件包,我需要找出系统语言是什么。
如何从命令行获取系统语言?
答案1
这是通过REG QUERY HKLM\System\CurrentControlSet\Control\Nls\Language /v InstallLanguage
然后你会得到一个数字,其含义如下(不保证完整性和正确性):
0436 = "af;Afrikaans"
041C = "sq;Albanian"
0001 = "ar;Arabic"
0401 = "ar-sa;Arabic (Saudi Arabia)"
0801 = "ar-iq;Arabic (Iraq)"
0C01 = "ar-eg;Arabic (Egypt)"
1001 = "ar-ly;Arabic (Libya)"
1401 = "ar-dz;Arabic (Algeria)"
1801 = "ar-ma;Arabic (Morocco)"
1C01 = "ar-tn;Arabic (Tunisia)"
2001 = "ar-om;Arabic (Oman)"
2401 = "ar-ye;Arabic (Yemen)"
2801 = "ar-sy;Arabic (Syria)"
2C01 = "ar-jo;Arabic (Jordan)"
3001 = "ar-lb;Arabic (Lebanon)"
3401 = "ar-kw;Arabic (Kuwait)"
3801 = "ar-ae;Arabic (you.A.E.)"
3C01 = "ar-bh;Arabic (Bahrain)"
4001 = "ar-qa;Arabic (Qatar)"
042D = "eu;Basque"
0402 = "bg;Bulgarian"
0423 = "be;Belarusian"
0403 = "ca;Catalan"
0004 = "zh;Chinese"
0404 = "zh-tw;Chinese (Taiwan)"
0804 = "zh-cn;Chinese (China)"
0C04 = "zh-hk;Chinese (Hong Kong SAR)"
1004 = "zh-sg;Chinese (Singapore)"
041A = "hr;Croatian"
0405 = "cs;Czech"
0406 = "the;Danish"
0413 = "nl;Dutch (Netherlands)"
0813 = "nl-be;Dutch (Belgium)"
0009 = "en;English"
0409 = "en-us;English (United States)"
0809 = "en-gb;English (United Kingdom)"
0C09 = "en-au;English (Australia)"
1009 = "en-ca;English (Canada)"
1409 = "en-nz;English (New Zealand)"
1809 = "en-ie;English (Ireland)"
1C09 = "en-za;English (South Africa)"
2009 = "en-jm;English (Jamaica)"
2809 = "en-bz;English (Belize)"
2C09 = "en-tt;English (Trinidad)"
0425 = "et;Estonian"
0438 = "fo;Faeroese"
0429 = "fa;Farsi"
040B = "fi;Finnish"
040C = "fr;French (France)"
080C = "fr-be;French (Belgium)"
0C0C = "fr-ca;French (Canada)"
100C = "fr-ch;French (Switzerland)"
140C = "fr-lu;French (Luxembourg)"
043C = "gd;Gaelic"
0407 = "de;German (Germany)"
0807 = "de-ch;German (Switzerland)"
0C07 = "de-at;German (Austria)"
1007 = "de-lu;German (Luxembourg)"
1407 = "de-li;German (Liechtenstein)"
0408 = "el;Greek"
040D = "he;Hebrew"
0439 = "hi;Hindi"
040E = "hu;Hungarian"
040F = "is;Icelandic"
0421 = "in;Indonesian"
0410 = "it;Italian (Italy)"
0810 = "it-ch;Italian (Switzerland)"
0411 = "ja;Japanese"
0412 = "ko;Korean"
0426 = "lv;Latvian"
0427 = "lt;Lithuanian"
042F = "mk;FYRO Macedonian"
043E = "ms;Malay (Malaysia)"
043A = "mt;Maltese"
0414 = "no;Norwegian (Bokmal)"
0814 = "no;Norwegian (Nynorsk)"
0415 = "pl;Polish"
0416 = "pt-br;Portuguese (Brazil)"
0816 = "pt;Portuguese (Portugal)"
0417 = "rm;Rhaeto-Romanic"
0418 = "ro;Romanian"
0818 = "ro-mo;Romanian (Moldova)"
0419 = "ru;Russian"
0819 = "ru-mo;Russian (Moldova)"
0C1A = "sr;Serbian (Cyrillic)"
081A = "sr;Serbian (Latin)"
041B = "sk;Slovak"
0424 = "sl;Slovenian"
042E = "sb;Sorbian"
040A = "es;Spanish (Traditional Sort)"
080A = "es-mx;Spanish (Mexico)"
0C0A = "es;Spanish (International Sort)"
100A = "es-gt;Spanish (Guatemala)"
140A = "es-cr;Spanish (Costa Rica)"
180A = "es-pa;Spanish (Panama)"
1C0A = "es-do;Spanish (Dominican Republic)"
200A = "es-ve;Spanish (Venezuela)"
240A = "es-co;Spanish (Colombia)"
280A = "es-pe;Spanish (Peru)"
2C0A = "es-ar;Spanish (Argentina)"
300A = "es-ec;Spanish (Ecuador)"
340A = "es-cl;Spanish (Chile)"
380A = "es-uy;Spanish (Uruguay)"
3C0A = "es-py;Spanish (Paraguay)"
400A = "es-bo;Spanish (Bolivia)"
440A = "es-sv;Spanish (El Salvador)"
480A = "es-hn;Spanish (Honduras)"
4C0A = "es-ni;Spanish (Nicaragua)"
500A = "es-pr;Spanish (Puerto Rico)"
0430 = "sx;Sutu"
041D = "sv;Swedish"
081D = "sv-fi;Swedish (Finland)"
041E = "th;Thai"
0431 = "ts;Tsonga"
0432 = "tn;Tswana"
041F = "tr;Turkish"
0422 = "uk;Ukrainian"
0420 = "your;Urdu"
042A = "vi;Vietnamese"
0434 = "xh;Xhosa"
043D = "ji;Yiddish"
0435 = "zu;Zulu"
答案2
如果您想实际测试系统语言,您可以考虑使用 WMIC:
wmic.exe os get locale, oslanguage, codeset
在我的机器上产量:
CodeSet Locale OSLanguage
1252 0409 1033
例如,如果您想要测试日语(区域设置 0411),您可以将以下内容放入批处理程序中:
wmic os get locale, oslanguage, codeset | grep 0411 > nul && @echo Japanese Language installed!
测试两种语言环境,如果找到则发出 goto 命令。如果找不到则出错。
您可能正在寻找 Locale 而不是 OSLanguage 或 Codeset,但我将它们包括在这里,是因为您的问题和所接受的答案的措辞方式。