【问题标题】:execute a script from a script failing respect white从失败的脚本执行脚本
【发布时间】:2020-12-22 19:58:47
【问题描述】:

我正在尝试使用 exec 命令从脚本运行脚本,但遇到了问题,我认为它将参数作为一个参数处理。

我试过了

exec  $0 -r -c -i $instance -s $sdir -d $ddir

exec  "$0 -r -c -i $instance -s $sdir -d $ddir"

exec  '$0 -r -c -i $instance -s $sdir -d $ddir'

但它们都没有正常工作

我读过关于空白的文章,据我了解,第一个应该可以工作

【问题讨论】:

  • exec "$0" -r -c -i "$instance" -s "$sdir" -d "$ddir"。您确定要$0 而不是$1
  • @jordanm 是的,我想编写脚本来重新加载自己

标签: linux bash shell exec whitespace


【解决方案1】:

第一个应该可以,但正如@jordanm 建议的那样,始终将变量放在双引号“”内,以防止空格和特殊字符与您的代码混淆

exec "$0" -r -c -i "$instance" -s "$sdir" -d "$ddir".

【讨论】:

  • 是的,我的错,我实际上写错了变量 $instance 应该是 $instancenr..
猜你喜欢
  • 1970-01-01
  • 2011-06-28
  • 2021-05-18
  • 2021-09-19
  • 2020-11-24
  • 2020-08-19
  • 1970-01-01
  • 2012-07-21
  • 2018-04-29
相关资源
最近更新 更多