循环中的bash-run.sh
嘿,我有循环,我需要运行选定的文件,但我不知道如何从不同的目录运行sh文件循环中的bash-run.sh,bash,loops,ssh,Bash,Loops,Ssh,嘿,我有循环,我需要运行选定的文件,但我不知道如何从不同的目录运行sh文件 for f in "${FILES[@]}"; do if [[ $(basename $f) == *"$2" ]]; then if [ -e "$f/run.sh" ] then echo "FOUND" && sh f/run.sh && break else echo "NOT FOUND" fi fi
for f in "${FILES[@]}";
do
if [[ $(basename $f) == *"$2" ]];
then if [ -e "$f/run.sh" ]
then echo "FOUND" && sh f/run.sh && break
else echo "NOT FOUND"
fi
fi
done
展开
$f
:
then echo "FOUND" && sh "$f"/run.sh && break
另外,根据run.sh
的功能,您可能希望使用,而不是在新的单独shell中运行它:
then echo "FOUND" && source "$f$"/run.sh && break
现在,在这个脚本中,创建了一个“屏幕”,文件位于不同的目录中。但是run.sh不读取此文件,也不创建新的“屏幕”。知道如何运行它吗?@user1366028“$f”是一个目录吗?也许你想
cd“$f”&&source run.sh&&cd..
?我有&&cd“$f”&&ls&&source“$f/”run.sh
,我想带“screen”的脚本正在运行,但在这个脚本中找不到$server\u name(带文件名的变量)