Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Beschleunigung des löschens mit Batch-Datei

Frage Entwicklung Batch & Shell

Mitglied: Pago159

Pago159 (Level 2) - Jetzt verbinden

16.05.2012, aktualisiert 16:06 Uhr, 3134 Aufrufe, 13 Kommentare

Hi, kann mir vll einer von euch sagen, wie ich diese Batch zu mehr schnelligkeit beim löschen bewegen kann?

@echo off  
:delete 
set Anhalt=n 
cls 
echo. 
echo.     
echo  *************************************************************************** 
echo  *                                                                         * 
echo  *      Batchdatei zum L”schen der Datei auf den Servern               * 
echo  *                                                                         * 
echo  *      Copy und Paste wird in dieser Version untersttzt                  * 
echo  *                                                                         * 
echo  *      Sonderzeichen (: - . Blank) werden erkannt und entfernt            * 
echo  *                                                                         * 
echo  *      ACHTUNG: Die Dateien werden sofort kommentarlos gel”scht!          * 
echo  *                                                                         * 
echo  *************************************************************************** 
echo.  
echo.  
set /p Var2="      Welche Datei soll gel”scht werden?"  
set Var2=%Var2::=% 
set Var2=%Var2: =% 
set Var2=%Var2:.=% 
set Var2=%Var2:-=% 
set Var=%Var2:~-8% 
Echo Bitte warten - Datei wird geloescht! 
echo J|del "\\Server1\Pfad\Datei" 
echo J|del "\\ Server2\Pfad\Datei" 
echo J|del "\\ Server3\Pfad\Datei" 
echo J|del "\\ Server4\Pfad\Datei" 
echo J|del "\\ Server5\Pfad\Datei" 
echo J|del "\\ Server6\Pfad\Datei" 
echo J|del "\\ Server7\Pfad\Datei" 
echo J|del "\\ Server8\Pfad\Datei" 
echo J|del "\\ Server9\Pfad\Datei" 
echo J|del "\\ Server10\Pfad\Datei" 
echo J|del "\\ Server11\Pfad\Datei" 
echo J|del "\\ Server12\Pfad\Datei" 
echo J|del "\\ Server13\Pfad\Datei" 
echo J|del "\\ Server14\Pfad\Datei" 
echo J|del "\\ Server15\Pfad\Datei" 
echo J|del "\\ Server16\Pfad\Datei" 
echo J|del "\\ Server17\Pfad\Datei" 
echo J|del "\\ Server18\Pfad\Datei" 
echo J|del "\\ Server19\Pfad\Datei" 
echo J|del "\\ Server20\Pfad\Datei" 
echo J|del "\\ Server21\Pfad\Datei" 
echo J|del "\\ Server22\Pfad\Datei" 
echo J|del "\\ Server23\Pfad\Datei" 
echo J|del "\\ Server24\Pfad\Datei" 
echo J|del "\\ Server25\Pfad\Datei" 
echo J|del "\\ Server26\Pfad\Datei" 
echo J|del "\\ Server27\Pfad\Datei" 
echo J|del "\\ Server28\Pfad\Datei" 
echo J|del "\\ Server29\Pfad\Datei" 
echo J|del "\\ Server30\Pfad\Datei" 
echo J|del "\\ Server31\Pfad\Datei" 
echo J|del "\\ Server32\Pfad\Datei" 
echo J|del "\\ Server33\Pfad\Datei" 
echo J|del "\\ Server34\Pfad\Datei" 
echo J|del "\\ Server35\Pfad\Datei" 
echo J|del "\\ Server36\Pfad\Datei" 
echo J|del "\\ Server37\Pfad\Datei" 
echo J|del "\\ Server38\Pfad\Datei" 
echo J|del "\\ Server39\Pfad\Datei" 
echo J|del "\\ Server40\Pfad\Datei" 
echo J|del "\\ Server41\Pfad\Datei" 
echo L”schung beendet. 
set /p Anhalt=Enter zum beenden; j um eine weitere Datei zu l”schen? 
if /I %Anhalt%==j goto :delete  
exit 
Danke schonmal an die Batch-Spezies.

Lg Grapper
Mitglied: bastla
16.05.2012 um 16:02 Uhr
Hallo Grapper!
Hi, kann mir vll einer von euch sagen, wie ich diese Batch zu mehr schnelligkeit beim löschen bewegen kann?
Indem Du nur einen Löschbefehl gibst?

Da ja vermutlich eher eine Datei namens %var% gelöscht werden soll, vielleicht ja so:
del /f /q "\\Server\Pfad\%var%"
Grüße
bastla
Bitte warten ..
Mitglied: Pago159
16.05.2012 um 16:08 Uhr
Hallo Bastla,

das wäre natürlich etwas zu einfach gewesen ;)

Es ist wirklich jedesmal nur eine Datei, welche immer im selben Pfad liegt, allerdings auf verschiedenen Servern.
Diese Batch zeigt auf wieviele Server zugegriffen werden muss um die Datei zu löschen.

Die zwei Attribute /F und /q werden bei mir nicht benötigt.
Lg Grapper
Bitte warten ..
Mitglied: bastla
16.05.2012 um 16:16 Uhr
Hallo Grapper!
Die zwei Attribute /F und /q werden bei mir nicht benötigt.
Dann aber "echo j|" noch weniger ...
Diese Batch zeigt auf wieviele Server zugegriffen werden muss um die Datei zu löschen.
Mit einer Schleife der Art
for %%i in (Server1 Server2 Server3 ... Server41) do del "\\%%i\Pfad\%var%"
dürfte das eigentlich auch nicht schneller gehen ...

Grüße
bastla

[Edit] Sollte eigentlich immer schon "\\%%i..." heißen [/Edit]
Bitte warten ..
Mitglied: Pago159
16.05.2012 um 16:39 Uhr
Hi Bastla,

das hört sich schonmal super an, kannst du mir mal eben noch sagen, wie ich die Datei Testen kann, ohne wirklich eine Datei zu löschen?

Sehe ich das in deinem ausschnitt richtig, dass ich keine \\ bei den Servern eintragen muss?

Lg GRapper
Bitte warten ..
Mitglied: Jochem
16.05.2012 um 16:44 Uhr
Moin grapper, moin bastla,

also ich bin der meinung, daß der Codeschnipsel

01.
for %%i in (Server1 Server2 Server3 ... Server41) do del "\\Server\Pfad\%var%"
so nicht funktionieren kann, weil m.M.n. auch in der del-Schleife die server1 bis server42 erscheinen müßten.

Wie wäre es denn, wenn &grapper Du die Servernamen in eine Datei schreibst und per f"or /f"-schleife diese Datei abarbeiten läßt, etwa so:

<coxde>
for /f %%i in (servers.txt) do echo \\%%i\pfad\datei
for /f %%i in (servers.txt) do del "\\%%i\pfad\datei"
pause
</code>

Gruß J chem

Edit: da war er schneller.
Bitte warten ..
Mitglied: Skyemugen
16.05.2012 um 16:45 Uhr
Aloha,

wie testet man ...

do echo del

klingt logisch oder?

greetz André

P.S: Sollte da nicht irgendwo die Laufvariable verarbeitet werden?

edit: ah bastla hat's eben editiert
Bitte warten ..
Mitglied: bastla
16.05.2012 um 16:46 Uhr
Hallo Grapper!
kannst du mir mal eben noch sagen, wie ich die Datei Testen kann, ohne wirklich eine Datei zu löschen?
Die Schleife kannst Du testen, indem Du vor "del" noch ein "echo" platzierst ...
Sehe ich das in deinem ausschnitt richtig, dass ich keine \\ bei den Servern eintragen muss?
Die werden einfach beim (inzwischen richtigen ) Zusammenbauen des Pfades eingesetzt ...

Grüße
bastla

[Edit] @skye & Jochem: Danke [/Edit]
Bitte warten ..
Mitglied: Pago159
16.05.2012 um 17:03 Uhr
Danke für eure Hilfe klappt super, vorallem wesentlich schneller ;)

Lg Grapper
Bitte warten ..
Mitglied: Pago159
18.05.2012 um 13:47 Uhr
Ich habe zwar schon Gelöst markiert,

allerdings musste ich feststellen, dass sich bei der Löschgeschwindigkeit leider nicht´s getan hat.

Gibt es evt. noch eine möglichkeit die Dateien gleichzeitig und nicht nacheinander zu löschen?

Würde mich auch auf neue wege einlassen.

Lg Grapper
Bitte warten ..
Mitglied: bastla
18.05.2012 um 14:15 Uhr
Hallo Grapper!
allerdings musste ich feststellen, dass sich bei der Löschgeschwindigkeit leider nicht´s getan hat.
... was auch nicht zu erwarten war ...

Du könntest mehrere Batches verwenden und aus dem Hauptbatch per "start" und mit Übergabe des Dateinamens als Parameter aufrufen ...

Grüße
bastla
Bitte warten ..
Mitglied: Pago159
18.05.2012 um 14:43 Uhr
Hallo Bastla,
also wenn ich das jetzt richtig verstanden habe dann quasi nach diesem Schema:

01.
 
02.
start /B del "\\ Server14\Pfad\Datei"  
03.
start /B del "\\ Server15\Pfad\Datei"  
04.
start /B del "\\ Server16\Pfad\Datei"  
05.
start /B del "\\ Server17\Pfad\Datei" 
06.
 
07.
</code 
08.
 
09.
oder doch eher: 
10.
 
11.
<code> 
12.
 
13.
start /I /MIN del "\\Server14\Pfad\Datei" 
14.
start /I /MIN del "\\Server15\Pfad\Datei" 
15.
start /I /MIN del "\\Server16\Pfad\Datei" 
16.
 
Lg Grapper
Bitte warten ..
Mitglied: bastla
18.05.2012 um 14:49 Uhr
Hallo Grapper!

Die Schalter für "start" nach Bedarf / Wunsch - aber übergeben werden sollte nur der Dateiname (die Pfade sind ja angeblich gleich, könnten aber natürlich auch mitgegeben werden), und im jeweiligen Batch werden dann zB 5 Server wie bisher behandelt, also
01.
start DelBatch1.cmd "%var%" 
02.
start DelBatch2.cmd "%var%" 
03.
...
"DelBatch1.cmd" würde dann etwa so aussehen:
01.
del "\\Server1\Pfad\%~1" 
02.
del "\\Server2\Pfad\%~1" 
03.
del "\\Server3\Pfad\%~1" 
04.
del "\\Server4\Pfad\%~1" 
05.
del "\\Server5\Pfad\%~1" 
06.
exit
und "DelBatch2.cmd" natürlich:
01.
del "\\Server6\Pfad\%~1" 
02.
del "\\Server7\Pfad\%~1" 
03.
del "\\Server8\Pfad\%~1" 
04.
del "\\Server9\Pfad\%~1" 
05.
del "\\Server10\Pfad\%~1" 
06.
exit
Grüße
bastla
Bitte warten ..
Mitglied: Pago159
18.05.2012 um 15:38 Uhr
Danke Bastla,

warst mal wieder eine super Hilfe.
Werde dann beim nächsten echten Löschvorgang mal testen, ob es sich gelohnt hat ;)

Lg GRapper
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Teile eines Dateinamens ändern mit Batch Datei (4)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Windows Netzwerk
gelöst Netzwerkpfad per Batch-Datei (6)

Frage von AveiroCR7 zum Thema Windows Netzwerk ...

Batch & Shell
gelöst Batch Datei: ECHO ist ausgeschaltet (OFF) (3)

Frage von twiceface zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(2)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (36)

Frage von Datsspeed zum Thema Exchange Server ...

Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Windows 10
Windows Store Apps ohne Windows Store installieren (10)

Frage von keefien zum Thema Windows 10 ...

Internet Domänen
Nameserver ein Geist? (9)

Frage von zelamedia zum Thema Internet Domänen ...