我尝试过多种场景,但这些事情更令人头疼。我也试着写这个bash同样的,但是需要在我需要执行的同一个文件中进行更改。有人可以用同样的方式帮助我。
#!/bin/bash -p
if [ $# -lt 1 ]; then
echo "No arguments provided"
exit 0
fi
CURRENT_DIR=`pwd`
EXEC_DIR=`dirname "$1"`
FILENAME="`basename $1`"
cd $EXEC_DIR
CMD="./$FILENAME ${@:2}"
$CMD
cd $CURRENT_DIR
我需要一些两个衬垫来处理我需要执行的同一个文件。
答案 0 :(得分:0)
如果您的脚本存在于/ opt /中并且您在/ opt / dir /中,那么您可以从那里运行脚本 - 例如> ../script.sh它将运行上一个文件夹中的脚本并在当前文件夹中运行它
答案 1 :(得分:0)
最简单的方法是使用您要执行的文件/脚本的完整路径:
/path/to/file/example.bash
您将保留在当前目录中,但您的脚本example.bash
将被执行。