Ja, das ist hübsch und eigentlich auch die naheliegende Lösung. Man muss halt nur drauf kommen...Meillo hat geschrieben:06.05.2019 16:33:55So kann man zweite Leerzeichen im vi ersetzen:
Oder fuer groessere Zahlen, z.B. das vierte Leerzeichen (eine Zahl kleiner in die geschweiften Klammern schreiben):Code: Alles auswählen
s,\( [^ ]*\) ,\1_,
Code: Alles auswählen
s,\(\( [^ ]*\)\{3\}\) ,\1_,
Dateien umbenennen - erste Leerzeichen gegen Unterstrich tauschen
Re: Dateien umbenennen - erste Leerzeichen gegen Unterstrich tauschen
-
- Beiträge: 244
- Registriert: 05.01.2007 21:02:03
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Hamburg
Re: Dateien umbenennen - erste Leerzeichen gegen Unterstrich tauschen
Erstmal möchte ich mich bei allen hier recht herzlich bedanken!
Nach einer Nacht drüber schlafen, habe ich festgestellt das (wie so häufig) mein Gehirn für solche Strings/Ausdrücke nicht geschaffen ist. Bei sowas: :%s/\(\zsa.\{-}\)\{2}/b/ bin ich dann total überfordert. Problematisch finde ich auch die vielen unterschiedlichen Tools und (leicht) veränderten Schreibweisen. Das macht das Ganze nicht leichter.
Für mein Problem, habt ihr ja schon ein paar Lösung geschrieben. Die Lösung @halo44 hat den vorteil, das sie noch etwas länger in der Bash-History bleibt und man sie da dann wieder "hervorzaubern" kann.
Diese emv-Sache ist aber auch nicht schlecht, so im Zusammenspiel mit den unterschiedlichsten Editoren. Wobei ich mich frage was ihr alle so am vi/vim findet, vor allem nachdem ich ed ein bischen kennengelernt habe:-)
Gruß
Mounty
Nach einer Nacht drüber schlafen, habe ich festgestellt das (wie so häufig) mein Gehirn für solche Strings/Ausdrücke nicht geschaffen ist. Bei sowas: :%s/\(\zsa.\{-}\)\{2}/b/ bin ich dann total überfordert. Problematisch finde ich auch die vielen unterschiedlichen Tools und (leicht) veränderten Schreibweisen. Das macht das Ganze nicht leichter.
Für mein Problem, habt ihr ja schon ein paar Lösung geschrieben. Die Lösung @halo44 hat den vorteil, das sie noch etwas länger in der Bash-History bleibt und man sie da dann wieder "hervorzaubern" kann.
Diese emv-Sache ist aber auch nicht schlecht, so im Zusammenspiel mit den unterschiedlichsten Editoren. Wobei ich mich frage was ihr alle so am vi/vim findet, vor allem nachdem ich ed ein bischen kennengelernt habe:-)
Gruß
Mounty
>> potato - woody - sarge - etch - lenny - squeeze - wheezy - jessie - stretch - buster - bullseye - [bookworm] --> trixie
Re: Dateien umbenennen - erste Leerzeichen gegen Unterstrich tauschen
Das wundert mich ueberhaupt nicht. Das geht allen am Anfang so. Bei mir war's genauso. Aber das ist kein Problem von diesen Kommandos, sondern eine Frage von Vertrautheit und der Faehigkeit bei einer Sprache ihre Struktur, Signal und Noise, und Relevanz zu erkennen. Ein Schulanfaenger weiss auch noch nichts von der Relevanz von Satzzeichen oder Wortzwischenraeumen, wo sie fuer uns ganz klar strukturierend sind. Viele Menschen sehen keine Bedeutung wenn sie Programmcode erblicken, aber mit nur wenig Programmiererfahrung kann man schnell zumindest die groben Strukturen erfassen. So ist das auch bei so einem Ausdruck (und den meisten sed-Programmen): Fuer dich ist es nur Zeichensalat, ich dagegen erkenne eine Struktur und dadurch einen Sinn.Mounty hat geschrieben:07.05.2019 12:40:17Nach einer Nacht drüber schlafen, habe ich festgestellt das (wie so häufig) mein Gehirn für solche Strings/Ausdrücke nicht geschaffen ist. Bei sowas: :%s/\(\zsa.\{-}\)\{2}/b/ bin ich dann total überfordert.
Zu diesem Thema will ich gerne auf folgenden Text hinweisen, den ich vor ein paar Jahren mal fuer eine Gruppe von Bibliothekaren verfasst habe: http://marmaro.de/rem/texte/pattern-matching.txt
Wie war der Spruch von Donald Knuth nochmal: ``Unix is ten kinds of regular expressions living under one roof.'' (oder so aehnlich) Das ist sehr zutreffend, leider, aber halt der Geschichte geschuldet. (Man kann daraus zumindest eine Menge ueber die Herausforderungen von Kompatibilitaet lernen. Wie es ist wenn man es anders macht kann man beim Umstieg von Python 2 auf 3 beobachten.)Problematisch finde ich auch die vielen unterschiedlichen Tools und (leicht) veränderten Schreibweisen. Das macht das Ganze nicht leichter.
Dann hast du ihn noch nicht genug kennengelernt!Wobei ich mich frage was ihr alle so am vi/vim findet, vor allem nachdem ich ed ein bischen kennengelernt habe:-)
Kurz gesagt: Der vi ist ein Editor mit dem man ein Leben lang effizienter beim Editieren werden kann. Durch die Moeglichkeit, kleine Editieroperationen zu groesseren zu verbinden, und ueberhaupt durch sein grosses Set an Editiermoeglichkeiten (und seine Offenheit externe Tools einzubeziehen), bietet er eine riesige Menge an Moeglichkeiten, die man noch nach Jahren besser nutzen kann. Und darueber hinaus ist er einer von wenigen Editoren, die mehr Wert auf das Aendern von Text als auf das Schreiben von Text legen. (Ich will nur xp, ddp und ~ erwaehnen.)
... und ed ist fast so maechtig ... in nur rund 2.500 Zeilen C-Code! Ich finde das schlichtweg beeindruckend.
Use ed once in a while!