1, 创建expect.sh
#!/bin/bash
username="your name"
mypwd="your pwd"
cmdnat123="sudo /usr/local/bin/mono /usr/nat123/nat123linux.sh"
expect -c"
spawn $cmdnat123
while { 1 } {
expect {
\"enter your nat123 username\" {
send \"$username\r\";
}
\"enter your nat123 password\" {
send \"$mypwd\r\";
}
eof {
send \"exit\r\";
}
}
sleep 5;
}
"
echo "Exit ..."
sleep 5
二 创建 service.sh
#!/bin/bash
#description:simple example service
RETVAL=0
start(){
echo "nat123 service is started..."
nohup sudo bash /usr/nat123/expect.sh &
}
stop(){
echo "nat123 service is stoped..."
}
case $1 in
start)
start
;;
stop)
stop
;;
*)
echo "error choice ! please input start or stop";;
esac
exit $RETVA
三 创建 /lib/systemd/system/nat123.service
[root@localhost nat123]# cat /lib/systemd/system/nat123.service
[unit]
Description=nat123
After=network.target
[Service]
Type=forking
ExecStart=/usr/nat123/service.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
四 添加自启动服务
systemctl start nat123.service
systemctl enable nat123.service