如何从Bash shell运行Logparser

时间:2012-06-20 11:00:35

标签: bash sh logparser

我在Windows上 我打开一个git bash shell并运行

logparser "select date from testFile.log" -i:IISW3C -o:CSV

这很有效。

但是如果我使用

创建一个.sh文件
cmd_to_run='logparser "select date from testFile.log" -i:IISW3C -o:CSV'
$cmd_to_run

这不起作用,我得到logparser错误:

Error: detected extra argument ""select" after query

我只需要通过.sh脚本运行logparser。 你能帮忙吗?

1 个答案:

答案 0 :(得分:0)

首先,你为什么不直接运行它?

转义查询中的空格,因为bash扩展了它,你获得了logparser而不是保留字符串的位置参数。如果这不起作用,请尝试eval

为了说明,这里有一个与wc相似的例子:

$ wc -w <<< "select date from testFile.log"
4
$ cmd_to_run='wc -w <<< "select date from testFile.log"'
$ $cmd_to_run
wc: <<<: No such file or directory
wc: "select: No such file or directory
wc: date: No such file or directory
wc: from: No such file or directory
wc: testFile.log": No such file or directory
0 total
$ eval $cmd_to_run # quote as appropriate
4