Ich bin jetzt neu mit Skripten, aber ich finde es wirklich schwierig, den Befehl "für" zu verstehen (besonders mit diesen Token und Trennzeichen usw.). Wenn ich es so sage, denke ich, dass das Kommando dazu verwendet werden kann, was ich tue. Wenn es nicht einfacher ist und es einen einfacheren Weg gibt, ignoriere meine Ignoranz :(
Angenommen, ich habe mehrere Zeilen in einer Textdatei abc.txt, wobei jede Zeile mit "(Anführungszeichen) beginnt und endet. Z.B. eine Datei mit 3 Zeilen
"hey what is going on @mike220. I am working on your car. Its engine is in very bad condition"
"Because if you knew, you'd get shredded and do it with certainty"
"@honey220 Do you know someone who has busted their ass on a diet only for results to come to a screeching halt after a few weeks"
Wie kann ich jede Zeile innerhalb der Anführungszeichen auf eine feste Länge zuschneiden, z. B. 30, 50 oder 100 Zeichen (einschließlich Leerzeichen) Ich möchte die Anzahl der Zeichen im Stapel eingeben und es kann entsprechend beschneiden und eine Datei def.txt mit abgeschnittenen Zeilen in Anführungszeichen erstellen.
Angenommen, ich gebe 50 ein, sollten die Ergebnisse des obigen Beispiels sein
"hey what is going on @mike220. I am working on you"
"Because if you knew, you'd get shredded and do it"
"@honey220 Do you know someone who has busted their"
Vielen Dank
P.S. Wenn Sie den Befehl "Befehl" verwenden, erläutern Sie den Befehl bitte.
BEARBEITEN: Obwohl die Antwort funktioniert hat, gibt es ein Problem mit nicht-englischen Texten. Ich bekomme verstümmelten Text in Ausgabedatei für nicht englischen Text in Eingabedatei. Jede Hilfe @barlop Hier ist der nicht englische Text (1 Zeile)
"फाइल है इसको ना पढ़े आपको कोई मतलांब नही"
for /f %f in (a.txt) do @(set a=%f & echo !a:~0,3!)
obwohl noch nicht da .. aber es gibt die ersten 3 Zeichen von jeder Zeile. Diese Variante trimmt einige Zeichen ab for /f %f in (a.txt) do @(set a=%f & echo !a:~1,-2!)
for
Aber fragen Sie dann nach einem Befehl, um Zeichen zu trimmen. Zeigen Sie uns vielleicht, was Sie bisher haben und wo Sie feststecken.