在Bash中处理临时文件

时间:2013-05-10 09:13:17

标签: bash file parent-child

我需要在父bash脚本中复制并执行bash脚本,当作业完成时(如果失败)我需要父脚本删除它复制的子脚本文件。

以下是我正在处理的代码段:

if [ -e $repo_path/install ]; then
  cp $repo_path/install $install_path
  exec $install_path/install
  rm $install_path/install
fi

由于某种原因,它失败了,当子进程结束时,它似乎完全退出。 这个例子使用exec是否正确?

1 个答案:

答案 0 :(得分:2)

exec取代了您当前的流程,因此永远不会达到之后的陈述。

您可以将exec替换为shbash,或者只在儿童脚本可执行时将其删除。

另请参阅:The Bash Reference Manual for exec