Insar结合ISCE2,某一个文件进行并行-stackSentinel.py

stackSentinel.py

依次执行 run_01 到 run_15,记录各自的日志

并行执行 run_16 里的所有命令,仍然记录日志

不知道对不对,测试的时间有点长就给停了

bash 复制代码
#!/bin/bash

# ✅ 适用于 WSL/Linux
runfiles_path="/mnt/e/insar_order_test/Stacks/run_files"
log_dir="/mnt/e/insar_order_test/logs"

# 创建日志目录(如果不存在)
mkdir -p "$log_dir"

# 依次执行 run_01 到 run_15,并记录日志
for file in $(ls $runfiles_path/run_??_* 2>/dev/null | grep -v "run_16" | sort); do
    log_file="$log_dir/$(basename "$file").log"
    
    echo "=============================================" | tee -a "$log_file"
    echo "Executing: $file" | tee -a "$log_file"
    echo "======= Contents of $file =======" | tee -a "$log_file"
    cat "$file" 2>/dev/null | tee -a "$log_file"
    echo "=============================================" | tee -a "$log_file"

    # 执行文件,并同时在终端打印和日志保存
    bash "$file" | tee -a "$log_file"

    echo "✅ Execution of $file completed!" | tee -a "$log_file"
done

# ✅ 并行执行 run_16 里面的所有命令
run_16_file="$runfiles_path/run_16"
log_16="$log_dir/run_16.log"

if [ -f "$run_16_file" ]; then
    echo "🔄 开始并行执行 run_16 命令..." | tee -a "$log_16"
    cat "$run_16_file" | tee -a "$log_16" | parallel -j 8 --joblog "$log_dir/parallel_run_16.log" | tee -a "$log_16"
    echo "✅ run_16 命令全部执行完成!" | tee -a "$log_16"
else
    echo "⚠️ 警告:run_16 文件未找到,跳过该步骤!" | tee -a "$log_dir/run_all.log"
fi

echo "✅ 所有任务已按顺序执行完成!" | tee -a "$log_dir/run_all.log"
相关推荐
檀越剑指大厂2 分钟前
【Linux系列】如何在 Linux 服务器上快速获取公网
linux·服务器·php
共享家95273 分钟前
linux-高级IO(上)
java·linux·服务器
站大爷IP17 分钟前
Python与MySQL:从基础操作到实战技巧的完整指南
python
老歌老听老掉牙21 分钟前
SymPy 矩阵到 NumPy 数组的全面转换指南
python·线性代数·矩阵·numpy·sympy
站大爷IP26 分钟前
Python条件判断:从基础到进阶的实用指南
python
赛博郎中31 分钟前
pygame小游戏飞机大战_8继承精灵玩家优化
python·pygame
William一直在路上43 分钟前
Python数据类型转换详解:从基础到实践
开发语言·python
trayvontang2 小时前
Python虚拟环境与包管理工具(uv、Conda)
python·conda·uv·虚拟环境·miniconda·miniforge
伊织code2 小时前
pdfminer.six
python·pdf·图片·提取·文本·pdfminer·pdfminer.six
hqxstudying2 小时前
JAVA项目中邮件发送功能
java·开发语言·python·邮件