pdf_code/restart_app.sh

77 lines
1.9 KiB
Bash
Raw Normal View History

2025-09-02 15:23:55 +08:00
#!/bin/bash
# 切换到 /root/docker/milvus 目录
cd /root/docker/milvus || { echo "无法进入目录 /root/docker/milvus"; exit 1; }
# 运行 standalone_embed.sh restart 指令
bash standalone_embed.sh restart
#!/bin/bash
# 目标目录(根据实际路径修改)
TARGET_DIR="/root/pdf_parser/pdf"
LOG_FILE="/root/pdf_parser/logs/pdf_clean.log"
# 创建日志目录
mkdir -p "$(dirname "$LOG_FILE")"
# 带时间戳的日志函数
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" | tee -a "$LOG_FILE"
}
# 检查目标目录是否存在
if [ ! -d "$TARGET_DIR" ]; then
log "错误:目标目录不存在 $TARGET_DIR"
exit 1
fi
# 执行清理并记录
log "开始清理PDF文件..."
find "$TARGET_DIR" -iname "*.pdf" -print0 | while IFS= read -r -d $'\0' file; do
log "删除文件: $file"
rm -f "$file"
done
log "清理完成,共删除 $(find "$TARGET_DIR" -iname "*.pdf" | wc -l) 个残留文件"
# 设置工作目录和日志路径
WORK_DIR="/root/pdf_parser/zzb_data_prod"
LOG_FILE="$WORK_DIR/app.log"
# 终止现有进程
pids=$(ps -ef | grep app.py | grep -v grep | awk '{print $2}')
if [ -n "$pids" ]; then
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 正在停止现有进程: $pids"
kill -9 $pids
else
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 未找到正在运行的进程"
fi
# 进入工作目录
cd $WORK_DIR || { echo "无法进入目录 $WORK_DIR"; exit 1; }
# 启动服务
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 启动服务..."
nohup python3 app.py > $LOG_FILE 2>&1 &
# 等待进程启动
sleep 2
# 检查进程状态
new_pid=$(ps -ef | grep app.py | grep -v grep | awk '{print $2}')
if [ -n "$new_pid" ]; then
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 服务启动成功进程ID: $new_pid"
echo "--------------------------------"
tail -n 10 $LOG_FILE
else
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 服务启动失败!"
echo "--------------------------------"
cat $LOG_FILE
exit 1
fi