擅长:python、mysql、java
<p>不要使用<code>shell=True</code>。应该是<code>False</code>。</p>
<p>你在输入中犯了一些细微的错误。特别是,如果有两个字符串:</p>
<pre><code>>>> s1 = 'Hello'
>>> s2 = 'Hi'
>>> s1 + s2
'HelloHi'
</code></pre>
<p>注意,在<code>Hello</code>和<code>Hi</code>之间没有空格。所以不要这样做。(你的4号线)</p>
<p>你应该做(好的方法):</p>
<pre><code>>>> raw = raw_input('Filename: ')
Filename: test
>>> ip = raw_input('Host: ')
Host: 192.168.1.1
>>> command = 'tcpdump -c5 -vvv -w {0} {1}'.format(raw, ip) # the command goes here
>>> subprocess.call(command.split(), shell=False) # call subprocess and pass the command as a list using split
</code></pre>
<p>现在应该可以了。</p>