Ich habe eine ASCII-Datei mit Dateipfaden, die ich durch Ausführen gelesen habe:
while read p; do echo $p; done < filelist.txt
Die Datei enthält Dateipfade mit folgendem Muster:
./first/example1/path
./second/example1/path
./third/example2/path
Wie kann ich einen bestimmten Teil der Pfadzeichenfolge (von /
bis /
) abrufen, z. B. muss eine Ausgabe abgerufen werden, die Folgendes druckt:
first
second
third
und auch
example1
example1
example2
Ich bin mir sicher, dass es eine Möglichkeit gibt, dies mit regulären Ausdrücken zu tun sed
, aber ich bin damit nicht vertraut.
| cut -d/ -f3
in einem Rohr hat den Trick getan. Vielen Dank! Dies ist jetzt der vollständige Befehl:while read p; do echo $p; done < filelist.txt | cut -d/ -f3