在我的代码中,有人编写了以下骆驼路线。 feed.in
的输入是csv文件。我无法理解shell脚本在做什么。
<route id="route-id-1">
<from uri="{{feed.in}}" />
<setHeader headerName="CamelExecCommandArgs">
<simple>-h \\|AAAAA\\||\\|BBBBB\\||\\|CCCCC\\||\\|DDDD\\||.ssif\\| ${in.header.CamelFileAbsolutePath} ${in.header.CamelFileAbsolutePath}.filtered</simple>
</setHeader>
<to uri="ref:execGrep"/>
</route>
<endpoint id="execGrep" uri="exec:${APP_SCRIPTS}/camel-egrep.sh"/>
camel-egrep.sh
的内容是:
#!/bin/bash
egrep ${@:1:$(($#-1))} > ${@: -1}
答案 0 :(得分:0)
我假设{{feed.in}}
评估目录的名称。将文件放入目录时,Camel路由将变为活动状态。它将读取文件,并使用特定参数执行camel-egrep
脚本。倒数第二个参数是文件名,文件名是&#34; .filtered&#34;追加。
我猜想总体结果是为每个显示的文件xxx.filtered
创建一个文件xxx
,其中生成的文件由原始文件中与搜索模式匹配的行组成{ {1}}。