আমি কীভাবে উইন্ডোজ 7-এ সিস্টেম লোকেল পেতে পারি?
আমি এরকম কিছু বোঝাতে চাইছি: cs_CZ.UTF-8
আমি কমান্ড লাইনে "লোকেল" লেখার চেষ্টা করেছি কিন্তু উইন্ডোজে এটি কার্যকর হয় না। কোন পরামর্শ?
আমি কীভাবে উইন্ডোজ 7-এ সিস্টেম লোকেল পেতে পারি?
আমি এরকম কিছু বোঝাতে চাইছি: cs_CZ.UTF-8
আমি কমান্ড লাইনে "লোকেল" লেখার চেষ্টা করেছি কিন্তু উইন্ডোজে এটি কার্যকর হয় না। কোন পরামর্শ?
উত্তর:
এই তথ্যটি পাওয়ার জন্য একটি নির্দিষ্ট কমান্ড নেই (বা কমপক্ষে, আমি সচেতন না এমন একটিও নয়) তবে আপনি এটি সরবরাহকৃতদের মধ্যে এটি খুঁজে পেতে পারেন systeminfo.exe
।
systeminfo.exe
নিজে নিজেই কাজ করে, পিএস
আপনার যদি কোনও ব্যাচের ফাইলে শর্তসাপেক্ষে অন্যান্য কাজ করার জন্য প্রকৃত লোকেলের প্রয়োজন হয় তবে আপনি নীচের সাথে একটি ব্যাচ ফাইল তৈরি করতে পারেন (.bat এক্সটেনশন হিসাবে একটি পাঠ্য ফাইল সংরক্ষণ করুন)। প্রারম্ভিক পয়েন্ট হিসাবে এটি কমান্ড প্রম্পটে মুদ্রণ করবে, উদাহরণস্বরূপ, "এন-ইউএস" (কোনও উদ্ধৃতি নেই) আপনি ভেরিয়েবলটিও ব্যবহার করতে পারেন! VERBOSE_SYSTEM_LOCALE! মানব পাঠযোগ্য লোকালের জন্য যেমন ইংরেজি (ইউনাইটেড স্টেটস)
@echo off
setlocal EnableDelayedExpansion
FOR /F "delims==" %%G IN ('systeminfo.exe') Do (
set input=%%G
for /l %%a in (1,1,100) do if "!input:~-1!"==" " set input=!input:~0,-1!
IF "!input:~0,13!"=="System Locale" (
set answer=!input:~15!
set answer=!answer: =!
set VERBOSE_SYSTEM_LOCALE=!answer:*;=!
call set SYSTEM_LOCALE_WITH_SEMICOLON=%%answer:!VERBOSE_SYSTEM_LOCALE!=%%
set SYSTEM_LOCALE=!SYSTEM_LOCALE_WITH_SEMICOLON:~0,-1!
echo !SYSTEM_LOCALE!
)
)
আসলে, আপনার প্রস্তাবগুলি ব্যর্থ হয়েছে, কারণ তারা একটি স্ট্রিং (" সিস্টেম লোকেল ") অনুসন্ধান করার উপর নির্ভর করে যা বর্তমান লোকেলের উপর নির্ভর করে পরিবর্তিত হয়! আমার ফরাসি Win10Pro এ, স্ট্রিংটি হ'ল " অপশন রিজিওনালে ডু সিস্টেম " (উচ্চারণের চিঠিযুক্ত, যা একটি সিএমডি ফাইলে সঠিকভাবে পরিচালনা করা খুব কঠিন)।
আমি কিছু পরীক্ষা করেছি এবং আমার সিস্টেমে দেখে মনে হচ্ছে, সিস্টেমনফোর আউটপুটে লোকাল সম্পর্কে যে রেখাগুলি কেবল সেমি-কোলন অক্ষর (";") ধারণ করে:
24/09/2017 17:18:43,23 | C:\CMD ()
> systeminfo | findstr ;
Option régionale du système: fr;Français (France)
Paramètres régionaux d'entrée: fr;Français (France)
এর উপর ভিত্তি করে (যা বিভিন্ন ভাষার সাথে অন্যান্য সিস্টেমে সত্য নাও হতে পারে), আমি এই get_locale.cmd স্ক্রিপ্টটি কোড করেছিলাম :
@echo off
setlocal EnableDelayedExpansion
FOR /F "delims==" %%A IN ('systeminfo.exe ^| findstr ";"') do (
FOR /F "usebackq tokens=2-3 delims=:;" %%B in (`echo %%A`) do (
set VERBOSE_SYSTEM_LOCALE=%%C
REM Removing useless leading spaces ...
FOR /F "usebackq tokens=1 delims= " %%D in (`echo %%B`) do (
set SYSTEM_LOCALE=%%D
)
set SYSTEM_LOCALE_WITH_SEMICOLON=!SYSTEM_LOCALE!;
set | findstr /I locale
REM No need to handle second line, quit after first one
goto :EOF
)
)
আমার সিস্টেমে আমার স্ক্রিপ্টের ফলাফল:
24/09/2017 17:18:45,31 | C:\CMD ()
> get_locale.cmd
SYSTEM_LOCALE=fr
SYSTEM_LOCALE_WITH_SEMICOLON=fr;
VERBOSE_SYSTEM_LOCALE=Français (France)
তবে সতর্ক হোন যে তিনটি পরিবেশের ভেরিয়েবল কেবল স্ক্রিপ্টের মধ্যেই বিদ্যমান, তারা স্ক্রিপ্ট শেষ হওয়ার পরে সিএমডি পরিবেশে স্থির থাকে না ( * নিক্সের মতো কোনও এক্সপোর্ট কমান্ড নেই )।
আবার আমি.
আমি আমার স্ক্রিপ্টে কিছুটা উন্নতি পেয়েছি। SETX ব্যবহার করে ভবিষ্যতের সিএমডি উইন্ডোজ ব্যবহারের জন্য পরিবেশের পরিবর্তনগুলি USER পরিবেশে সংরক্ষণ করতে পারে (যেমনটি SETX /? দ্বিতীয় মন্তব্যতে বলা হয়েছে )?
তারপরে get_locale.cmd স্ক্রিপ্টটি হয়ে যায়:
@ECHO OFF
SETLOCAL EnableDelayedExpansion
FOR /F "delims==" %%A IN ('systeminfo.exe ^| findstr ";"') DO (
FOR /F "usebackq tokens=2-3 delims=:;" %%B IN (`echo %%A`) DO (
SET VERBOSE_SYSTEM_LOCALE=%%C
setx VERBOSE_SYSTEM_LOCALE "%%C" 1>NUL
REM Removing useless leading spaces ...
FOR /F "usebackq tokens=1 delims= " %%D IN (`echo %%B`) DO (
SET SYSTEM_LOCALE=%%D
setx SYSTEM_LOCALE %%D 1>NUL
)
SET SYSTEM_LOCALE_WITH_SEMICOLON=!SYSTEM_LOCALE!;
setx SYSTEM_LOCALE_WITH_SEMICOLON !SYSTEM_LOCALE!; 1>NUL
SET | findstr /I locale
REM No need to handle second line, quit after first one
GOTO :EOF
)
)
VERBOSE_SYSTEM_LOCALE ভেরিয়েবলের জন্য, যেহেতু মানটি সম্ভবত বেশ কয়েকটি শব্দের লম্বা, সুতরাং এটির জন্য %% C আবদ্ধ করা প্রয়োজন যাতে SETX প্রত্যাশা অনুযায়ী কেবল একটি প্যারামিটার গ্রহণ করে।
এখন, কোনও নতুন সিএমডি উইন্ডোতে এই মানগুলি উপলব্ধ হবে:
16/12/2017 2:00:46 | C:\Users\Seagram ()
>set | findstr /i locale
SYSTEM_LOCALE=fr
SYSTEM_LOCALE_WITH_SEMICOLON=fr;
VERBOSE_SYSTEM_LOCALE=Français (France)
পিএস: অন্য ভাষা সহ অন্যান্য দেশের অন্যান্য অবদানকারীরা আধা-কোলন খুঁজছেন তা নিশ্চিত করতে পারলে ভাল লাগবে ';' তাদের উইন্ডোজ সিস্টেমে কাজ করে। আগাম ধন্যবাদ!
System Locale: en-gb;English (United Kingdom)