#!/bin/bash # 定义kill脚本路径 KILL_SCRIPT="./kill_ccosprocgo.sh" # 检查并执行kill脚本清理残留进程 if [ -f "$KILL_SCRIPT" ] && [ -x "$KILL_SCRIPT" ]; then echo "正在执行进程清理脚本,确保没有残留的CcosProcGo进程..." "$KILL_SCRIPT" echo "进程清理完成" else echo "错误:未找到kill脚本 $KILL_SCRIPT 或脚本不可执行" echo "请确保kill脚本存在且具有执行权限 (chmod +x $KILL_SCRIPT)" exit 1 fi # 初始设置环境变量 export LD_LIBRARY_PATH="./PlatformModule:$LD_LIBRARY_PATH" # 检查目录和文件 DRIVER_CONFIG_DIR="./DriverConfig" if [ ! -d "$DRIVER_CONFIG_DIR" ]; then echo "错误:DriverConfig目录不存在" exit 1 fi if [ ! -x "./CcosProcGo" ]; then echo "错误:未找到可执行文件CcosProcGo" exit 1 fi # 统计文件数量 FILE_COUNT=$(find "$DRIVER_CONFIG_DIR" -maxdepth 1 -type f | wc -l) if [ "$FILE_COUNT" -eq 0 ]; then echo "警告:DriverConfig目录中没有文件" exit 0 fi echo "发现 $FILE_COUNT 个文件,开始启动后台进程..." # 启动所有进程 while IFS= read -r -d '' FILE_PATH; do FILE_NAME=$(basename "$FILE_PATH") echo "正在启动后台进程:./CcosProcGo $FILE_NAME" ./CcosProcGo "$FILE_NAME" > /dev/null 2>&1 & done < <(find "$DRIVER_CONFIG_DIR" -maxdepth 1 -type f -print0) echo "所有进程已启动" echo "可以使用kill脚本终止进程:$KILL_SCRIPT" exit 0