自动进入脚本路径

find / -type f -size +1G -exec du -h {} ; (找到大于1G的文件)

进入目录

cd "$( dirname "${BASH_SOURCE[0]}")"

!/bin/bash

定位脚本所在当前目录

BIN_FOLDER=$(cd "$(dirname "$0")";pwd)
echo $BIN_FOLDER

定位脚本所在父目录

PROJECT_FOLDER=$(cd "$(dirname "$BIN_FOLDER")";pwd)
echo $PROJECT_FOLDER

定位脚本所在父目录下的某文件

PYTHON_BIN=$PROJECT_FOLDER/.venv/bin/python
echo $PYTHON_BIN
BIN_FOLDER = $(cd "$(dirname "$0")";pwd)解析:

取当前运行脚本的所在路径:$0

取当前脚本所在路径的父目录:dirname "$0"

取返回的父目录的值:$(dirname "$0")

cd到返回的父目录:cd "$(dirname "$0")"

输出地址:cd "$(dirname "$0")";pwd

取输出的地址,并赋值给BIN_FOLDER:BIN_FOLDER = $(cd "$(dirname "$0")";pwd)

这样,就知道一些与当前脚本放在一起的文件相对路径,只要知道相对路径就可以根据这个目录来定位,而不用关心绝对路径。这样脚本的可移植性就提高了,扔到任何一台服务器都可以执行。
参考:https://blog.csdn.net/yjk13703623757/article/details/103347162?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2~default~CTRLIST~Rate-1-103347162-blog-103204196.pc_relevant_multi_platform_whitelistv4&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2~default~CTRLIST~Rate-1-103347162-blog-103204196.pc_relevant_multi_platform_whitelistv4&utm_relevant_index=1

posted @ 2022-11-23 16:46  tangtangtu  阅读(51)  评论(0)    收藏  举报