【问题标题】:Mac Terminal to run a bash script that starts a swift program & restarts every hourMac 终端运行一个 bash 脚本,该脚本启动一个快速程序并每小时重新启动
【发布时间】:2020-06-14 22:31:27
【问题描述】:

我正在寻找一些支持,以创建某种方式在终端中运行 swift 命令以运行程序,然后在 1 小时后停止它然后重新启动。

手动流程示例:

  1. 打开终端。
  2. cd my app
  3. swift run my program --with-parameters
  4. ctrl+c(1小时后)
  5. 从第 3 步重新开始

我确信一定有某种方法可以使用 bash 脚本来通过命令启动程序,在 60 分钟后将其杀死,然后以这样的连续循环重新启动它。

谢谢:-)

【问题讨论】:

  • 欢迎您!您可以从man cronman 5 crontabman killall(或man killecho $!)开始。如果它不适合您,请使用您的脚本更新问题并说明什么不适合您。

标签: swift bash macos terminal


【解决方案1】:

您可以设置一个 cron 作业来执行此操作。基本上,您将拥有一个 bash 脚本,假设它位于 /Users/ben/scripts/run_my_program.sh,每隔一小时:

  1. 终止当前正在运行的进程(kill pid)
  2. 执行swift run my program --with-parameters,吐出进程ID

【讨论】:

    【解决方案2】:

    您可以使用echo $! 获取您启动的快速进程的PID,然后使用sleep 1h 休眠1 小时,然后使用kill -9 和您在第一步中获得的PID 终止该进程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-16
      • 2015-08-25
      • 1970-01-01
      • 2018-04-17
      相关资源
      最近更新 更多