我正在设置一种解决方案,以从蜂窝路由器捕获信息。在我的脚本中,我将main.sh根据路由器型号启动其他文件(* .sh)。
因此,如果我想捕获有关Cisco路由器的信息,请执行main.sh正在执行的InformationCisco.sh。
在上一个外壳文件中,我必须读取一个值,但是
read -p
or
echo -n then read
不行
main.sh
./InformationCisco.sh
编辑: InformationCisco.sh
sshpass -p "$MDPssh" ssh -o StrictHostKeyChecking=no admin@"$IPaddress" "cat /proc/net/arp" > "$MACtxt"
testMAC=$(awk 'NR==3{print $4}' $MACtxt | cut -d ' ' -f23)
if [ -z "$testMAC" ]; then
MacAddressPlayer=$(awk 'NR==2{print $4}' $MACtxt | cut -d ' ' -f23)
echo "MAC address Player : $MacAddressPlayer"
else
echo "2 MAC address in ARP"
echo "You have to find the correct MAC address for the player"
cat $MACtxt
read -p "Enter the right MAC address : " MacAddressPlayer
MAC_Choice $typeMAC
echo "MAC address Player : $MacAddressPlayer"
fi
我读取了路由器的ARP表以捕获与其连接的设备。为此,我使用sshpass来输入密码(不用担心密码不清楚,这只是一种简化)。在另一个正在运行的外壳文件中时,读取功能不会停止。
我应该更改什么,以便读取将等待输入?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。