从脚本文件启动时无法识别bash - tshark命令

时间:2013-03-04 10:22:48

标签: bash tshark

我正在尝试编写一个简单的bash文件,能够捕获看起来像这样的Wi-Fi流量:

STRING1="tshark -i 2 -a duration:5 -w <path of output.pcap>"
$STRING1
echo "'Wi-Fi' captured"

STRING2="tshark -r <path of output.pcap> -T fields -e frame.number -E header=y > <path of output.csv>"
echo $STRING2
$STRING2

正确处理第一个命令STRING1并创建output.pcap。当STRING2启动时,我收到错误tshark: Syntax error.。但是如果我只是在终端中复制并粘贴STRING2命令一切正常。 我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

在单词扩展之前解析Shell语法(重定向运算符,管道等),因此输出重定向作为参数传递给tshark

STRING2="tshark -r <path of output.pcap> -T fields -e frame.number -E header=y"
echo $STRING2
$STRING2 > <path of output.csv>