美文网首页
linux 脚本任意位置可执行 (主要是路径问题)

linux 脚本任意位置可执行 (主要是路径问题)

作者: _流浪的猫_ | 来源:发表于2017-05-11 14:34 被阅读0次

给一个程序写了一个脚本,但里面使用了当前路径,错误会导致不能启动。因此每次只能 cd 到bin下去执行脚本,挺麻烦的,今天找了个命令来解决这个问题

mac下,没找到tree命令,使用如下命令代替:
find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'

下面是应用的目录:
.
|____bin
| |____start.sh
|____lib
|____log
脚本
#!/bin/sh
# cd 命令好说, 后面的命令是:取得当前执行的脚本文件的父目录,即bin目录
cd `dirname $0`
# 上面命令进入脚本的目录,然后获取当前脚本所在目录
SCRIPT_PATH=`pwd`
# 这个命令,用于取 bin 目录的上级目录,及应用的根目录
CURRENT_PATH=${SCRIPT_PATH%/*}

# 后续可以使用 $CURRENT_PATH 做一些事了

相关文章

网友评论

      本文标题:linux 脚本任意位置可执行 (主要是路径问题)

      本文链接:https://www.haomeiwen.com/subject/wzuotxtx.html