{title}

Ich habe gesucht, aber nicht gefunden, was ich brauche. Ich habe eine Batch-Datei zum Löschen aller temporären Verzeichnisse und zum Anzeigen der gelöschten Dateien im Notizblock. Ich muss die Textdatei mit einem Zeitstempel versehen und als.txt- oder LOG-Datei speichern und dann den Notizblock schließen, ohne den Notizblock manuell schließen zu müssen. Die Batch-Datei: @echo offecho.echo Temp-Verzeichnis löschendel/f/s/q "% temp%" 1> c: DelTemp.txt 2> & 1notepad c: DelTemp.txt TYP c: DelTemp.txt Wie kann ich Datum und Uhrzeit in der Textdatei speichern und den Notizblock schließen?

REM Ersetzen Sie diese Zeile: REM-Editor c: DelTemp.txt REM Mit diesem Befehl: date/T >> DelTemp.txtREM sollte dies geschehen

Ah nicht genau. Ich brauche den Zeitstempel nicht wirklich, da er nur im cmd-Fenster und nicht in der Textdatei angezeigt wird. Die Textdatei dient lediglich dazu, einem Client die Art der Dinge anzuzeigen, die übrig bleiben. Nachdem die Batchdatei das Notizbuch geöffnet und die gelöschten Dinge gespeichert hat, benötige ich eine Kopie der gelöschten Dateien, die ich als DelTemp.txt und dann bekomme Ich brauche die Batch-Datei, um das Notizbuch zu schließen und zu beenden. Außerdem möchte ich, dass es an DelTemp.txt angehängt wird, anstatt es zu überschreiben.

Ok, hier ist die Batch-Datei: @echo offecho.echo. Bereinigen des Temp-Verzeichnissesdel/f/s/q "% temp%" 1> c: DelTemp.txt 2> & 1date/T >> c: DelTemp.txttime/T 1: 36p >> c: DelTemp.txt Geben Sie c: DelTemp.txt >> c: DelTemp.txtREM-Editor c: DelTemp.txtPAUSE ein. Dies ist das Ergebnis: C: Users DONVAU ~ 1 AppData Local Temp FXSAPIDebugLogFile.txtDer Prozess kann nicht auf die Datei zugreifen Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird. Tue 09/16/2008 18:29 PMDas ist fast das, was ich brauche. Wenn ich die Batch-Datei mehrmals starte, wird nur das Obige erzeugt, anstatt es anzuhängen. Ich habe versucht, herauszufinden, was falsch ist, bin aber erfolglos. Weiß jemand, was ich tun muss, um das Problem zu beheben?

Ich bin nicht zufrieden

Gut stark!

? Das ist nicht dein Thema?

Es ist bewundernswert, diesen temporären Ordner zu bereinigen, aber in Windows XP gibt es ein Dutzend oder mehr ähnliche Ordner, die wirklich bereinigt werden müssen. Viele Junk-Ordner werden für jeden BENUTZER wiederholt. Ich habe meine eigene Bereinigungs-Batchdatei mit Deltree geschrieben. exe anstelle des Befehls Delete und ich führe es auf jedem PC aus, an dem ich arbeite. Mein schlimmeres Szenario ist der PC eines Anwalts, auf dem sich 105.106.000 Mülldateien befanden. Mein Programm cleanup.bat lief über eine halbe Stunde. Ich würde es hassen, die Textdatei darüber zu lesen! Erweitern Sie diese Bereinigungs-Batch-Datei, um alle Ecken und Löcher einzuschließen, in denen XP seinen Müll speichert, und Ihre Textdatei wird viel zu groß sein, als dass jemand sie lesen möchte. Sie sieht möglicherweise aus wie das Chicagoer Telefonbuch. Nur ein Gedanke! The Shadow PS: Dies ist nur ein kleiner Ausschnitt aus meinem eigenen Programm "XPCleanup.bat". @ Echo offclsdeltree/y C: temp .deltree /y"%systemroot% emp."deltree/y "% systemroot% WUTemp . "deltree /y"%systemroot%system32configsystemprofilecookies."deltree/y"% systemroot% SYSTEM32 config systemprofile Lokale Einstellungen Temporäre Internetdateien Content.IE5 . "deltree/y "% systemroot% Prefetch ." deltree/y "C: Dokumente und Einstellungen Standardbenutzer Lokale Einstellungen Temporäre Internetdateien Content.IE5 ." deltree/y "C: Dokumente und Einstellungen Standardbenutzer Lokale Einstellungen Verlauf Verlauf.IE5 . "Die Batch-Installationsdatei, mit der dieses Bereinigungsprogramm auf einem Kunden-PC installiert wird, installiert auch den Befehl 'Deltree' im Ordner C: Windows System32. Leider handelt es sich um einen DOS-Befehl wurde fallen gelassen von Windows XP.

Hi, ich habe DOS von vor Windows DOS 3.32 bis Windows XP erlebt. Ich kann mich irren, wenn ich dies auf Vista anwende - von dem ich nur weiß, dass ich es von mir fern halte !!! Alle 4 Zeilen oben scheinen mir falsch/unnötig/unangemessen zu sein: -del/f/s/q "% temp%" 1> c: DelTemp.txt 2> & 1a) Was wird von "2> & 1" gemacht - Ich habe es noch nie in meinem Leben gesehen - Ist es eine Vista-Sache? B) Das Herzstück des Problems ist der Ausdruck "1> c: DelTemp.txt". Ich verstehe nicht, was die "1" tun soll. Aber wenn Vista nicht alle Regeln umgeschrieben hat (was selbstverständlich erscheint), bedeutete "> c: DelTemp.txt" immer, dass die Datei "c: DelTemp.txt" gelöscht wird, falls sie bereits vorhanden ist, und anschließend eine (neue) Datei "c: DelTemp" erstellt wird. txt und platzieren Sie die Ausgabe in dieser Datei. Wenn Sie >> anstelle von> date/T >> c: DelTemp.txttime/T 1: 36p >> c: DelTemp verwenden, sollten Sie (sofern Vista dies zulässt) mehr Glück beim Anhängen haben. txta) Ist "1: 36p" ein anderes Vista-Ding? b) Ersetzen Sie diese beiden Zeilen durch ECHO% DATE%% TIME% >> c: DelTemp.txttype c: DelTemp.txt >> c: DelTemp.txt? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? Ich würde HOFFNEN, dass einfach liest, was gerade erstellt wurde, und es an das Ende der Datei anfügt, so dass Sie eine doppelt so große Datei haben, die sich wiederholt hat, falls Sie nicht das erste Mal zugehört haben !!! Ich befürchte tatsächlich, dass dieser Datenvervielfältigungsprozess mit dem Schreibvorgang beginnen könnte, bevor "Open Access for READ" beendet wurde, insbesondere, wenn Sie an eine bereits große Datei angehängt haben und möglicherweise eine Form der Zwischenspeicherung von Datenträgern vorliegt In diesem Fall wird es nie bis zum Ende lesen, aber es wird weiter versuchen, bis seine Ausgabe den gesamten freien Speicherplatz gefüllt hat, mit dem Sie begonnen haben - und dann sollte es abgebrochen werden -, aber ein Überschreiben von Windows-Dateien ist immer möglich !!! Ich denke, die Gefahr ist minimal, aber die möglichen Konsequenzen sind so schrecklich, dass ich nicht davon träumen würde, es selbst zu versuchen. RegardsAlan

Alan, obwohl die in der NT-Familie verwendete Befehlssprache (ich denke an NT4, Windows 2000, XP und Vista) der in DOS verwendeten oberflächlich ähnlich ist, ist sie in einigen Bereichen sehr unterschiedlich. es ist in der Tat eine Obermenge dieser Sprache. Während die Erfahrung mit DOS einen fliegenden Start ermöglichen kann, könnte man sagen, dass ein übermäßiges Vertrauen in diese Erfahrung eine Falle für die Unachtsamen sein kann. NT Batch ist kein DOS, trotz dessen, was dieser Abschnitt von Computerhope noch heißt! In vielerlei Hinsicht hat die NT-Befehlssprache die Teile von DOS verbessert, die veraltet sind oder die in den Urzeiten des 16-Bit-Computing geschrieben wurden In diesen Bereichen wird die Konsolenausgabe umgeleitet. In MS-DOS hatten Programme ein mögliches Eingabegerät mit der Bezeichnung STDIN, normalerweise die Tastatur, und zwei mögliche Ausgabegeräte, das Standardausgabegerät mit der Bezeichnung STDOUT und das Standardfehlergerät mit der Bezeichnung STDERR. Unter normalen Umständen, dh wenn keine Umleitung stattfand, handelte es sich bei beiden um die Konsole (den Bildschirm). Wenn ein Programm oder ein Befehl normal ausgeführt wird, wird die Ausgabe an STDOUT gesendet, und wenn ein Fehler auftritt (z. B. "Datei nicht") gefunden "), würde es nach STDERR gehen. Normalerweise war man sich der Unterscheidung nicht bewusst, da beide Ausgaben auf dem Bildschirm eintrafen. Sie konnten STDOUT mit dem Symbol> umleiten, aber um STDERR umzuleiten, war ein spezielles Programm erforderlich. Es ist dasselbe in der NT-Familie, außer seit NT 3.51 ist STDERR verfügbar Möglicherweise haben Sie bemerkt, dass bei einer Batch-Datei, mit der (sagen wir) Dateien gelöscht werden, und bei der die Ausgabe in eine Protokolldatei umgeleitet wird, gelegentlich auf dem Bildschirm weiterhin Meldungen angezeigt werden, wenn dies nicht der Fall ist gefunden oder in Verwendung usw. Wenn Sie die Konsolenausgabe mit dem Symbol ">" umleiten, leiten Sie nur STDOUT um. Um STDERR umzuleiten, müssen Sie "2>" für das Umleitungssymbol angeben. Dies wählt den zweiten Ausgangsstrom aus, der STDERR ist. Code: EXAMPLEThe Befehl "dir file.xxx" (wo file.xxx nicht vorhanden ist) zeigt die folgende Ausgabe an: Volume in Laufwerk F ist Candy Cane Volume-Seriennummer ist 34EC-0876File Not FoundWenn Sie die Ausgabe mit an das NUL-Gerät umleiten "dir file.xxx> nul" (oder in eine Datei) wird weiterhin die Fehlermeldung angezeigt: Datei nicht gefunden Verwenden Sie den folgenden Befehl, um die Fehlermeldung in NUL (oder in eine Datei) umzuleiten: dir file.xxx 2> nulOr können Sie die Ausgabe an eine Stelle und die Fehler an eine andere umleiten. dir file.xxx> output.msg 2> output.errSie können die Fehler und die Standardausgabe in eine einzelne Datei drucken, indem Sie den Befehl "& 1" verwenden, um die Ausgabe für STDERR an STDOUT umzuleiten, und dann die Ausgabe von STDOUT an eine Datei senden: dir file.xxx 1> output.msg 2> & 1Lassen Sie mich schnell sagen, dass ich das obige Beispiel von der exzellenten Microsoft-Seite, die die NT-Umleitung erklärt, hier abgelegt habe, damit Sie anfangen zu glauben, dass ich die Quelle allen Wissens bin: //support.microsoft.com/kb/q110930/

Vielen Dank, Dias, für diese Erklärung. Als XP zum ersten Mal herauskam, erklärte unser technischer Direktor, dass sein "Nachahmungs-DOS" ein schwaches, schwaches und unangemessenes Ersatzprodukt für das "echte DOS" war, an das wir gewöhnt waren, mit der Begründung, dass die "C Compiler"/Linker/Debugger "konnten nicht mehr verwendet werden, so dass ich die letzten 2 Jahre vor meiner Pensionierung mit Windows 98 fortfuhr. Seitdem wurde dieser Eindruck mehrmals verstärkt, als meine alten Batch-Befehlsdateien unter XP fehlschlugen oder sich schlecht verhielten, obwohl sie waren mit 98 und 95 perfekt. (Ich habe nur 98 aufgegeben, weil meine alte Maschine nur über DFÜ-Internet verfügte und meine Tochter mir kostenlos einen Laptop mit Breitband zur Verfügung stellte. Für Breitband musste ich nur Real DOS aufgeben - eine schwierige Entscheidung Ich habe 2 Monate lang damit gerungen !!!) Ich war sehr positiv überrascht, als ich über diese Website stolperte und feststellte, dass XP DOS viel leistungsfähiger als altes DOS ist und fast alles, was ich bisher getan habe, immer noch möglich ist. (Eine Ausnahme ist " Auswahl "- die" SET/P varia ble = "Alternative scheint keine Option für ein Timeout zu enthalten, obwohl ich vermute, dass ein vb-Skript dies verbessern könnte.) Vielen Dank für Ihre Erklärung von 1> und 2>. Ich hatte nicht bemerkt, dass dies Teil des erweiterten DOS I war Ich lerne fieberhaft etwas darüber. Wie ist es mit der Sache, die mich wirklich erschreckt hat? "tippe c: DelTemp.txt >> c: DelTemp.txt" .Ist das eine sichere Sache für eine Datei auf einem internen Laufwerk? Ist es eine sichere Sache? Es tut mir leid, dass ich zynisch bin, aber wenn ein Computer schief gehen kann, wird es schief gehen - besonders unter Windows !!! Jeden zweiten Tag Windows 98 fror fest ein, als ich befahl, es herunterzufahren, ich musste den Netzstecker ziehen, als der Hausmeister vorbeikam und mir anbot, mich für die Nacht einzusperren Ich liebe Computer - aber ich vertraue ihnen nicht

Nun, jedes Mal, wenn es ausgeführt wurde, verdoppelte sich die Größe von DelTemp.txt. Wenn es sich also um eine Schleife handelte, stießen Sie möglicherweise auf Probleme. Wenn das Dateisystem FAT32 war, wurde ein Fehler ausgegeben, als die Datei versuchte über 4 GB an Größe zunehmen, sonst würde sich das Betriebssystem weigern, eine Datei zu erstellen, die größer als der verfügbare Speicherplatz ist, aber lange vorher würde sich auch die Zeit für die Erstellung jeder neuen Kopie verdoppeln und das System würde sofort langsamer werden. Aber es ist nicht in einer Schleife. Ich stimme zu, es ist eine dumme Sache. Ich denke nicht, dass es einen großen Unterschied macht, ob das Laufwerk extern oder intern ist oder ob verzögerte Schreibvorgänge aktiviert sind. Sobald die Dateigröße eine nennenswerte Anzahl von GB erreicht, wird das System blockiert.

HUH Was war die ursprüngliche Frage? Warum muss ich in jede Zeile einen Smiley setzen? Nein, das war es nicht. Es ging um einen Zeitstempel. Jemand hat die Zeitstempelsache durchgeführt. Warum wurde dies nicht behoben? Neugierige verfolgen diesen Beitrag und möchten wissen, ob der Zeitstempel richtig war oder nicht, unabhängig davon, was das Programm sonst noch tut. Bitte klären Sie, die Leute warten.

Dieser Beitrag ist etwas erschöpft. Diese "Neugierigen" sollten ihre Fragen besser in neuen Threads stellen. Und bitte seien Sie in Zukunft weniger beharrlich.

Ähnlich wie "Tee" in Batch/Msdos?

Hallo zusammen, derzeit muss ich einen Großteil meiner Protokollierungsausgaben duplizieren, um sie auch zu sehen, wenn sie manuell ausgeführt werden. Unter Unix würde ich so etwas tun.
Code:

echo Dies ist ein Echo | tee -a /some/output/file.txt
Gibt es etwas Ähnliches in einer Batch/MSDOS-Umgebung? Prost, Cameron

Nichts eingebaut, fürchte ich. Es gibt das Cmdlet Tee-Object in Windows Powershell, oder Sie können die GNU Core Utils herunterladen, die tee.exe enthalten. //gnuwin32.sourceforge.net/packages/coreutils.htm Mit einem Unix-Hintergrund könnten Sie sie nützlich finden. Ich habe verschiedene Tee-Programme für Windows gegoogelt und gefunden, die Sie herunterladen können, und ein VBS-Skript, das nützlich wäre, wenn Sie keine Addon-Software installieren können. www.google.de/search?source=ig&hl=de&rlz=&q=windows+tee&btnG=Google+Search&meta=&aq=f

Vielen Dank, Dias. Ich bin mir nicht sicher, wie viel Zeit ich nach Abschluss meines aktuellen Projekts auf der MSDOS-Seite verbringen werde. Ich werde diese Links jedoch überprüfen und als Lesezeichen speichern, falls meine MSDOS-Erfahrung erweitert wird. Cheers, Cameron

Vorsicht vor verwirrenden ms-dos und nt Eingabeaufforderung!

Beliebte Beiträge