我正在使用读取-p"按任意键继续"在我的脚本中。 这工作正常,除非它在像
这样的while循环中while read TEST_NAME ; do
read -p "Press any key..."
echo "Executing:"
done <$MT_TEST_ROOT_DIR/automation.mts
我怀疑这是因为封闭while循环执行读取。那么它的解决方案是什么呢?
答案 0 :(得分:1)
问题确实是封闭的重定向。您可以通过以下方式简单地重定向来自read
(您的键盘)的内部/dev/tty
输入:
while read TEST_NAME ; do
read -p "Press any key..." < /dev/tty
echo "Executing:"
done <$MT_TEST_ROOT_DIR/automation.mts
答案 1 :(得分:0)
两个read
都从同一输入文件中读取。对第一次读取使用不同的文件描述符,让第二个read
继承脚本正在使用的任何内容。
while read TEST_NAME <&3 ; do
read -p "Press any key..."
echo "Executing:"
done 3< "$MT_TEST_ROOT_DIR"/automation.mts