【发布时间】:2019-08-22 01:08:38
【问题描述】:
我的问题
我创建了一个 Windows cmd 文件
test.cmd,它期望将两个参数传递给Kitchen.bat(Pentaho)。我通过传递两个参数在 Windows 命令行中调用
test.cmd:test.cmd 1 2在Spoon(设计师)中,我将这两个参数写入一个日志文件。
作业完成后,我仍然看到变量本身,而不是我传递的值 (1 2)。
我尝试了什么?
首先,我怀疑 bat 文件中的“参数”有问题(它在哪里获取值并传递给 kitchen.bat),所以我用谷歌搜索并尝试了所有可能的解决方案,以下是我尝试过的.
"-param:A=%A%"
"/param:A=%A%"
/param "A:%A%"
'/param:"A=%A%"'
很遗憾,这些都不起作用。
这是我的源代码
test.bat:
echo "Starting Job.."
echo "printing parameter.."
echo %1
echo %2
Set A=%1
Set B=%2
set LOG_PATH=C:\App\Reporter\Pentaho\Config\Utilities\Import.log
Set CONFIG_PATH=C:\App\Reporter\Pentaho\Config\Utilities
C:\App\REPORTER\Pentaho\Env\V8.2\kitchen.bat /file:"CONFIG_PATH"\test.kjb "/level=Basic" "/logfile=%LOG_PATH%" "-param:A=%A%" "-param:B=%B%"
pause
Windows 命令行:
C:......>test.cmd 1 2
Pentaho KJB:
我使用“写入日志”功能从变量中检索值。
V1 = ${A}
V2 = ${B}
这里是结果
V1 = ${A}
V2 = ${B}
显示变量本身而不是实际值 (1, 2)。
【问题讨论】:
标签: windows batch-file pentaho pentaho-spoon