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, 3110 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 ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(2)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
Ä in batch Datei (12)

Frage von BergEnte zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (15)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...