قم بتشغيل-المحتوى هو واحد من تلك الأوامر الأساسية في PowerShell التي لا أستطيع الاستغناء عنها. لا أزال أتذكر استخدام VBscript قبل أن نتمكن من استخدام PowerShell للكتابة إلى ملف. أتذكر دائمًا محاولة تذكر نوع الكائن الذي كنت بحاجة لاستخدامه واسم الطريقة. هل كان FileSystemObject ، FileObject أم ماذا؟ كانت معضلة! حتى عندما كنت أتذكر اسم الطريقة كان CreateTextFile ()
، كنت دائمًا أنسى إضافة True
كالمعامل الثاني.
إليك مثال على الوحشية التي أتحدث عنها.
قارن تلك الـ VBScript بهذا الـ PowerShell:
Set-Content -Path 'C:\file.txt' -Value 'test string'
أيهما تفضل؟ سأختار طريقة PowerShell! طريقة PowerShell تستخدم cmdlet واحدة تُسمى Set-content. هذا الـ cmdlet يسمح لنا باستخدام PowerShell بسهولة أكبر للكتابة إلى ملف. هذا الـ cmdlet في PowerShell هو cmdlet مدمج يتمتع بغرض واحد؛ الكتابة إلى ملف.
قد تحتوي بعض المعاملات هنا وهناك على تغيير تلك السلوك قليلاً، لكنها مركزة تمامًا على الكتابة إلى ملف. لا تخلط بينه وبين Add-Content
على الرغم من أنهما متشابهان. Set-Content
يقوم بتجاوز الملف بأكمله بينما Add-Content
يضيف إلى ملف. تعلمت ذلك بالطريقة الصعبة عدة مرات عندما بدأت للمرة الأولى!
إنشاء ملف/تجاوز ملف
الـ cmdlet Set-Content
بسيط نسبيًا. فيما يلي مثال جيد. يوضح هذا المثال أن Set-Content
يمكنه إنشاء ملف إذا لم يكن موجودًا أو يمكنه استبدال جميع المحتويات داخل ملف موجود مسبقًا.
إخراج إلى ملف
واحدة من الـ cmdlets التي يمكن أن تخرج إلى ملف هي Out-File
، ولكن Set-Content
يمكن أن تؤدي نفس المهمة على الرغم من القيام بذلك بشكل مختلف قليلاً.
ربما ترغب في سحب قطع محددة من نص ما من ملف نصي وإخراج الأسطر إلى ملف آخر. باستخدام Get-Content
و Set-Content
، يمكنك تحقيق هذا الهدف. ربما لدي ملف نصي يحتوي على اسم الخادم وحالته لكل سطر. أود قراءة حالة كل خادم وإخراج ذلك إلى ملف. باستخدام Get-Content
لقراءة الملف و Set-Content
للكتابة في الملف، يمكن ذلك.
Set-Content
هو واحد من تلك الأوامر الأساسية التي يتم استخدامها باستمرار. ليس متطورًا ولكنه يعمل في كل مرة وهو واحد يجب أن يكون لديك في حقيبة أدوات PowerShell الخاصة بك.
للحصول على شرح كامل، تفقد الـ Set-Content وثائق Microsoft.
Source:
https://adamtheautomator.com/powershell-write-to-file/