我想在jenkins的$ WORKSPACE目录中找到一个脚本“A.sh”。 $ WORKSPACE中有多个子目录。
发布我发现脚本,我想进入该目录并执行脚本。
执行它的最有效方法是什么?
答案 0 :(得分:2)
发布我发现脚本,我想进入该目录并且 执行脚本。
这是shell
中命令替换的典型应用。
假设只有一个A.sh
,请将以下行写入文件,比方说,
executeA.sh
workspace=$WORKSPACE
$(find "$workspace" -type f -name "A.sh")
现在是重要部分,只是[ source ]当前shell中的上述脚本
. executeA.sh
你很高兴去: - )
这是如何运作的?
stdout
find
置于命令替换中,则作为文件名本身的完整路径的结果将被视为命令答案 1 :(得分:1)
这对我来说效果更好:
locate -br '^A.sh$'
但是,我希望使用变量代替A.sh作为硬编码。这样做的最佳做法是什么?