本文共 889 字,大约阅读时间需要 2 分钟。
path.sh#!/bin/bashpath=$(cd `dirname $0`;pwd)echo $pathpath2=$(dirname $0)echo $path2当前脚本存在路径:/home/softwaresh path.sh/home/software.解释:dirname $0 只是获取的当前脚本的相对路径.cd `dirname $0`;pwd 先cd到当前路径然后pwd,打印成绝对路径方法二:path.sh#!/bin/bashpath=$(dirname $0)path2=$(readlink -f $path)echo path2sh path.sh/home/software解释:readlink -f $path 如果$path没有链接,就显示自己本身的绝对路径
readlink是linux用来找出符号链接所指向的位置例1:readlink -f /usr/bin/awk结果:/usr/bin/gawk #因为/usr/bin/awk是一个软连接,指向gawk例2:readlink -f /home/software/log/home/software/log #如果没有链接,就显示自己本身的绝对路径
path.sh#!/bin/bashPATH1=$(dirname $0)PATH2=$(cd `dirname $0`;pwd)PATH3=$(readlink -f $PATH1/..)echo $PATH1echo $PATH2echo $PATH3当前脚本存在路径:/home/softwaresh path.sh. 【echo $PATH1】/home/software 【echo $PATH2】/home 【echo $PATH3】作者:Chaweys 链接:https://www.jianshu.com/p/d0906246534e 来源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。