পাওয়ারশেল ফন্টের মুখ এবং আকার কাস্টমাইজ করা


10

নিম্নলিখিত কমান্ডগুলি ব্যবহার করে আমাদের ডিফল্ট শেল হিসাবে পাওয়ারশেল সেটআপ সহ কয়েকটি উইন্ডোজ 2012 সার্ভার কোর সিস্টেম রয়েছে:

$RegPath = "Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\winlogon"
Set-ItemProperty -Confirm  -Path $RegPath -Name Shell -Value 'cmd.exe /C start /max PowerShell.exe -noExit'

আমি বুঝতে পেরেছি যে আমরা সি: \ উইন্ডোজ \ সিস্টেম 32 \ উইন্ডোজপাওয়ারশেল \ v1.0 \ প্রোফাইল.ps1 এ একটি পাওয়ার পাওয়ার শেল স্ক্রিপ্টের সাহায্যে পাওয়ারশেল ফন্টের রঙটি কাস্টমাইজ করতে পারি। এই স্ক্রিপ্টটি সমস্ত ব্যবহারকারীর দ্বারা ব্যবহৃত হয়।

তবে এখন আমি স্থির থাকা ফন্টের মুখ এবং ফন্টের আকারটি (সমস্ত ব্যবহারকারীর জন্য আবার) কাস্টমাইজ করতে চাই। IE যদি আমি সার্ভারটি থেকে লগ আউট করে এবং লগ ইন করি তবে আমি চাই সেটিংসটি বজায় রাখা উচিত। তেমনিভাবে যদি আমি প্রশাসক হিসাবে লগইন করি বা আমার নিজের অ্যাকাউন্টের পাওয়ারশেলগুলি দেখতে একরকম দেখা যায় - একই ফন্টের রঙ, ফন্টের মুখ এবং ফন্টের আকার ব্যবহার করুন।

পাওয়ারশেল আইএসই এর সাহায্যে ফন্টের মুখ এবং ফন্টের আকারটি ব্যবহার করা সম্ভব বলে মনে হচ্ছে:

$psISE.Options.FontName = 'Lucida Sans Console' 
$psISE.Options.FontSize = 14

পাওয়ারসেল নিজেই সমতুল্য কি?

উত্তর:


4

পাওয়ারশেল (আইএসআই নয়) "কনসোল হোস্ট" কে উপস্থাপন করে যা প্রাচীন এমএস-ডস কমান্ড প্রম্পটে সামান্য আধুনিক আপডেট । কনসোল হোস্টটি মাইক্রোসফ্টের কমান্ড প্রম্পটটিকে উইন্ডোজের আধুনিক সংস্করণগুলির সাথে সামঞ্জস্যপূর্ণ রাখার উপায় ছিল, তবে এটি পুরানো কনসোল অ্যাপ্লিকেশনগুলির সাথে এখনও সামঞ্জস্যপূর্ণ।

আপনি যখন পাওয়ারশেল.এক্সই চালু করেন, csrss.exe conhost.exe নামে একটি শিশু প্রক্রিয়া তৈরি করে। আপনি যখন Cmd.exe চালু করবেন তখন এই আচরণটি অভিন্ন।

তবে যেহেতু তাদের পুরানো কনসোল অ্যাপ্লিকেশনগুলির সাথে সামঞ্জস্যতা বজায় রাখতে হয়েছিল, তাই তারা চেহারাটি খুব বেশি পরিবর্তন করতে এবং বেশি অনুভব করতে পারেনি, না তারা অভ্যন্তরীণ ইন্টারফেসগুলির একগুচ্ছ পরিবর্তন এবং পরিবর্তন করতে পারে।

আমি এটা বলতে যাচ্ছি না যে এটি অসম্ভব, তবে এটি যতটা ভাবেন তার চেয়ে শক্ত er

কিছুই নেই (Get-Host).UI.RawUISystem.Console। নেট ক্লাসে কিছুই নেই ।

আপনি রেজিস্ট্রিতে ফন্টের মুখ এবং আকার পরিবর্তন করতে পারেন এমন কিছু করে:

(সম্পাদনা: স্ল্যাশ নয় আন্ডারস্কোর)

Set-Location HKCU:\Console
New-Item '.\%SystemRoot%_System32_WindowsPowerShell_v1.0_powershell.exe'
Set-Location '.\%SystemRoot%_System32_WindowsPowerShell_v1.0_powershell.exe'

New-ItemProperty . FaceName -type STRING -value "Lucida Console"
New-ItemProperty . FontFamily -type DWORD -value 0x00000036
New-ItemProperty . FontSize -type DWORD -value 0x000c0000
New-ItemProperty . FontWeight -type DWORD -value 0x00000190

কার্নেল 32.dll এ একটি গুচ্ছ রফতানি রয়েছে যা ফন্ট পরিবর্তন করে:

typedef struct _CONSOLE_FONT {

   DWORD index;

   COORD dim;

} CONSOLE_FONT; 

BOOL WINAPI SetConsoleFont(HANDLE hOutput, DWORD fontIndex);
BOOL WINAPI GetConsoleFontInfo(HANDLE hOutput, BOOL bMaximize, DWORD numFonts, CONSOLE_FONT* info);
DWORD WINAPI GetNumberOfConsoleFonts();
BOOL WINAPI SetConsoleIcon(HICON hIcon);

আমি রেজিস্ট্রি দিয়ে ফন্টটি পরিবর্তন করতে উপরের কোডটি ব্যবহার করার চেষ্টা করেছি (তবে এটি কিছুই করেছে বলে মনে হয় না)। সেটিংস কার্যকর হওয়ার জন্য কি কিছু প্রয়োজন?
ব্র্যাড

সঠিক রেজিস্ট্রি কীগুলির মতো মনে হচ্ছে (কমপক্ষে উইন্ডোজ সার্ভারের জন্য 2012) কিছুটা আলাদা সেট-লোকেশন '\ কোডটি কার্যকর হচ্ছে বলে মনে হচ্ছে তবে আমার ফন্টটি পাওয়ারশেল কনসোলটি পরিবর্তন করে না।
ব্র্যাড

এই মডিউলটি ব্যবহার করে: গ্যালারী.টেকনেট.মাইক্রোসফট. / স্ক্রিপ্টসেন্টার/… আমি ফন্টগুলি পরিবর্তন করতে সক্ষম হয়েছি তবে মনে হচ্ছে বিকল্পগুলি খুব সীমাবদ্ধ। বাস্তবে আমার কাছে উপলব্ধ ফন্টগুলি বিকৃত হয়ে পড়েছিল, খুব বড় বা খুব ছোট। আমি কীভাবে আমি বিভিন্ন ফন্টের আকার নির্বাচন করতে পারি তা জানার চেষ্টা করছি।
ব্র্যাড

1
হ্যাঁ, যে ব্যক্তি লিখেছে সে কর্নেল 32.dll থেকে আমি সেই রফতানিগুলি রোধ করছি king এবং হ্যাঁ বিকল্পগুলি সীমিত। এ কারণেই আপনি যখন জিইউআইয়ের মাধ্যমে কোনও কনসোল অ্যাপের জন্য ফন্ট পরিবর্তন করেন, আপনার কাছে কেবল 3 ফন্ট পছন্দ রয়েছে। পাওয়ারসেল সহ আপনার কনসোল অ্যাপটিতে আপনার কমিক সান থাকতে পারে না। লোকটির স্ক্রিপ্টে তিনি ফন্টটি সেট করছেন Set-ConsoleFont 28। প্রতিটি ফন্ট নম্বর একটি পূর্ব নির্ধারিত উচ্চতা এবং প্রস্থ আছে। ঠিক যখন আপনি এটি জিইউতে পরিবর্তন করেন।
রায়ান রেস 21

দেখে মনে হচ্ছে ফন্টের মুখ এবং আকার পরিবর্তন করার মতো সহজ কিছু (যা অনুমান করা হবে একটি প্রাথমিক পরিবর্তন হবে) প্রায় অসম্ভব (বা কমপক্ষে অত্যন্ত কঠিন / খুব সীমিত বিকল্প সহ)। সুতরাং আমি অনুমান করি যে আমরা একটি ফন্টের আকার নিয়ে আটকেছি যা আমাকে স্কুইংটিং থেকে অন্ধ করে দেবে - ধন্যবাদ মাইক্রোসফ্ট।
ব্র্যাড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.