Ho un file ASCII contenente percorsi di file che ho letto eseguendo:
while read p; do echo $p; done < filelist.txt
Il file contiene percorsi di file con il seguente modello:
./first/example1/path
./second/example1/path
./third/example2/path
Come posso ottenere una parte specifica della stringa del percorso (da /
a /
), ad esempio ho bisogno di ottenere un output che stampa:
first
second
third
e anche
example1
example1
example2
Sono sicuro che esiste un modo per farlo usando espressioni regolari e sed
, ma non ne ho familiarità.
| cut -d/ -f3
in una pipa ha fatto il trucco. Grazie! Questo è il comando completo ora:while read p; do echo $p; done < filelist.txt | cut -d/ -f3