在此之前,我发现了相同的问题,但都没有对我有用的答案。
我需要制作一个临时.json文件(它需要是json,因为我稍后将在脚本中使用jq )。
我认为基于对this question的回答,它将是如下所示,但它们分别创建了名为.json和XXXXXXXX.json的文件。
STACKS=$(mktemp .json)
STACKS=$(mktemp XXXXXXXX.json)这需要在mac和linux机器上运行。我不能为文件指定路径,因为它将在本地和由Jenkins运行,后者的文件结构不一样。正确的语法是什么?
发布于 2017-04-06 15:14:26
如果您使用的是openBSD mktemp,则可以
STACKS="$(mktemp XXXXXX).json"然后编写一个trap,以便在脚本完成时删除tmps:
function cleanup {
if [ -f "$STACKS" ] && [[ "$STACKS" =~ ".json"$ ]]; then
rm -f "$STACKS"
fi
}
trap cleanup EXIT因此,当脚本完成时(无论如何),如果它是一个文件,如果它以.json结尾(为了额外的安全起见),它将尝试删除它。
https://stackoverflow.com/questions/43259092
复制相似问题