셀프 업데이트 작업 추가 by script

This commit is contained in:
2024-11-12 11:53:18 +09:00
parent 92432fcd83
commit 592e00b98b
5 changed files with 44 additions and 86 deletions

View File

@ -3,49 +3,35 @@
HOUSTON_PATH="./houston"
UPDATE_DIR="houston.update"
while true; do
# houston 실행
run_houston() {
if [ -f "$HOUSTON_PATH" ]; then
"$HOUSTON_PATH"
EXIT_CODE=$?
"$HOUSTON_PATH" "$@"
return $?
else
echo "houston 실행 파일이 없습니다."
EXIT_CODE=1
return 1
fi
}
while true; do
echo "현재 버전의 houston을 실행합니다."
run_houston "$@"
# houston.update 폴더가 존재하는지 확인
if [ -d "$UPDATE_DIR" ]; then
# houston 파일이 존재하는 경우에만 시간 비교
if [ -f "$HOUSTON_PATH" ]; then
HOUSTON_TIME=$(stat -c %Y "$HOUSTON_PATH")
UPDATE_TIME=$(stat -c %Y "$UPDATE_DIR")
if [ $UPDATE_TIME -gt $HOUSTON_TIME ]; then
echo "새로운 업데이트 폴더 발견. 업데이트를 진행합니다."
# houston.update 폴더 내의 모든 파일을 현재 폴더로 복사
cp -R "$UPDATE_DIR"/* .
# 실행 권한 부여 (필요한 경우)
chmod +x "$HOUSTON_PATH"
# 업데이트 폴더 삭제
rm -rf "$UPDATE_DIR"
echo "업데이트 완료 및 업데이트 폴더 삭제. houston을 다시 시작합니다."
else
echo "업데이트 폴더가 최신이 아닙니다. 업데이트를 건너뜁니다."
break
fi
else
echo "houston 파일이 없습니다. houston.update 폴더의 내용을 복사합니다."
cp -R "$UPDATE_DIR"/* .
chmod +x "$HOUSTON_PATH"
# 업데이트 폴더 삭제
rm -rf "$UPDATE_DIR"
echo "houston을 시작합니다."
fi
echo "새로운 업데이트 폴더 발견. 업데이트를 진행합니다."
# houston.update 폴더 내의 모든 파일을 현재 폴더로 복사
cp -R "$UPDATE_DIR"/* .
# 실행 권한 부여 (필요한 경우)
chmod +x "$HOUSTON_PATH"
# 업데이트 폴더 삭제
rm -rf "$UPDATE_DIR"
echo "업데이트 완료 및 업데이트 폴더 삭제. houston을 다시 시작합니다."
else
echo "업데이트 폴더가 없습니다. 스크립트 종료합니다."
echo "업데이트 폴더가 없습니다. 스크립트 실행을 종료합니다."
break
fi
done
echo "houston 실행 및 업데이트 스크립트 종료"
exit $EXIT_CODE
exit $?