
我有以下腳本
#!/bin/bash
for (( c=0; c<=9; c++ ))
do
ssh -t 192.168.30.11 "tshark -i eth1 -f 'src host 192.168.31.10 and tcp' -w shared_folder/results/bbb_var_4_exp_pcaps/capture-output-$c.pcap -a duration:205" &
python ~/shared_folder/tapas/play.py -u http://192.168.31.10/video-content/mm_videos/bbb_var_4/bbb_var_4.m3u8 -m fake -l my-exp-logs/bbb_var_4_exp_logs
sleep 210
done
ssh
我正在嘗試在後台運行該命令,第二個命令python
不需要第一個命令來完成。但是當我將 & 新增到 ssh 命令列末尾時,它就會掛起。
有任何想法嗎?
答案1
我認為該參數與將命令發送到後台-t
不相容。ssh
選項1
省略-t
:
ssh remote-machine 'command' &
選項2
傳送偏僻的進程到後台。你可能需要將遠端進程與 stdin、stdout、stderr 分離允許ssh
立即返回:
ssh -t remote-machine 'command < /dev/null &> /dev/null &'