Wenn Ordner leer dann Shutdown
Hallo,
ich habe einen Beitrag gefunden der mein Anliegen halb behandelt, leider eben nur halb.
Prüfen per Batch ob ein Verzeichnis leer ist
Dort geht um auch um die Prüfung ob ein Ordner leer ist aber eben nur darum. Ich möchte auch das etwas passiert wenn der Ordner leer ist, konkret soll sich die Abfrage solange wiederholen bis der Ordner leer ist und der PC dann heruntergefahren werden oder einfach eine beliebige bat ausgeführt werden.
Set "testdir=c:\MyDir"
if exist "%testdir%" dir /b /A:-d "%testdir%">nul 2>nul && @echo %testdir% ist nicht leer
soweit funktioniert das ganze, was muss ich noch ergänzen um die bat aufzurufen wenn echo = "@echo %testdir% ist leer" ist?
Vielen Dank für eure Hilfe
ich habe einen Beitrag gefunden der mein Anliegen halb behandelt, leider eben nur halb.
Prüfen per Batch ob ein Verzeichnis leer ist
Dort geht um auch um die Prüfung ob ein Ordner leer ist aber eben nur darum. Ich möchte auch das etwas passiert wenn der Ordner leer ist, konkret soll sich die Abfrage solange wiederholen bis der Ordner leer ist und der PC dann heruntergefahren werden oder einfach eine beliebige bat ausgeführt werden.
Set "testdir=c:\MyDir"
soweit funktioniert das ganze, was muss ich noch ergänzen um die bat aufzurufen wenn echo = "@echo %testdir% ist leer" ist?
Vielen Dank für eure Hilfe
Please also mark the comments that contributed to the solution of the article
Content-ID: 7327655018
Url: https://administrator.de/contentid/7327655018
Printed on: October 11, 2024 at 14:10 o'clock
2 Comments
Latest comment
@echo off
Set "testdir=d:\temp\MyDir"
:start
if exist "%testdir%" dir /b "%testdir%">nul 2>nul || (
echo %testdir% ist leer fahre rechner runter
shutdown /s /f /t 0
) && (
timeout /t 2 >nul
goto start
)
Hi,
Am einfachsten löst du das Problem mit einem Scheduled-Task in Verbindung mit einem Powershell-Skript.
Wie man einen ScheduledTask anlegt mit erhöhten Rechten kannst du unter anderem hier nachlesen. Dazu den Taskplanner bereits als Administrator starten:
Aufgabenplanung Backup
Die Wiederholungen des Scripts kannst du im Trigger unter Erweiterte Einstellungen einstellen:
Das script ist ein ~2-Zeiler:
ersetze die Commandline wie im link mit folgendem:
vollständige Command Line:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -Executionpolicy Bypass -WindowStyle Hidden -file "Pfad zu deiner.ps1"
Grüße!
Am einfachsten löst du das Problem mit einem Scheduled-Task in Verbindung mit einem Powershell-Skript.
Wie man einen ScheduledTask anlegt mit erhöhten Rechten kannst du unter anderem hier nachlesen. Dazu den Taskplanner bereits als Administrator starten:
Aufgabenplanung Backup
Die Wiederholungen des Scripts kannst du im Trigger unter Erweiterte Einstellungen einstellen:
Das script ist ein ~2-Zeiler:
if( (Get-ChildItem "C:\mein Test-Pfad" | Measure-Object).count -lt 1)
{
start-process -FilePath "cmd.exe" -ArgumentList "/c Shutdown /s /t 15 /f"
}
ersetze die Commandline wie im link mit folgendem:
vollständige Command Line:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -Executionpolicy Bypass -WindowStyle Hidden -file "Pfad zu deiner.ps1"
Grüße!