Как вы запускаете встроенные скрипты PowerShell внутри ваших скриптов?
Как вы используете встроенные скрипты, такие как
Get-Location
pwd
ls
dir
split-path
::etc...
Они запускаются вашим компьютером, автоматически проверяя путь сценария.
Аналогично, я могу запустить свои собственные сценарии, просто поместив имя сценария в блок сценария
::sid.ps1 is a PS script I made to find the SID of any user
::it takes one argument, that argument would be the username
echo $(sid.ps1 jowers)
(returns something like)> S-X-X-XXXXXXXX-XXXXXXXXXX-XXX-XXXX
$(sid.ps1 jowers).Replace("S","X")
(returns same as above but with X instead of S)
Перейдите в командную строку powershell и введите
> $profile
Это вернет путь к файлу, который наша командная строка PowerShell будет выполнять каждый раз, когда вы открываете приложение.
Это будет выглядеть так
C:\Users\jowers\OneDrive\Documents\WindowsPowerShell\Microsoft.PowerShellISE_profile.ps1
Перейдите в Документы и посмотрите, есть ли у вас каталог WindowsPowerShell. Я не сделал, поэтому
> cd \Users\jowers\Documents
> mkdir WindowsPowerShell
> cd WindowsPowerShell
> type file > Microsoft.PowerShellISE_profile.ps1
Мы создали сценарий, который будет запускаться каждый раз, когда мы открываем приложение PowerShell.
Причина, по которой мы это сделали, была в том, чтобы мы могли добавить нашу собственную папку, в которой хранятся все наши собственные сценарии. Давайте создадим эту папку, и я назову ее «Bin» после каталогов, в которых Mac / Linux хранит свои скрипты.
> mkdir \Users\jowers\Bin
Теперь мы хотим, чтобы этот каталог добавлялся в нашу переменную $env:path
каждый раз, когда мы открываем приложение, поэтому вернитесь в каталог WindowsPowerShell
и
> start Microsoft.PowerShellISE_profile.ps1
Затем добавьте это
$env:path += ";\Users\jowers\Bin"
Теперь оболочка будет автоматически находить ваши команды, если вы сохраняете свои скрипты в этом каталоге "Bin".
Перезапустите powershell, и это должен быть один из первых скриптов, которые будут выполняться.
Запустите это в командной строке после перезагрузки, чтобы увидеть новый каталог в переменной пути:
> $env:Path
Теперь мы можем вызывать наши скрипты из командной строки или из другого скрипта так же просто, как это:
$(customScript.ps1 arg1 arg2 ...)
Как видите, мы должны вызывать их с расширением .ps1
, пока не создадим для них псевдонимы. Если мы хотим стать модным.