From f255b25a2e84cee794bf299190546edde1456ab3 Mon Sep 17 00:00:00 2001 From: Sean Du Date: Wed, 3 Jun 2026 01:34:40 +0800 Subject: [PATCH] Build binary only when missing Signed-off-by: Sean Du --- doc/3.md | 2 +- run.sh | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/3.md b/doc/3.md index 70662ca..cd4e122 100644 --- a/doc/3.md +++ b/doc/3.md @@ -20,7 +20,7 @@ 说明: -- `start` 会自动执行 `go build -o honoka-chan main.go`,然后以 `nohup` 后台运行。 +- `start` 会以 `nohup` 后台运行 `honoka-chan`,如果可执行文件不存在则自动执行 `go build -o honoka-chan main.go`。 - PID 文件:`temp/run/honoka-chan.pid` - 日志文件:`temp/run/honoka-chan.log` diff --git a/run.sh b/run.sh index dcaf126..5912438 100755 --- a/run.sh +++ b/run.sh @@ -35,7 +35,15 @@ start_app() { return 0 fi - build_app + if [[ ! -f "$APP_BIN" ]]; then + build_app + fi + + if [[ ! -x "$APP_BIN" ]]; then + echo "honoka-chan binary is not executable: $APP_BIN" + exit 1 + fi + nohup "$APP_BIN" >>"$LOG_FILE" 2>&1 & local pid=$! echo "$pid" >"$PID_FILE"