Extraindo nome do arquivo da string do caminho

2

Eu tenho o requisito de extrair o nome do arquivo de um determinado caminho para, por exemplo, %código%. Preciso da localização /dev/user/test.csv na variável separada e no nome do arquivo /dev/user/ em uma variável diferente.
Alguém poderia sugerir uma solução?

    
por chhaya vishwakarma 29.10.2015 / 10:35

1 resposta

4

Normalmente

basename "/dev/user/test.csv" # produce «test.csv»
dirname "/dev/user/test.csv"  # produce «/dev/user»

Em alguns shell (como bash , por exemplo), você pode usar expansão de variável

var="/dev/user/test.csv"
echo ${var##*/}               # produce «test.csv»
echo ${var%/*}                # produce «/dev/user»

Se /dev/user/test.csv existir, você pode dividir o que deseja por um truque simples:

find /dev/user/test.csv -printf '%h\t%f\n'
    
por 29.10.2015 / 10:50