我经常在二楼的家中,通过网络摄像头和这些脚本密切关注(开放式)地面室内装饰。
首先,我使用 $ sh~ / .camconn 连接到远程系统,其中包含:
sshpass -f 'passw' ssh -X name@remoteip '~/webcam5050'
远程文件〜/ webcam5050包含:
#! /bin/sh cvlc -vvv v4l2:// --sout '#transcode{vcodec=mjpg,vb=2000,width=320,height=240,venc=ffmpeg}:duplicate{dst=standard{access=http,mux=mpjpeg,dst=0.0.0.0:5050/video.mpjpeg}
等待5到6秒后,我启动本地网络摄像头浏览器 $ sh~ / compaqcam ,其中包含。:
cvlc http://remoteip:5050/video.mpjpeg
和bingo:桌面上有一个不错的VLC窗口。
当然,我希望这一切都发生在一个命令上,我试着无济于事:
#!/bin/bash
(camcon &) && (sleep 8 &) && (compaqcam &) &
我使用这个脚本取得了一些成功:
#!/bin/bash
(sshpass -f 'passw' ssh -X name@remoteip '~/webcam5050'&) && (sleep 8 &) && (cvlc http://remoteip:5050/video.mpjpeg &) &
至少在遥控器上显示“sshd(已接受)”,但随后没有进一步发生。
我能指出正确的方向吗? 如果是这样,我会非常(!)感激,因为我的bash手册(4pcs)在这种情况下失败了。
答案 0 :(得分:1)
我没有您的设置,但我怀疑问题是&睡觉之后,它会把它放到后台,所以它会立即完成,我认为你的脚本可以是:
#!/bin/bash
camcon &
sleep 8
compaqcam &
您仍然可以在&
之后没有sleep 8
的情况下在一行上执行此操作,但这种方式将来更清晰,更容易编辑。
答案 1 :(得分:0)
camcon& 睡觉8 compaqcam&
与ssh-keygen和ssh-copy-id一起完成了这个技巧。 非常感谢!