卷曲调用在 cmd 中工作,但不在.bat中工作



以下代码从cmd运行时运行良好,但是当从Pentaho DI作为bat运行时,它会失败(访问被拒绝(。

curl -k --data "data=username%%3[DUSERNAME]%%26password%%3D[PASSWORD]%%26pid%%3D[1]%%26lid%%3D[2]" https://[...]/export/csv.php -o [...]output.csv

有什么具体的事情我应该注意吗?假设问题出在凭据部分。

问题是%<number>部分被解释为批处理文件的参数%1%2, ...

您可以简单地将所有%字符加倍以转义它们:

curl -k --data "data=username%%%%3[DUSERNAME]%%%%26password%%%%3D[PASSWORD]%%%%26pid%%%%3D[1]%%%%26lid%%%%3D[2]" ...

我已经设法通过创建外部.bat文件并使用Pentaho的Shell函数调用它来修复它。以前我在Pentaho中实现代码(它在运行时创建临时.bat文件(。

相关内容

最新更新