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

Schleife ohne mehrmaliges Öffnen der Datei in welche Umgeleiteitet wird

Tipp Entwicklung Batch & Shell

Mitglied: pieh-ejdsch

pieh-ejdsch (Level 2) - Jetzt verbinden

18.08.2010, aktualisiert 20:16 Uhr, 6747 Aufrufe, 2 Danke

Schleifen öffnen oft unnütz eine Datei in welche eine Umleitung erfolgt - viele male hintereinander warum eigentlich?

Hi,

ich habe mir doch mal ein paar Gedanken zu einer Schleife gemacht, welche immerfort eine AusgabeUmleitung in eine Datei vollzieht und dabei aber auch diese Datei stets, solange etwas neues einzutragen ist, ... läuft es so ab:
  • die Datei wird geöffnet
  • die Zeile wird eingetragen
  • die Datei wird wieder geschlossen

das sind ja auch immens viele Schreibzugriffe, wenn man bedenkt das eine abzuarbeitende Datei in der Forschleife schon fast ähnlich funktioniert
  • die Datei wird geöffnet
  • die Zeile wird ausgelesen
  • die Datei wird wieder geschlossen

nun kann man zumindest die Schreibzugriffe in die Umzuleitende Datei veringern

Dir /b /s > Verzeichnisdatei.txt
soeine Zeile kennt sicherlich jeder - die Ausgabe vom DIR wird in die "Verzeichnisdatei.txt" eingetragen und zwar in einem Rutsch

dennoch schreiben wir solche For-Schleifen als Beispiel jede zweite Zeile einer Datei in eine neue
for /f "delims=" %i in (BeispielDatei.txt) do if defined X (@echo %i>>neueDatei.txt&set "X=") else set "X=1"
durch das stetige öffnen;reinschreiben sowie schliessen der "neueDatei.txt" dauert die Abarbeitung der Schleife schon lang

um nun das mehrmalige öffnen zu verhindern wird die Zeile folgendermassen geschrieben
(for /f "delims=" %i in (BeispielDatei.txt) do if defined X (@echo %i&set "X=") else set "X=1")>neueDatei.txt
die For-Schleife wird abgearbeitet und das Ergebnis kommt in die Umzuleitende Datei - und das in einem Rutsch

das ganze funktioniert natürlich auch mit Umleitung jeden Errors innerhalb der Forschleife

Der Vorteil liegt auf der Hand bei viel in die Umzuleitetende Datei hereinzuschreibenden spart es sehr viel Zeit

das ganze lässt sich auch innerhalb einer beliebigen Klammer im Batch vollziehen
01.
(echo 1 
02.
echo 2 
03.
echo 3 
04.
)>Output.txt

Gruß Phil
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Batch & Shell
gelöst Verlinkung erstellen Batch Datei mit for Schleife (2)

Frage von rusdav zum Thema Batch & Shell ...

Visual Studio
Datei aus dem Web mit VisualBasic 6 öffnen (9)

Frage von SarekHL zum Thema Visual Studio ...

Batch & Shell
gelöst For Schleife für Abgleich mit Text-Datei und Unterverzeichnisse (4)

Frage von grisur zum Thema Batch & Shell ...

IDE & Editoren
USB STICK Datei AUTOMATISCH beim anschliessen auf fremden PC öffnen (9)

Frage von Jwanner83 zum Thema IDE & Editoren ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (24)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Netzwerke
Abisolierwerkzeug (11)

Frage von SarekHL zum Thema Netzwerke ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (11)

Frage von Akcent zum Thema Hyper-V ...

Windows Server
Server 2016 - Kuriositäten (8)

Frage von certifiedit.net zum Thema Windows Server ...