12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #!/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
|