我正在一個有時非常慢的linux服務器上工作。所以當我添加一些工作爲我運行時,我必須等待幾個小時才能運行一個簡單的計算。檢查文件是否存在,並等待sh腳本運行,直到找到文件
我在想,如果我能夠開始下一個分析,而是讓它等到前面分析的輸出是存在的。 (第二次分析所需要的第一個分析輸出)
我試圖讓除了和其他的選擇工作,但仍然沒有成功(發現除並在計算器上一個問題的其他選項): expect { 'output/analysis_file1.txt' }
任何想法/提示受到讚賞,並會幫助我分配。
我唯一希望的是讓第二代息等到最初的腳本的文本文件中給出。
4腳本:1。
#!/bin/bash
#$ -cwd
./script1.sh
. ./script2.sh $repla
. ./script3.sh $replac
2:
repla=''
for i in 'abcdefghijklmnopqrst'
do
repla=`echo $i | sed 's/'abc'/'xyz'/g'`
#echo $repla
done
3:
replac=''
for j in $1
do
replac=`echo $j | sed 's/'xyz'/'san'/g'`
#echo $replac
done
4:
replace=''
for h in $1
do
replace=`echo $h | sed 's/'san'/'sander'/g'`
#echo $replace
done
第一個腳本在文件完成時結束,還是繼續執行其他操作? – William
@William何時結束文件是完整的 –
然後,你可以把它們連在一起,在命令行上:'SCRIPT1時SCRIPT1完成&& script2' SCRIPT2然後將運行並返回成功(0)。如果您不相信script1的退出值表示成功或失敗,那麼只需使用'script1; script2',並希望script2在文件不存在時會做些優雅的事情。 – William