Teil aus einer Variablen Extrahieren

M

muemmi

Eroberer
Hi

Ich hab eine Variable mit diesen Inhalt

c:/qls/qls/kln/qsp/fax/log/1_111111.fax

davon brauche ich nu den rest und zwar 1_111111.fax

ich kriegs nicht hin!
 
Ist zwar sehr problemspezifisch, aber in Deinem Fall koenntest Du
Code:
tg@nachtigaller:~$ name="c:/qls/qls/kln/qsp/fax/log/1_111111.fax"
tg@nachtigaller:~$ basename $name
1_111111.fax
ausnutzen.
[edit]
Ausserdem geht noch
Code:
tg@nachtigaller:~$ name="c:/qls/qls/kln/qsp/fax/log/1_111111.fax"
tg@nachtigaller:~$ echo ${name##*/}
1_111111.fax
Ist vielleicht ein bisschen besser.
[/edit]
 
Zuletzt bearbeitet:
wenn es sich um einen pfad handelt:

Code:
basename "$variable"
 
Danke!

Beides klappt!

mich würde wohl die erkläung zum zweiten befehl interssieren
 
huhu,

such mal in der Manpage von Bash Online Version
nach Parameter Expansion bzw. nach ${parameter##word}
 
das läßt mir jetzt keine ruhe

ich übersetze das echo ${name##*/} so

nehme alles "*" vor dem "/" und aus der variable "name" und wefe es auf den müll

richtung müßte demanch von hinten nach vorne sein

oder andersrum:

lösche alles bis zum "/" (incl) und behalte den rest


Das zweite tippe ich bzw habe ich es mal umgeschrieben
 
Zuletzt bearbeitet:
Richtung ist von links nach rechts, es wird aber bei ## versucht, soviel wie möglich zu matchen (im Gegensatz zu #, da wird das kleinste Auftreten des Suchmusters gematcht).

Gruss, Xanti
 
Es ist nicht so schwer. ;)

Je mächtiger etwas ist (hier die Shell), umso komplexer ist sie damit zwangsläufig.

@rikola: oder man liest die man-Page. Merken tu ich mir sowas auch nicht. ;)
 
Apropos verstanden!

Ich habe viele Jahre ( ca 18 ) Erfahrung mit einem serösen Betriebssystem (Also nicht Windows) und da auch noch so richtig zeilenorientiert gearbeitet wird und man sogar den bootvorgang sehen kann habe ich natürlich etwas übung im verstehen von befehlsketten
trotzdem fällt mir unix/linux etwas schwer da die befehle schon mal etwas sehr abstrakt sind
 
Zuletzt bearbeitet:
Hallo
So abstrakt sind die garnicht.
Wenn du erstmal verstanden hast, in welcher Reihenfolge die Shell Pfade und Variablen auflöst und an die Befehle übergibt, ist es nicht so kompliziert.
Die Möglichkeiten sind allerdings sehr umfangreich.
Meiner Meinung nach, ist die Steigerungsform Perl. ;)
Da wird es erst richtig spaßig.

Gruß Wolfgang
 

Ähnliche Themen

Bestimmte Links aus HTML Dateien extrahieren

Probleme mit variable

grep und Variablen

awk ergebnis ins var schreiben

Sed augabe in Variable umleiten

Zurück
Oben