2025-02-11 台州内镜追溯系统合规平台数据补录 #台州肿瘤 #49

Closed
opened 2025-02-11 23:07:10 +08:00 by bigtran · 0 comments
Owner

目前问题

1、政务外网数据推不动,报错

2、互联网推送,需要同步内网数据库到外网,每次操作比较麻烦

3、接口问题还没有彻底解决

v2

#!/bin/bash

# 检查是否提供了足够的参数
if [ $# -lt 2 ]; then
    echo "Usage: $0 <start_date> <end_date>"
    echo "Example: $0 20250117 20250210"
    exit 1
fi

# 从命令行参数获取起始日期和结束日期
start_date=$1
end_date=$2

# 设置日志文件路径
log_file="report_log.txt"

# 清空之前的日志文件(如果需要保留之前的日志,可以注释掉这行)
> "$log_file"

# 将日期格式转换为YYYY-MM-DD,便于使用date命令进行操作
current_date=$(date -d "$start_date" +%Y-%m-%d)
end_date=$(date -d "$end_date" +%Y-%m-%d)

# 检查起始日期是否早于结束日期
if [[ $(date -d "$current_date" +%Y%m%d) -gt $(date -d "$end_date" +%Y%m%d) ]]; then
    echo "Error: start_date must be earlier than or equal to end_date."
    exit 1
fi

# 循环执行命令,直到当前日期超过结束日期
while [[ $(date -d "$current_date" +%Y%m%d) -le $(date -d "$end_date" +%Y%m%d) ]]; do
    # 提取年月日
    year=$(date -d "$current_date" +%Y)
    month=$(date -d "$current_date" +%m)
    day=$(date -d "$current_date" +%d)

    # 组合成需要的日期格式
    formatted_date="${year}${month}${day}"

    # 执行命令并将输出同时写入日志文件和终端
    echo "Executing: ./opm_ectms_report report_zjapi www $formatted_date" | tee -a "$log_file"
    ./opm_ectms_report report_zjapi www "$formatted_date" 2>&1 | tee -a "$log_file"

    # 在日志文件中添加分隔符
    echo "----------------------------------------" | tee -a "$log_file"

    # 日期加1天
    current_date=$(date -d "$current_date + 1 day" +%Y-%m-%d)
done

echo "All reports have been executed. Results are logged in $log_file"

v1

#!/bin/bash

# 设置起始日期和结束日期
start_date=20250117
end_date=20250210

# 设置日志文件路径
log_file="report_log.txt"

# 清空之前的日志文件(如果需要保留之前的日志,可以注释掉这行)
> "$log_file"

# 将日期格式转换为YYYY-MM-DD,便于使用date命令进行操作
current_date=$(date -d "$start_date" +%Y-%m-%d)
end_date=$(date -d "$end_date" +%Y-%m-%d)

# 循环执行命令,直到当前日期超过结束日期
while [[ $(date -d "$current_date" +%Y%m%d) -le $(date -d "$end_date" +%Y%m%d) ]]; do
    # 提取年月日
    year=$(date -d "$current_date" +%Y)
    month=$(date -d "$current_date" +%m)
    day=$(date -d "$current_date" +%d)

    # 组合成需要的日期格式
    formatted_date="${year}${month}${day}"

    # 执行命令并将输出同时写入日志文件和终端
    echo "Executing: ./opm_ectms_report report_zjapi www $formatted_date" | tee -a "$log_file"
    ./opm_ectms_report report_zjapi www "$formatted_date" 2>&1 | tee -a "$log_file"

    # 在日志文件中添加分隔符
    echo "----------------------------------------" | tee -a "$log_file"

    # 日期加1天
    current_date=$(date -d "$current_date + 1 day" +%Y-%m-%d)
done

echo "All reports have been executed. Results are logged in $log_file"

image

## 目前问题 ### 1、政务外网数据推不动,报错 ### 2、互联网推送,需要同步内网数据库到外网,每次操作比较麻烦 ### 3、接口问题还没有彻底解决 ## v2 ``` #!/bin/bash # 检查是否提供了足够的参数 if [ $# -lt 2 ]; then echo "Usage: $0 <start_date> <end_date>" echo "Example: $0 20250117 20250210" exit 1 fi # 从命令行参数获取起始日期和结束日期 start_date=$1 end_date=$2 # 设置日志文件路径 log_file="report_log.txt" # 清空之前的日志文件(如果需要保留之前的日志,可以注释掉这行) > "$log_file" # 将日期格式转换为YYYY-MM-DD,便于使用date命令进行操作 current_date=$(date -d "$start_date" +%Y-%m-%d) end_date=$(date -d "$end_date" +%Y-%m-%d) # 检查起始日期是否早于结束日期 if [[ $(date -d "$current_date" +%Y%m%d) -gt $(date -d "$end_date" +%Y%m%d) ]]; then echo "Error: start_date must be earlier than or equal to end_date." exit 1 fi # 循环执行命令,直到当前日期超过结束日期 while [[ $(date -d "$current_date" +%Y%m%d) -le $(date -d "$end_date" +%Y%m%d) ]]; do # 提取年月日 year=$(date -d "$current_date" +%Y) month=$(date -d "$current_date" +%m) day=$(date -d "$current_date" +%d) # 组合成需要的日期格式 formatted_date="${year}${month}${day}" # 执行命令并将输出同时写入日志文件和终端 echo "Executing: ./opm_ectms_report report_zjapi www $formatted_date" | tee -a "$log_file" ./opm_ectms_report report_zjapi www "$formatted_date" 2>&1 | tee -a "$log_file" # 在日志文件中添加分隔符 echo "----------------------------------------" | tee -a "$log_file" # 日期加1天 current_date=$(date -d "$current_date + 1 day" +%Y-%m-%d) done echo "All reports have been executed. Results are logged in $log_file" ``` ## v1 ``` #!/bin/bash # 设置起始日期和结束日期 start_date=20250117 end_date=20250210 # 设置日志文件路径 log_file="report_log.txt" # 清空之前的日志文件(如果需要保留之前的日志,可以注释掉这行) > "$log_file" # 将日期格式转换为YYYY-MM-DD,便于使用date命令进行操作 current_date=$(date -d "$start_date" +%Y-%m-%d) end_date=$(date -d "$end_date" +%Y-%m-%d) # 循环执行命令,直到当前日期超过结束日期 while [[ $(date -d "$current_date" +%Y%m%d) -le $(date -d "$end_date" +%Y%m%d) ]]; do # 提取年月日 year=$(date -d "$current_date" +%Y) month=$(date -d "$current_date" +%m) day=$(date -d "$current_date" +%d) # 组合成需要的日期格式 formatted_date="${year}${month}${day}" # 执行命令并将输出同时写入日志文件和终端 echo "Executing: ./opm_ectms_report report_zjapi www $formatted_date" | tee -a "$log_file" ./opm_ectms_report report_zjapi www "$formatted_date" 2>&1 | tee -a "$log_file" # 在日志文件中添加分隔符 echo "----------------------------------------" | tee -a "$log_file" # 日期加1天 current_date=$(date -d "$current_date + 1 day" +%Y-%m-%d) done echo "All reports have been executed. Results are logged in $log_file" ``` ![image](/attachments/93921326-2732-4e2f-ace7-4a79ec83b89b)
276 KiB
bigtran self-assigned this 2025-02-11 23:21:49 +08:00
Sign in to join this conversation.