PowerShell تمسك بيد المطور إلى حد كبير، ولكنها لا تستطيع قراءة عقلك. لا يمكنها أن تعرف بشكل فطري نوع الإخراج الذي تبحث عنه. ستقدم أفضل تخمين لها من خلال تنسيق افتراضي، ولكن القرار النهائي بشأن كيفية عرض الإخراج يعتمد عليك. باستخدام أمر Format-Table في PowerShell، يمكنك ضبط الإخراج حسب رغبتك.
PowerShell لديه نظام تنسيق يحتوي على إخراج افتراضي وإمكانية تغيير كيفية تنسيق الإخراج على أساس نوع الكائن. إذا كنت لا ترغب في التعلم حول XML وكيفية تنسيق الإخراج دائمًا بطريقة معينة، فلديك أيضًا أوامر مثل Powershell format-table و Format-List
و Format-Wide
تحت تصرفك. سيقوم ملف PS1XML على نظام الملفات أو استخدام أي من أوامر تنسيق الإخراج بعرض الإخراج بطرق مختلفة.
بدون استخدام أي تنسيق خاص، PowerShell، بشكل افتراضي، يستخدم تنسيقه الخاص. في كل مرة يتم فيها إرجاع كائن محدد، سترى على الأرجح جزءًا محدودًا فقط من محتويات ذلك الكائن الفعلي. على سبيل المثال، عند النظر إلى مجلد واحد فقط، سترى فقط الدليل الرئيسي وبعض السمات.
ولكن، قم بتوجيه نفس الأمر إلى Select-Object -Property *
وانظر ماذا سيحدث.
لقد قام PowerShell بإخفاء الكثير من خصائص الكائن عنك لأنه عادةً ما لا تحتاج إلى رؤية كل هذه المعلومات. يوفر PowerShell عرضًا افتراضيًا، لكن هذا لا يعني أن هذا هو الخيار الوحيد لديك. يمكننا تغيير هذا العرض عبر cmdlet الشكل.
أكثر cmdlet تنسيق شعبية هو Format-Table
. وفقًا لمساعدة PowerShell:
يقوم cmdlet Format-Table بتنسيق إخراج أمر كجدول بخصائص محددة للكائن في كل عمود. يحدد نوع الكائن التخطيط الافتراضي والخصائص التي يتم عرضها في كل عمود، ولكن يمكنك استخدام معلمة الخاصية لتحديد الخصائص التي تريد رؤيتها.
يمكنك أيضًا استخدام جدول تجزئة لإضافة خصائص محسوبة إلى كائن قبل عرضه وتحديد عناوين الأعمدة في الجدول. لإضافة خاصية محسوبة، استخدم معلمة الخاصية أو GroupBy.
استخدام Powershell Format-Table و Select-Object
لاختيار خصائص كائن فردي يبدو أنه متماثل طالما أن قيم الخصائص لا تتجاوز عرض وحدة التحكم الحالية. ولكن بمجرد محاولة عرض الكثير من الكائنات، سترى أن Format-Table
يستمر في التنسيق الجدولي بينما Select-Object
يعود إلى عرض الخصائص على كل سطر.
سيحاول إخراج Powershell Format-Table عرض المعلومات عبر تنسيق جدولي دائمًا. إذا كانت قيم الخصائص طويلة جدًا ليتم عرضها، فسيقوم بتعويض أي نص مفقود بنقاط تعجب للإشارة إلى توفر معلومات إضافية ولكنها لم تظهر فقط.
الأمر Format-Table
يحتوي على العديد من الطرق المختلفة التي يمكن أن يستخدمها لتلاعب في الإخراج. تحقق من الوثائق الكاملة لـ Format-Table
عبر Microsoft docs.
Source:
https://adamtheautomator.com/powershell-format-table/