From 5c010840954f50995ac58fc600821d6e245d28c9 Mon Sep 17 00:00:00 2001 From: sophon Date: Sun, 20 Jul 2025 11:39:19 +0800 Subject: [PATCH] modify scripts --- .../scrapy_proj/extensions/push_to_wecom.sh | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/scrapy_proj/scrapy_proj/extensions/push_to_wecom.sh b/scrapy_proj/scrapy_proj/extensions/push_to_wecom.sh index e25d91d..67f1d8d 100755 --- a/scrapy_proj/scrapy_proj/extensions/push_to_wecom.sh +++ b/scrapy_proj/scrapy_proj/extensions/push_to_wecom.sh @@ -15,6 +15,11 @@ REMOTE_SERVER="101.33.230.186" REMOTE_USER="ubuntu" SSH_OTRS="-o StrictHostKeyChecking=no -o ConnectTimeout=10" +# 定义本地和远程脚本路径 +LOCAL_SCRIPT="/home/ubuntu/projects/devops/tools/send_to_wecom.py" +REMOTE_SCRIPT_PATH="/home/ubuntu/projects/devops/tools" +REMOTE_SCRIPT="send_to_wecom.py" + # 主函数 main() { # 检查是否提供了命令参数 @@ -24,9 +29,25 @@ main() { result=$1 # 使用第一个参数作为结果 fi + # 优先检查本地脚本是否存在且可执行 + if [ -f "$LOCAL_SCRIPT" ] && [ -x "$(command -v python3)" ]; then + echo "本地脚本存在,执行本地脚本..." + # 本地执行:切换到脚本目录(避免相对路径问题),传递参数 + (cd "$(dirname "$LOCAL_SCRIPT")" && python3 "$(basename "$LOCAL_SCRIPT")" "$result") + local_exit_code=$? # 保存本地执行的退出状态 + return $local_exit_code + else + # 本地脚本不存在或无python3,执行远程脚本 + echo "本地脚本不存在,执行远程脚本..." + # 远程执行:先切换到远程脚本目录,再执行python脚本 + ssh $SSH_OTRS $REMOTE_USER@$REMOTE_SERVER "cd $REMOTE_SCRIPT_PATH && python3 $REMOTE_SCRIPT '$result'" + remote_exit_code=$? # 保存远程执行的退出状态 + return $remote_exit_code + fi + # 调用远程脚本并传递结果 - ssh $SSH_OTRS $REMOTE_USER@$REMOTE_SERVER "cd /home/ubuntu/projects/devops/tools; python3 ./send_to_wecom.py '$result'" - return $? # 返回远程命令的执行状态 + #ssh $SSH_OTRS $REMOTE_USER@$REMOTE_SERVER "cd /home/ubuntu/projects/devops/tools; python3 ./send_to_wecom.py '$result'" + #return $? # 返回远程命令的执行状态 } # 执行主函数