Chciałem tylko sprawdzić, czy ktoś wie, jak skrócić tę linię PowerShell:
gci -Recurse -path $temp | ? {(".jpg",".png" -eq $_.extension -and $_ -match 'this' -and $_ -match "that")} | mi -Destination ($Images) -Force
Linia znajduje się w tym kodzie:
$Temp = "F:\Temp-Images"
$Images = "F:\Images\"
gci -Recurse -path $Temp | ? {(".jpg",".png" -eq $_.extension -and $_ -match 'this' -and $_ -match "that")} | mi -Destination ($Images) -Force
Skrypt służy do wyszukiwania w folderze ($ Temp), znajdowania plików z rozszerzeniem .jpg lub .png ORAZ zawierających zarówno słowa „to”, jak i „tam” w nazwie pliku. Jeśli znajdzie dopasowanie, przenosi plik do folderu docelowego ($ Images)
Jeśli więc plik „F: \ Temp-Images” o nazwie „this-that.png” zostanie przeniesiony do „F: \ Images \”
Jestem nowy w PowerShell, więc poskładałem powyższy kod razem za pomocą wyszukiwań Google. Nie wiem, czy moja składnia jest świetna, czy nie, ale działa dla mnie. Zastanawiam się tylko, czy istnieje sposób na skrócenie kodu. Na przykład czy istnieje sposób, aby to skrócić ?:
-and $_ -match 'this' -and $_ -match "that"
Dzięki!
this
ithat
?