如何从bash中的绝对路径创建相对路径?

时间:2018-11-07 14:02:57

标签: regex bash sed relative-path pwd

我在此目录中:

/home/michal/project/test/my-utils/rel/0.1.0

,我想在Linux shell中获得/ home / michal / project /的相对路径:

../../..

我已经尝试使用sed进行操作,但是我没有成功创建正则表达式。例如。尝试之一:

pwd | sed -e "s/.*project\///g" | sed -e "s/[^\/]+/../g"

有什么秘诀吗?

1 个答案:

答案 0 :(得分:7)

您可以使用命令realpath

realpath --relative-to=${PWD} /home/michal/project/

从帮助页面:

  

-relative-to = FILE打印相对于FILE的解析路径