Я написал сценарий bash, который сначала выполняет операции над текстовыми файлами, а затем выполняет другой скрипт изнутри, повторяя эту операцию в цикле while. Сценарий, который выполняется внутри в определенное время спросить у пользователяСценарий Bash, который, кажется, нажимает кнопку нежелательного возврата
«нажмите, чтобы остановить»
и подождать 5 секунд, если пользователь не нажмет возврат идет дальше. Если я выполняю только этот сценарий, он работает нормально, но если я его выполню изнутри другого, кажется, что клавиша возврата нажата автоматически и останавливает выполнение.
Как этого избежать?
Ниже приведен пример сценария:
#!/bin/bash
pMatrixFile='file.csv'
templateFile='out.txt'
nSim=0
while read line
do
((nSim++))
# ***************Read the input file*****************************************
scale1=$(echo $line | cut -f1 -d\;)
scale2=$(echo $line | cut -f2 -d\;)
# ***************Write the file to be runned*********************************
sed -e "/double Scale_EX2 =/s|scale_DOE|$scale1|g" \
-e "/double Scale_EX6 =/s|scale_DOE|$scale2|g" \
-e "/double Scale_EX7 =/s|scale_DOE|$scale8|g" <$templateFile >$fileName
# ***************Launch the simulation on server*****************************
sed -e "s|simFile|$simFile|g" <$submitTemplateFile >$submitFile
sed -i "s|simVisName|$simVisName|g" $submitFile
# *************At this line we have the issue!***********
chmod a+x $submitFile
. ./$submitFile |tee log
# *******************************************************
# ***************Clean up the temporary files********************************
rm $simFile $fileName $submitFile
done<$pMatrixFile
$ submitFile мой внешний скрипт.
Спасибо за помощь!
Вы пишете внутри '$ submitFile' в качестве первой строки' #!/Bin/bash'? Если есть '#!/Bin/sh', команда' 'read' должна работать по-другому ...] (http://stackoverflow.com/a/2612297/3569208) – Hastur