Top-Themen

Aktuelle Themen (A bis Z)

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 Fehler in Batch - Datei: Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird bzw. ein Prozess hat versucht zu einer nicht bestehenden Pipe zu schreiben

Mitglied: CrazyCat-1

CrazyCat-1 (Level 1) - Jetzt verbinden

25.07.2006, aktualisiert 26.07.2006, 31901 Aufrufe, 7 Kommentare

Fehler in for - Schleife einer Batch - Datei

Kann ich irgendwie herausfinden, ob wirklich ein Prozess gerade diese Datei benutzt und welche Datei überhaupt betroffen ist?

Wie sieht es mit der Pipe aus, woran kann dabei der Fehler liegen?


Ist es möglich die Datei trotz dieses Fehlers zu beabeiten oder den Fehler irgendwie abzufangen?


Hier ist die Schleife die diesen Fehler hervorruft:


(@for /f "delims=_. tokens=1-3" %%i in ('dir /b /s /o:d R:\Werte\*_*.dfd') do (@type %%~dpnxi.%%k|find /v /i "K1205" > %%~dpnxi.tmp ))


Das interessante daran ist, das die Batch - Datei bereits einwandfrei funktioniert hat, nur in letzter Zeit tritt dieser Fehler relativ häufig auf.


€dit: Bei der ersten Datei funktioniert die Schleife noch einwandfrei, ab der zweiten Datei werden sehr viele Leerzeilen eingefügt und ab der 4. Datei läuft die Batch - Datei nicht mehr.
Kann der Fehler durch die Bearbeitung zu vieler Dateien auftreten?
Wenn ja, wie kann ich die Schleife trotzdem nutzen, ohne das diese Fehler auftreten?
Mitglied: Metzger-MCP
25.07.2006 um 11:22 Uhr
Ich würde dir Vorschlagen deine Bat Datei so um zu bauen, das du Kontrollpunkte einbaust und leserlicher machst.
Dann kann man die Fehler besser finden und lokalisieren.

z.b. anstatt den Dir Befehl in der Forschleife aufzurufen, den Dir Befehl vorher laufen lassen und anschliessend über eine
Datei in die Forschleife einbauen.

z.b.

Dir /b *.* > c:\dir.txt

For /f "delims= tokens=1,2,3* " %%i in (c:\dir.txt) do ...

muss gerade wech melde mich später

Mfg Metzger
Bitte warten ..
Mitglied: CrazyCat-1
25.07.2006 um 12:32 Uhr
Danke, der Trick ist gut.

Offenbar liegt das Problem gar nicht an der Pipe, sondern an einem Unterverzeichnis, das nicht verarbeitet werden kann.
(anstelle des Unterornders erhalte ich eine ASCII - Zeichenfolge in der dir.txt, schon klar das die Batchdatei dann nicht darauf
zugreifen kann)

Dafür habe ich jetzt eine Datei, welche den Namen der Zeichenkette trägt und sich nicht mehr löschen läßt.

Das wird wohl etwas dauern bis ich diesen Ordner aufgeräumt habe.


Das sind eben Windows - Fehlermeldungen, Hauptsache irgendein Mist wird ausgegeben, ob es die richtige Meldung ist
interessiert die M$ - Jungs offenbar überhaupt nicht.
Man sucht und sucht und sucht, aber an der falschen Stelle.
Bitte warten ..
Mitglied: Biber
25.07.2006 um 17:52 Uhr
Mmhh, ja,
interessiert die M$ - Jungs offenbar überhaupt nicht.
...braucht Dich aber auch nicht zu interessieren.
Du kannst die (eventuellen) Fehlermeldungen vom DIR-Befehl abfangen mit "^2^>nul".

Also in der ursprünglichen FOR-Konstruktion:
01.
(@for /f "delims=_. tokens=1-3" %%i in ('dir /b /s /o:d R:\Werte\*_*.dfd ^2^>nul') do ...
Dann bleibt dir die Verarbeitung von "Datei nicht gefunden" oder "Auf Verzeichnis konnte nicht zugegriffen werden" erspart.

Gruß
Biber
Bitte warten ..
Mitglied: CrazyCat-1
26.07.2006 um 08:43 Uhr
Danke für den Tip.

Wäre schon schön, wenn die Fehlermeldungen richtig wären. Zu was sind sie sonst gut?

Zur Unterhaltung der M$ - User oder als Beschäftigungstherapie?
Bitte warten ..
Mitglied: Metzger-MCP
26.07.2006 um 09:07 Uhr
Fehlermeldungen sind dafür da zu wissen das was falsch ist !
nicht um zu wissen was falsch ist.

Bei C++ ist das ähnlich und Windows ist in C programmiert ...
Obwohl Batch programmierung schon so alt ist.

Der Beitrag kann gefahrlos überlesesn werden

MFG Metzger
Bitte warten ..
Mitglied: Biber
26.07.2006 um 09:11 Uhr
...wenn die Fehlermeldungen richtig wären. Zu was sind sie sonst gut?

Jein...
Da musst Du (zumindest bei Batches oder sonstigen automatisierten Programmabläufen) unterscheiden zwischen "wirklichen" Fehlern und "erwarteten" Fehlern, die Du auch ignorieren kannst.

Beispiel:
Wenn ich in irgendeinem Batchablauf eine Verzeichnisstruktur durch wackele, um alle Dateien *.txt zu kopieren, wenn sie denn älter sind als xx Tage...
...dann wäre für den DIR-Befehl natürlich ein Fehler, wenn bei "DIR x:\Bla\Blubb\*.txt" keine Datei gefunden wird.
Es käme dann die (Fehler-)Meldung: "Datei nicht gefunden".
Für mich wäre es von der Programmlogik kein Fehler.. wenn es keine *.txt-Datei gibt, brauch ich nichts weiter zu tun.

Einen derartigen Fehler leite ich natürlich (wenn ich rechtzeitig daran denke) mit diesem o.g. "2>nul" um.
Tue ich das nicht, kommt es -wie Du ja oben gezeigt hast - wenige Verarbeitungsschritte danach zu Folgefehlern, die dann unter Umständen gar nicht aussagekräftig sind.

Gruß Biber
Bitte warten ..
Mitglied: CrazyCat-1
26.07.2006 um 09:51 Uhr
Zu den erwarteten Fehlern gehört der Verzeichnisfehler nicht gerade, aber ich leite die Fehlermeldung
jetzt trotzdem um, damit das System wenigsten weiterläuft wenn ein Problem besteht.

Die Batchprogrammierung ist zwar alt, aber noch immer die beste Lösung für die Dateiverarbeitung und
Automatisierung von Vorgängen unter Windows.

Natürlich kann auch einiges über VBS gelöst werden, aber dann steht meist erheblich mehr Aufwand dahinter.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Paramter aus Batch-Datei in Text-Datei schreiben, sobald diese nicht mehr verwendet wird

gelöst Frage von Schorsch112Batch & Shell5 Kommentare

Hallo zusammen, ich habe ein kleines Problem und da ich mich leider erst seit sehr kurzem mit dem Scripting ...

Windows 10

Registry Datei importieren schlägt fehl

Frage von malawiWindows 102 Kommentare

Liebe Experten, ich habe nach einer frischen Win10 Pro (64bit) Installation ein Backup meiner Registry-Datenbank gemacht. Dann habe ich ...

Batch & Shell

BATCH ini Datei Datei auslesen

gelöst Frage von Juergen42Batch & Shell2 Kommentare

Hallo zusammen, ich möchte eine ini Datei auslesen mit folgenden Aufbau INHALT DER INI ID=30 NAME="test1" PFAD="K:\Kontoauszug\Test1\*.pdf" PFAD_S="K:\Kontoauszug\Test1\Sicherung\" ID=28 ...

Batch & Shell

Batch Datei Ordnerüberwachung

Frage von Phant0xBatch & Shell1 Kommentar

Hallo zusammen, könntet ihr mir helfen eine Batch Datei zu schreiben, die einen bestimmten Ordner kontrolliert, ob sich Dateien ...

Neue Wissensbeiträge
Router & Routing

Zyxel VMG 1312 B30A - Firmwareupdate nur im "privaten" Firefox Modus möglich

Tipp von the-buccaneer vor 13 StundenRouter & Routing2 Kommentare

Hatte hier ein Zyxel 1312 das ums verrecken kein Firmwareupdate durchführen wollte. Datei ist auswählbar, dann kommt der Fortschrittskreisel ...

Windows 7

Windows 7 u. Server 2008 (R2) SHA-2-Update kommt am 12. März 2019

Information von kgborn vor 2 TagenWindows 75 Kommentare

Kleine Info für die Admins der oben genannten Maschinen. Ab Juli 2019 werden Updates von Microsoft nur noch mit ...

Firewall
PfSense 2.5.0 benötigt doch kein AES-NI
Information von ChriBo vor 3 TagenFirewall2 Kommentare

Hallo, Wie sich einige hier erinnern werden hat Jim Thompson in diesem Aritkel beschrieben, daß ab Version 2.5.0 ein ...

Internet
Copyright-Reform: Upload-Filter
Information von Frank vor 5 TagenInternet4 Kommentare

Hallo, viele Menschen reden aktuell von Upload-Filtern. Sie reden darüber, als wären es eine Selbstverständlichkeit, das Upload-Filter den Seitenbetreibern ...

Heiß diskutierte Inhalte
Hardware
IT-Werkzeugkoffer bis 50,- EUR
gelöst Frage von departure69Hardware48 Kommentare

Hallo. Ich bin als IT-Systembetreuer einer Gemeinde zusätzlich auch der IT-Systembetreuer einer Grund- und Hauptschule. Dort muß ich jedoch ...

Netzwerke
Verteilung von Programmdaten außerhalb des internen Netzwerkes
Frage von mertaufmbergNetzwerke27 Kommentare

Guten Morgen liebe Administratoren, ich versuche zurzeit eine möglichst sichere und einfache Lösung zu suchen, um ein Programmverzeichnis über ...

Netzwerkmanagement
Richtfunknetzwerk mit vielen Hops stabiler gestalten
Frage von turti83Netzwerkmanagement22 Kommentare

Hallo, in meinem Dorf habe ich vor ca. einem Jahr ein Backbone aufgebaut um die Nachbarschaft mit Internet zu ...

Hyper-V
Intel MSC Raid 5 Rebuild
Frage von DannysHyper-V19 Kommentare

Hallo Community, Ich habe einen Modul Server von Intel in Betrieb. Dort ist eine Festplatte aus dem Raid 5 ...