Показать полный путь к файлу в терминале
У меня есть файл. Я хотел бы повторить полный путь к нему в терминале.
Какая команда будет?
4 ответа
Я нашел это:
sudo apt-get install realpath
Затем:
realpath MY_FILE
Использование readlink с -e флаг. Он не только дает вам полный путь к файлу, но также показывает реальный путь символических ссылок
$ readlink -e ./out.txt
/home/xieerqi/out.txt
Я лично использую его в своих сценариях всякий раз, когда необходимо получить полный путь к файлу
Если вы не знаете, где находится файл, используйте find команда.
find / -name MY_FILE
Он напечатает полный путь MY_FILE начиная с /,
или вы можете использовать find $PWD -name MY_FILE искать в текущем каталоге.
Если вы знаете местоположение MY_FILE затем перейдите в папку MY_FILE и использовать
pwd Команда для печати полного пути MY_FILE,
Вот функция для отображения путей к файлам, вам может просто понадобиться часть "fpath=...."?
pathtofile () { : "gives full path to files given in parameters.";
for f in "$@"; do
fpath="$(
cd -P "$(dirname "$f")" && \
printf '%s\n' "$(pwd)/$(basename "${f}")" || \
{ echo "__An error occured while determining path to file: '${f}'."\
"Maybe your user can't access its directory, most likely?__"
} )"
printf "Full path to: %s\n is: %s\n" "'${f}'" "'${fpath}'";
done
}
Использовать с:
pathtofile file1 ../file2 /some/pathwithsymlink/file3
Важная часть: cd -P somedir: показывает полный "реальный" путь к somedir.