0

如果我在 linux 命令行中手动运行此命令,它可以工作,并且 EDIT.3126026369 不为空

curl "http://somesite.com/admin.php?mod=editnews&action=editnews&id=14058" -s -L -b cookie.ck -c cookie.ck > EDIT.3126026369

在 bash 中:

curl \"$EDIT\" -s -L -b $COOKIE -c $COOKIE > EDIT.$TEMP

但在 bash 脚本中,它会生成一个空文件。这里缺少什么?

4

2 回答 2

1

定义 $EDIT 变量时使用引号:

EDIT="http://somesite.com/admin.php?mod=editnews&action=editnews&id=14058"

然后丢失 curl 命令上的转义引号:

curl $EDIT -s -L -b $COOKIE -c $COOKIE > EDIT.$TEMP

这种方式对我来说似乎工作得很好,你呢?

于 2012-09-28T09:31:47.273 回答
0

你的$EDIT变量中有什么,你需要这样引用它吗?如果是你的 URL,我只希望你写

curl $EDIT ....

如果您使用一个-x选项运行 bash 脚本,它会显示它执行的每一行。这是一种非常有用的调试技术。

于 2012-09-28T09:15:44.707 回答