it-swarm.dev

كيف يمكنني الحصول على دليل البرنامج النصي PowerShell الذي أقوم بتنفيذه؟

أركض برنامج PowerShell النصي. كيف يمكنني الحصول على مسار دليل هذا البرنامج النصي الذي أديره؟

كيف نفعل ذلك؟

46
user2131116

يحتوي PowerShell 3 على $PSScriptRootالمتغير التلقائي :

يحتوي على الدليل الذي يتم تشغيل البرنامج النصي منه.

في Windows PowerShell 2.0 ، يكون هذا المتغير صالحًا فقط في وحدات البرامج النصية (.psm1). بدءًا من Windows PowerShell 3.0 ، يكون صالحًا في جميع البرامج النصية.

لا تنخدع بالصيغة السيئة. PSScriptRoot هو دليل الملف الحالي.

في PowerShell 2 ، يمكنك حساب قيمة $PSScriptRoot بنفسك:

# PowerShell v2
$PSScriptRoot = Split-Path -Parent -Path $MyInvocation.MyCommand.Definition
135
Aaron Jensen