Talvez algo assim:
s="."; until [[ $(readlink -e $s) == / ]]; do s+=/..; done; echo "$s"; ls -l "$s"
Eu tenho um programa que usa um caminho relativo como entrada e o acrescenta a uma string de caminho para obter o caminho real.
Agora, tudo que eu posso inserir é o caminho relativo. Então, se eu quiser ir um nível acima da minha entrada será ../mypath
.
Se eu souber a profundidade do caminho usado internamente, posso usar ..
quantas vezes for para o diretório raiz e, em seguida, fornecer o caminho absoluto. Mas suponha que eu não sei a profundidade do diretório, posso construir uma seqüência de caminho relativo de tal forma que o considere como um caminho relativo. Uma maneira seria ter ..
suficiente na cadeia de caracteres do caminho para que eu possa forçar um caminho absoluto para uma profundidade máxima de caminho.
Existe alguma sintaxe de string de caminho que eu não conheço, mas que pode conseguir isso?
Se o programa sempre usar como padrão o mesmo local, basta criar um symlink nesse diretório para / e usar isso.