Próbuję użyć, awk
aby uzyskać nazwę pliku podaną bezwzględną ścieżką do pliku.
Na przykład, mając ścieżkę wejściową, /home/parent/child/filename
którą chciałbym uzyskać filename
, próbowałem:
awk -F "/" '{print $5}' input
który działa doskonale.
Jednak jestem twardym kodem, $5
który byłby nieprawidłowy, gdyby moje dane wejściowe miały następującą strukturę:
/home/parent/child1/child2/filename
Tak więc ogólne rozwiązanie wymaga zawsze zajęcia ostatniego pola (które będzie nazwą pliku).
Czy istnieje prosty sposób na zrobienie tego za pomocą funkcji awk substr?
basename
jest oficjalnym sposobem robienia tego, używanieawk
do tego nie jest dobre, mówiąc lekko. : D