我似乎无法让它工作。如果我像往常一样执行命令,那么 VLC 就会关闭。
这是命令
./vlc -vvv http://192.168.1.xx:6002 --sout '#transcode{venc=x264{preset=ultrafast},vcodec=h264,vb=1300,ab=128}:standard{access=http,mux=ts,dst=192.168.1.50:9002}'
这是nohup命令
nohup ./vlc -vvv http://192.168.1.xx:6002 --sout '#transcode{venc=x264{preset=ultrafast},vcodec=h264,vb=1300,ab=128}:standard{access=http,mux=ts,dst=192.168.1.50:9002}' 2>&1 &;
这行不通。我做错了什么吗?基本上我想执行命令并执行另一个命令,因为常规命令产生连续输出
第二个命令的末尾有一个分号,这将导致它失败(正如我今天早些时候发现的那样)。在 bash 中&
后面的分号无效,如果您希望在同一行上放置另一个命令(分号的通常原因),您只需在&
后放置一个空格并添加另一个命令。
也就是说,nohup
不是阻止 vlc 产生"连续输出"的方法。为此,您将执行&>/dev/null
而不是2>&1
。
提示:使用 cvlc
nohup ./cvlc -vvv 192.168.1.50:9981/playlist/channelid/1 --sout '#transcode{vcodec=h264,vb=1900,ab=128}:standard{access=http,mux=ts,dst=192.168.1.50:9002}' &
这对我有用