我正在尝试从另一个脚本运行 shell 脚本,并让它们在单独的终端窗口中显示每个脚本的输出,但我做不到。当我运行 script1 时,它运行良好,然后使用 script2 调用,source
这样我就可以访问 script1 中的变量,但在调用 script2 之后,我在终端上丢失了 script1 的输出。有什么建议,如何在调用 script2 后为其打开一个新终端,然后 script1 继续执行它正在执行的操作,而无需等待 script2 完成,以便它们可以在单独的窗口中运行?
这是脚本1:
#!/bin/bash -i
#
alias brc='source ~/.bashrc'
id='myapp1*'
dir_list= a directory list I have
only_once=0
select dir in $dir_list; do
dir1= My directory 1
while :; do
echo "#### entered while ####"
#here I do my operations
if [ $only_once -eq 0 ]; then
echo "entered"
source path to my script2
only_once=$((only_once+1))
fi
sleep 5m
echo ""
done
break
done
这是脚本2:
#!/bin/bash -i
#
echo $id
newdir= get a specific directory here
echo $newdir
cd $newdir
for f in ./Myapps_*
do
cd ./$f/Data
for i in *.app
do
echo "############################"
echo "Fetchingggg" $i
echo "############################"
done
cd ../../
done
答案1
尝试过增加终端上的缓冲区吗?