Member 13888501 Ответов: 0

Как добавить инкрементное имя файла и выполнить Блокнот при перемещении файла с помощью powershell


Привет я новичок в powershell

В настоящее время я пытаюсь написать сценарий на powershell.

1. Следите за изменениями в определенной папке (C:\Users\CELINE\Desktop\Testing4)

2. Если обнаружен новый файл, он автоматически переместит его в другую папку (C:\Users\CELINE\Desktop\PowerShellChanges2)

3. Автоматически переименовать перемещенный файл "запрос.КШМ"

4. добавляйте инкрементные номера к именам файлов, когда новые файлы перемещаются в папку (например. Запрос(1).в формате CSV, запросу(2).CSV-файл, запрос(3).CSV и т. д.)

5. Открой Блокнот после того как файл будет перемещен

Теперь я застрял с пунктами 4 и 5.
Я понятия не имею, почему при перемещении файла постоянно открываются несколько блокнотов, но я хочу открыть только один
Я также не знаю, как добавить имена файлов

Кто-нибудь может помочь?

Что я уже пробовал:

$наблюдатель = новый-системный объект.ИО.Класса filesystemwatcher

#Путь к папке для просмотра

$наблюдатель.Путь = "C:\Users\CELINE\Desktop\Testing4"
$наблюдатель.Фильтр = "*.*"
$наблюдатель.IncludeSubdirectories = $true
$наблюдатель.EnableRaisingEvents = $true

#Действие выполняется при обнаружении изменений

$действие = {


#Источник
$path = $Event.SourceEventArgs.Полный путь

$changeType = $Event.SourceEventArgs.Тип изменения
$logline = "$(Get-Date), $changeType, $path"

#Путь назначения
$дест = "C:\Users\CELINE\Desktop\PowerShellChanges2\Request.csv"

#Добавить файл журнала для отслеживания изменений

Добавить-контент "C:\Users\CELINE\Desktop\logtest5.txt" -значение $logline

#перемещать файлы

$actionMove = Move-Item -Path $path -Destination $dest


#Выполнить Блокнот


$FileExists = Test-Path $dest
If ($FileExists -eq $True) {C:\Windows\notepad.exe}
}

#событийный
Register-ObjectEvent $watcher "Changed" -Action $action
while ($true) {Sleep 0}

0 Ответов