В настоящее время я пытаюсь создать сценарий PowerShell, который выполняет те же функции, что и cd
, но также проверяет папку .git (новый каталог - хранилище git), а затем, если true, впоследствии извлекает и выполняет git status
.
В данный момент я пытаюсь выполнить отладку в PowerShell ISE, но в отладчике мой сценарий пропускается прямо через блоки внутри операторов if..else
.Это синтаксическая ошибка, или if..else
работает правильно?
function gd {
#set parameters taken from program (only file location)
Param(
[Parameter(Position=0)]
[String]$location
)
#get current directory location
[String]$Cl = $(Get-Location)
Set-Location $location
[String]$Nl = $(Get-Location)
if ($Cl -eq $Nl) {
return
} else {
Get-ChildItem -Hidden | Where-Object {
$_.Name -eq ".git"
} | Write-Output "Eureka!";
git fetch;
git status;
return
Write-Output "No .git found here!"
}
}
PS: я знаю, что длинный Where-Object
канал ужасен (и, несомненно, не функционирует как есть), ноэто мой первый сценарий.Хотелось бы помочь с этим, но моя главная проблема - выполнение, пропускающее блоки кода if / else.