{title}

Hallo allerseits, ich brauche Ihre Unterstützung, da ich ein Neuling in Bezug auf Ms Dos batch bin. Mein Problem ist, dass ich einen Batch ausführen möchte, zwei Befehle. Der erste muss eine Datei komprimieren und der andere muss den Namen von ändern Die resultierende Datei, die ein Suffix hinzufügt. Das Problem ist, dass nur das erste funktioniert, das zweite nicht startet. Hier ist der Stapel, den ich geschrieben habe: Code: RAR a XXX_ -m1 -df -ep -agYYYYMMDD C: temp .txtfor/f "tokens = 1-2 delims =" % i in ('dir .rar/b') ren "% i.% j" "% i0330.% j" Wenn ich den zweiten Befehl in der MsDos-Eingabeaufforderung ausführe, funktioniert es. Danke im Voraus

Ein Prozentzeichen an der Eingabeaufforderung, zwei in einer Batchdatei. Ändern Sie also alle% i in %% i und alle% j in %% j

ARBEITEN. Vielen Dank. Können Sie mir erklären, warum ich alle% verdoppeln muss?

Dies hängt damit zusammen, wie der Befehlsinterpreter Variablen erweitert. Für die Verwendung eines Prozentzeichens (%) in einer Stapeldatei müssen zwei Prozentzeichen (%%) angegeben werden. Der Befehl zum Anzeigen von "5%" aus einer Stapeldatei lautet beispielsweise: ECHO 5 %% Ein einzelnes Prozentzeichen in einer Zeile wird in einer Stapeldatei als "nul" -Zeichen behandelt. Beispiel: ECHO% wird als ECHO verarbeitet. ECHO a% b wird als ECHO verarbeitet. Wenn ein Befehl zwei Prozentzeichen enthält, behandelt der Befehlsinterpreter alle Zeichen dazwischen als zu erweiternde Umgebungsvariable.Wenn der Befehl SET beispielsweise anzeigt, dass die aktuellen Umgebungsvariablen COMSPEC = C: COMMAND.COM PATH = C: DOS PROMPT = $ P $ GB = C sind, wird ECHO% PATH% als ECHO C: DOS ECHO verarbeitet a% b% wird als ECHO aC verarbeitet. ECHO a% bb% a wird als ECHO aa verarbeitet. Wenn zwischen den beiden Prozentzeichen keine Zeichen stehen, wird ein Prozentzeichen entfernt und das andere bleibt erhalten. Aus diesem Grund würde ein FOR-Befehl, der den Namen jeder Datei mit der Erweiterung.COM wiedergibt, FOR% V IN (.COM) DO ECHO% V lauten. Wenn jedoch derselbe Befehl in einer Batchdatei abgelegt wird, ist Folgendes erforderlich: FOR %% V IN (.COM) DO ECHO %% V

Perfekt, ich habe alles verstanden. Jetzt habe ich ein anderes Problem im Zusammenhang mit demselben Stapel. Ich muss den Befehl for für eine Datei starten, die sich nicht in demselben Verzeichnis befindet, in dem der Stapel ausgeführt wird. Ich habe versucht, den Stapel zu ändern von: Code: für/f "tokens = 1-2 delims =." %% i in ('dir .rar/b') ren "%% i. %% j" "%% i0330.% j" to: Code: for/f "tokens = 1-2 delims =." %% i in ('dir C: temp .rar/b') do ren "%% i. %% j" "%% i0330. %% j" Aber ich erhalte die Fehlermeldung "Das System kann die Datei nicht finden angegeben ". Diesmal wo ist das Problem? PS Sorry, wenn ich dummes Ding gefragt habe, aber ich bin ein Neuling.

Code: für/f "delims =" %% i in ('dir/b C: temp .rar') "%% ~ dpnxi" "%% ~ dpni0330 %% ~ xi"

Ich entschuldige mich, das obige wird nicht funktionieren, aber das sollte. Code: für %% i in ("C: temp .rar") ren "%% ~ dpnxi" "%% ~ ni0330 %% ~ xi" ErklärungFOR %% Variable IN (set) DO-Befehl. Wenn FOR ohne die Option/F verwendet wird und daher kein Token-/Delims-Block (set) aus einer oder mehreren Dateien besteht, können Platzhalterzeichen verwendet werden. Es gibt FOR-Variablenmodifikatoren. In diesem Fall verwenden wir ~ d, (Laufwerk) ~ p, (Pfad) ~ n (Name) ~ x (Erweiterung). Wenn (gesetzt) ​​also eine Datei oder Dateien ist, dann ist: %% ~ di der Laufwerksbuchstabe (mit) Ein Doppelpunkt) %% ~ pi ist der Pfad %% ~ ni ist der Dateiname %% ~ xi ist die Dateierweiterung (einschließlich des Punkts). Sie können kombiniert werden, sodass %% ~ dpnxi der vollständige Laufwerksbuchstabe, der Pfad und der Name ist und Erweiterung einer Datei. Sie müssen dies an REN weitergeben, wenn sich die betreffende Datei nicht im aktuellen Verzeichnis befindet. Typ FOR /? an der Eingabeaufforderung für den Befehl Hilfe.

Ein fortgeschrittener Nachteil! Es tut uns leid!

Hallo, und vielen Dank für das Lesen! Grundsätzlich hat mein Dell inspiron 6000 einen Virus bekommen, der die meisten Dinge, einschließlich der Treiber, ausgemerzt hat. Mein Freund hat es in den Weihnachtsferien für mich repariert, aber ich glaube, er hat eine gefälschte Kopie von Windows installiert, da es nicht mehr mit der Meldung funktioniert, dass Sie diese Kopie von Windows aktivieren müssen. Klicken Sie auf OK, um sie zu aktivieren. Dann würde ich auf OK klicken Meldet mich einfach ab, damit ich nicht weiter gehen kann. Mein Vater hat mir die richtige Windows XP-Heimdiskette für meinen Computer geschickt, also habe ich meinen Computer formatiert und Windows neu installiert, aber jetzt scheinen die Grafiken zu groß zu sein und ich kann nicht Holen Sie sich im Internet überhaupt Treiber herunterzuladen oder sogar meine Windows richtig zu aktivieren. Wenn ich mein Internetkabel einstecke, passiert nichts. Ich habe versucht, neue Verbindungen einzurichten und Einstellungen automatisch zu erkennen, aber es funktioniert nichts. Ich möchte es wirklich nicht zu einer Computerreparaturwerkstatt bringen müssen, aber ich bin am Ende meiner Leine! Jede Hilfe oder Beratung wäre wirklich sehr dankbar. Danke, Cherry

Nachdem Sie den Computer formatiert und Windows neu installiert haben, sollten Sie genügend Zeit haben, um den Computer erneut zu aktivieren. Wenn die Aktivierungsaufforderung weiterhin angezeigt wird, wurde der Computer wahrscheinlich nicht formatiert. Wenn Sie den Formatierungsvorgang nicht erneut ausführen möchten, können Sie Microsoft anrufen, um Windows unter der folgenden Nummer zu aktivieren: 1-888-571-2048 Treiber auf dem Computer ohne Internetzugang, die Sie möglicherweise auch nach der Aktivierung noch ausführen müssen. Mein Vorschlag wäre, die Treiber auf einen anderen Computer mit Internetzugang herunterzuladen und diese Dateien dann auf ein USB-Flash-Laufwerk oder ein anderes Medium zu kopieren und von diesem zu installieren .

Beliebte Beiträge