我遇到一个问题,我需要从终端启动一个命令,并在完成后让终端保持打开状态并继续使用我使用的命令。原因是根据某些情况,我可能需要再次运行它。
我编写了一个 bash 脚本来运行几个终端命令,它看起来像这样
$ launch.bash /path/to/data
代码片段如下
xterm -hold -geometry 200x20+2+700 -e "python /home/me/doSomething.py --directory $1; echo python /home/me/doSomething.py --directory $1; bash"
现在它将启动 Python 脚本,并在完成后打印我使用的命令。最好将命令打印到命令行本身,这样我就可以按回车键了。有办法吗?
答案1
在命令行上重新输入命令不是一件容易的事(如果不在软件中模拟键盘,我不知道还有什么其他方法)。您可以做的是在按下 Enter 时重新运行该命令:
while true
do
xterm -hold -geometry 200x20+2+700 -e "python /home/me/doSomething.py --directory $1; echo python /home/me/doSomething.py --directory $1"
echo "Press enter to run the command again or CTRL+C to cancel"
read
done
或者您可以按下↑返回到最后运行的命令,然后按回车键。