shell实现交互式输入变自动化输入,就是可编程
作者:互联网
可以使用expect脚本
1,在shell脚本中调用expect脚本。
2,或者使用重定向(所谓重定向就是把标准输入重定向到标准输入)比如
sh run_hmj_with_java_pid.sh
源码为:
#!/bin/bash
echo "input array element split by space"
read -a control
echo "1:"
echo ${control[0]}
执行:
[root@test3 tmp]# sh run_hmj_with_java_pid.sh
input array element split by space
yes(这个yes是交互式输入的)
1:
yes
上面是交互式的,下面是自动化的:
[root@test3 tmp]# echo "yes" |sh run_hmj_with_java_pid.sh
input array element split by space
1:
yes
这里的核心是read这个命令,可以查手册深入了解
---------------------------------------------------------------------------------------------------------------------------------------
expect脚本:
https://blog.csdn.net/anqixiang/article/details/110181689
expect脚本可以查手册深入学习
标签:shell,pid,echo,sh,expect,可编程,yes,array,输入 来源: https://www.cnblogs.com/mmgithub123/p/15871393.html