小编Seb*_*ebi的帖子

从“源”脚本更改父脚本的工作目录

我想通过包含的另一个脚本更改我的脚本的工作目录。

第一个脚本:

#!/bin/bash
pwd
source script2
pwd
Run Code Online (Sandbox Code Playgroud)

Sedond脚本:

cd ..
pwd
Run Code Online (Sandbox Code Playgroud)

结果如下:

> ./script1
/home/sebi/testdir1/testdir2  # 1st script
/home/sebi/testdir1           # 2nd script
/home/sebi/testdir1           # 1st script
Run Code Online (Sandbox Code Playgroud)

我在测试这个脚本时编辑了这个问题,它按我想要的方式工作,但是以下脚本的工作方式不同,因为下标完成执行父级与调用下标之前位于同一目录中。

#!/bin/bash
while :
do
sleep 5  

cat /home/.../shelldata.txt >> /home/.../gmodshell #logging

((source /home/..../shelldata.txt) 2>&1) | \
sed -e "s/..shellRunner.sh..line../SH/" > \
/home/..../shellFeedback.txt

echo > /home/..../shelldata.txt

done
Run Code Online (Sandbox Code Playgroud)

整个目标是使用文件访问 bash,这样我就可以将命令写入一个文件,一段时间后我在另一个文件中获得输出。

linux bash shell working-directory

2
推荐指数
1
解决办法
2050
查看次数

标签 统计

bash ×1

linux ×1

shell ×1

working-directory ×1