
Wie fügt man an jeder Endzeile eine erhöhte Zahl hinzu?
study
fly
run
swim
learning
todo
no
werden
study20978
fly20979
run20980
swim20981
learning20982
todo20983
no20984
Antwort1
Ich bin Notepad++-Benutzer, würde aber die kostenloseAWKWerkzeug dafür, weil es schlank und effektiv ist.
AWKLösung (nurawk.exe herunterladenund führen Sie die folgende Befehlszeile aus)
awk "BEGIN { c = 20978 } { print $0 c++ }" input.txt > output.txt
Ergebnis:
study20978
fly20979
run20980
swim20981
learning20982
todo20983
no20984
Wird heruntergeladen:
Sie müssen das Tool nicht einmal installieren, sondern nur herunterladen und entpackenbinaries.zipund EXE befindet sich in gawk-3.1.6-1-bin.zip\bin\awk.exe
.
Was die Anweisungen bewirken:
BEGIN { c = 20978 }
wir haben initialisiertc
auf20978
.BEGIN
Abschnitt wird nur einmal ausgeführt.- Abschnitt
{ print $0 c++ }
wird einmal für jede Zeile ausgeführt: Wir drucken diese Zeile (sie ist in gespeichert$0
) und den Wert unseres Zählersc
(den wir sofort erhöhen:c++
)
Wiederverwendbarkeit gewährleisten:
Wenn Sie den Quellcode für die zukünftige Verwendung behalten möchten, speichern Sie ihn in einer Datei numbering.awk
mit einer ansprechenderen Formatierung:
BEGIN { c = 20978 }
{ print $0 c++ }
Und verwenden Sie eine geänderte Befehlszeile, die auf diese Quelldatei verweist:
awk -f numbering.awk input.txt > output.txt
Sie können diesen Befehl in numbering.bat
einer Datei speichern, sodass Sie ihn sich nicht merken müssen.
Zusätzliche Erklärung:
Zu Ihrer Information, eine weniger kryptische Form der Quelle würde lauten:
# this section runs once at the beginning
BEGIN { c = 20978 } # initialization of the counter "c"
# this section runs once for each line
{ print $0 c; # print original line followed by value of counter "c"
c = c + 1; # assign value of calculation "c + 1" into "c"
}
Antwort2
Fügen Sie beim letzten Mal einige Leerzeichen hinzu, damit die Zeile länger wird.
Halten Sie Alt+Umschalt gedrückt und drücken Sie dann die Aufwärtspfeile, um einen Bereich bis zum oberen Rand des Textes auszuwählen.
Halten Sie Alt+Umschalt gedrückt und drücken Sie dann die Pfeiltasten nach rechts, um den Bereich so anzupassen, dass sich die Cursor am Ende der Zeilen befinden.
Drücken Sie Alt+C, um den Spalteneditor aufzurufen und Sequenznummern hinzuzufügen.
Drücken Sie Strg+H, um den regulären Ausdruck zu ersetzen
\ +([0-9]+)$
durch$1
Erledigt!