Ich glaube, dieses Problem mit dem FileSystemWatcher als System-Konto ausgeführt werden, obwohl das .ps1-Skript gestartet wird, einfach mit der rechten Maustaste und wählen Sie "Mit Powershell ausführen".PowerShell-Skript mit FileSystemWatcher wird nicht starten Python-Skript
Ich habe verschiedene Methoden ausprobiert, den Befehl in das Hauptscript .ps1 zu integrieren und während des Ereignisses ACTION ein weiteres .ps1-Skript zu starten.
Beide führen die Back-End-Funktionen aus oder verschieben \ naming \ delete und laden Dateiinhalte, aber wenn es um die Ausführung des .py-Skripts geht, wird es in der aktuellen Sitzung nicht gestartet.
Kennt jemand eine Möglichkeit, dieses Fenster im Vordergrund zu starten? Der Python-Code läuft ein Plug-in Selenium und muss Chrome öffnen, um seine Sache zu tun.
Wie immer vielen Dank!
Hier ist der Code:
$folder = 'C:\scripts\tmp' # root path to monitor
$filter = '*.*' # wildcard filter
$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{IncludeSubdirectories = $false;NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'}
Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action {
$name = $Event.SourceEventArgs.Name
$changeType = $Event.SourceEventArgs.ChangeType
$timeStamp = $Event.TimeGenerated
Write-Host "The file '$name' was $changeType at $timeStamp" -fore green
Out-File -FilePath C:\Scripts\URLwatcher\logURL.txt -Append -InputObject "The file '$name' was $changeType at $timeStamp"
#Create a timestamp var
$filetimestamp = (Get-Date -Format yyyy-mm-dd-hhmmss)
#Create a timestamp file name
$timestampedURLfile = "C:\Scripts\URLwatcher\processing\" + $filetimestamp + ".txt"
#Move URL file and rename it
move-item C:\scripts\tmp\data.txt $timestampedURLfile
#Extract & store the URL from the file
$addURL = Get-Content $filename
#Scrape the url
python C:\Scripts\DailyStats.py -l $addURL #### <--This script will not run ####
#Delete the URL file
del $filename
}