精确的脚本位置和更改目录

时间:2018-01-16 07:24:59

标签: shell unix

我想在jenkins的$ WORKSPACE目录中找到一个脚本“A.sh”。 $ WORKSPACE中有多个子目录。

发布我发现脚本,我想进入该目录并执行脚本。

执行它的最有效方法是什么?

2 个答案:

答案 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作为硬编码。这样做的最佳做法是什么?

相关问题