linux脚本执行时工作目录和存放路径

概述

一般咋子linux中写脚本的时候大多都会指定绝对路径,但是有时候需求就是需要在相对路径上执行一些脚本或者命令,这个时候通常会"./xxx.sh"

那么此时这个"./"代表的是工作目录。

"xxx.sh"位于~/aaa/目录下面,而你从~/bbb/目录下面运行它,shell脚本中的"./"所代表的路径就是~/bbb/,这个当前目录的./就是工作目录。还有一个是脚本所在的路径,这是用dirname命令获得的。脚本所在的路径是固定的,所以可以通过它作为相对路径去访问别的程序。

shell脚本里使用cd命令是会改变工作目录的。

#!/bin/sh
path1=`pwd`
path2=$(dirname $0)
echo $path1
echo $path2

你可能感兴趣的:(linux,后端)