Просто посмотрим, знает ли кто-нибудь способ сократить эту строку PowerShell:
gci -Recurse -path $temp | ? {(".jpg",".png" -eq $_.extension -and $_ -match 'this' -and $_ -match "that")} | mi -Destination ($Images) -Force
Строка в этом коде:
$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
Сценарий предназначен для поиска в папке ($ Temp), поиска любых файлов с расширением .jpg или .png и AND, в словах которых есть как слова "this", так и "that". Если он находит совпадение, он перемещает файл в папку назначения ($ Images)
Поэтому, если в «F:\Temp-Images» есть файл с именем «this-that.png», он будет перемещен в «F:\Images\»
Я новичок в PowerShell, поэтому я собрал код выше с помощью поисков Google. Я не знаю, хороший ли у меня синтаксис, но он работает на меня. Мне просто интересно, есть ли способ сократить код. Например, есть ли способ сократить это?
-and $_ -match 'this' -and $_ -match "that"
Спасибо!