From 88fa74c2db0a316c52df22d6ee407b658e3d26fd Mon Sep 17 00:00:00 2001 From: Guillaume S <gsamson@mercator-ocean.fr> Date: Mon, 26 Aug 2024 15:46:18 +0200 Subject: [PATCH] fix for multi months --- full_prod.sh | 2 +- move_to_perm.sh | 2 +- subjob_ablhpg.sh | 2 +- subjob_ablvint.sh | 2 +- subjob_cdogrid.sh | 4 ++-- subjob_cdomiss.sh | 4 ++-- subjob_cdosplit.sh | 2 +- subjob_mars.sh | 8 ++++---- subjob_ncochunk.sh | 6 +++--- 9 files changed, 16 insertions(+), 16 deletions(-) diff --git a/full_prod.sh b/full_prod.sh index 547d9bd..cc2f402 100755 --- a/full_prod.sh +++ b/full_prod.sh @@ -1,5 +1,5 @@ #!/bin/bash - + set +xv diff --git a/move_to_perm.sh b/move_to_perm.sh index 5ceaebe..c980854 100755 --- a/move_to_perm.sh +++ b/move_to_perm.sh @@ -40,7 +40,7 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do if [ ${date} -eq ${date_end} ]; then if [ ${#var_list[@]} -gt 1 ]; then - file_nb=$( eval "ls ${DIR_SAVE}/{$(tr ' ' ',' <<< ${var_list[*]^^})}/ERA5_L50Z10_{$(tr ' ' ',' <<< ${var_list[*]^^})}_1H_extrap_y${date:0:4}m${date:4:2}d{${date_beg:6:2}..${date_end:6:2}}.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${DIR_SAVE}/{$(tr ' ' ',' <<< ${var_list[*]^^})}/ERA5_L50Z10_{$(tr ' ' ',' <<< ${var_list[*]^^})}_1H_extrap_y${date:0:4}m{${date_beg:4:2}..${date_end:4:2}}d{${date_beg:6:2}..${date_end:6:2}}.nc 2>/dev/null" | wc -l ) else file_nb=$( eval "ls ${DIR_SAVE}/${var_list[*]^^}/ERA5_L50Z10_${var_list[*]^^}_1H_extrap_y${date:0:4}m${date:4:2}d{${date_beg:6:2}..${date_end:6:2}}.nc 2>/dev/null" | wc -l ) fi diff --git a/subjob_ablhpg.sh b/subjob_ablhpg.sh index 17ca76c..9d60a49 100755 --- a/subjob_ablhpg.sh +++ b/subjob_ablhpg.sh @@ -37,7 +37,7 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do while [[ ${date} -eq ${date_end} && $(squeue -u $USER -h -t pending,running -r -o '%20j' | grep ablhpg_${ym} | wc -l) -gt 0 ]]; do echo "sleeping..."; sleep 10; done if [ ${date} -eq ${date_end} ]; then - file_nb=$( eval "ls ${d2D}/${fhpg/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${d2D%/*}/{${date_beg:0:6}..${date_end:0:6}}/${fhpg/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [ ${nbday} -eq ${file_nb} ]; then echo "-ABL_HPG: OK" else diff --git a/subjob_ablvint.sh b/subjob_ablvint.sh index cb652ca..c76f37e 100755 --- a/subjob_ablvint.sh +++ b/subjob_ablvint.sh @@ -40,7 +40,7 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do while [[ ${date} -eq ${date_end} && $(squeue -u $USER -h -t pending,running -r -o '%20j' | grep ablvint${var_name:+"_${var_name}"}_${ym} | wc -l) -gt 0 ]]; do echo "sleeping..."; sleep 10; done if [ ${date} -eq ${date_end} ]; then - file_nb=$( eval "ls ${d2D}/${var_name:+"${var_name}_"}${fabl/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${d2D%/*}/{${date_beg:0:6}..${date_end:0:6}}/${var_name:+"${var_name}_"}${fabl/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [ ${nbday} -eq ${file_nb} ]; then echo "-ABL_VINT: OK" else diff --git a/subjob_cdogrid.sh b/subjob_cdogrid.sh index 64c3755..8a09069 100755 --- a/subjob_cdogrid.sh +++ b/subjob_cdogrid.sh @@ -51,13 +51,13 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do while [[ ${date} -eq ${date_end} && $(squeue -u $USER -h -t pending,running -r -o '%20j' | grep cdogrid.D_${ym} | wc -l) -gt 0 ]]; do echo "sleeping..."; sleep 10; done if [ ${date} -eq ${date_end} ]; then - file_nb=$( eval "ls ${dout}/${f2D/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${dout%/*}/{${date_beg:0:6}..${date_end:0:6}}/${f2D/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [ ${nbday} -eq ${file_nb} ]; then echo "-CDO_GRID2D: OK" else echo "-CDO_GRID2D: ERROR"; exit 1 fi - file_nb=$( eval "ls ${dout}/${f3D/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${dout%/*}/{${date_beg:0:6}..${date_end:0:6}}/${f3D/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [ ${nbday} -eq ${file_nb} ]; then echo "-CDO_GRID3D: OK" else diff --git a/subjob_cdomiss.sh b/subjob_cdomiss.sh index 18ec82f..480a7fc 100755 --- a/subjob_cdomiss.sh +++ b/subjob_cdomiss.sh @@ -43,9 +43,9 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do if [ ${date} -eq ${date_end} ]; then if [ ${#var_list[@]} -gt 1 ]; then - file_nb=$( eval "ls ${d}/{$(tr ' ' ',' <<< ${var_list[*]})}_${f/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}_misstodis.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${d%/*}/{${date_beg:0:6}..${date_end:0:6}}/{$(tr ' ' ',' <<< ${var_list[*]})}_${f/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}_misstodis.nc 2>/dev/null" | wc -l ) else - file_nb=$( eval "ls ${d}/${var_list[*]}_${f/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}_misstodis.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${d%/*}/{${date_beg:0:6}..${date_end:0:6}}/${var_list[*]}_${f/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}_misstodis.nc 2>/dev/null" | wc -l ) fi if [ $((nbday*${#var_list[@]})) -eq ${file_nb} ]; then echo "-CDO_MISS: OK" diff --git a/subjob_cdosplit.sh b/subjob_cdosplit.sh index feea2a9..5aac86e 100755 --- a/subjob_cdosplit.sh +++ b/subjob_cdosplit.sh @@ -43,7 +43,7 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do while [[ ${date} -eq ${date_end} && $(squeue -u $USER -h -t pending,running -r -o '%20j' | grep cdosplit_${ym} | wc -l) -gt 0 ]]; do echo "sleeping..."; sleep 10; done if [ ${date} -eq ${date_end} ]; then - file_nb=$( eval "ls ${dabl}/{$(tr ' ' ',' <<< ${var_list[*]})}_${fabl/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${dabl%/*}/{${date_beg:0:6}..${date_end:0:6}}/{$(tr ' ' ',' <<< ${var_list[*]})}_${fabl/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [ $((nbday*var_nb)) -eq ${file_nb} ]; then echo "-CDO_SPLIT: OK" else diff --git a/subjob_mars.sh b/subjob_mars.sh index 4692b9e..b131e05 100755 --- a/subjob_mars.sh +++ b/subjob_mars.sh @@ -39,12 +39,12 @@ for d in $(seq -f "%02g" 0 $((nbday-1))); do # TEST ALL FILES ARE PRODUCED if [ ${date} -eq ${date_end} ]; then - fnb=$( eval "ls ${dout}/${f3D/${date}.grib/${ym}{${date_beg:6:2}..${date_end:6:2}}}.grib 2>/dev/null" | wc -l ) - nnb=$( eval "ls ${dreg}/${n3D/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + fnb=$( eval "ls ${dout%/*}/{${date_beg:0:6}..${date_end:0:6}}/${f3D/${date}.grib/*{${date_beg:6:2}..${date_end:6:2}}}.grib 2>/dev/null" | wc -l ) + nnb=$( eval "ls ${dreg%/*}/{${date_beg:0:6}..${date_end:0:6}}/${n3D/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [[ ${nbday} -eq ${fnb} || ${nbday} -eq ${nnb} ]]; then echo "-MARS_INST3D: OK"; else echo "-MARS_INST3D: ERROR"; exit 1; fi - fnb=$( eval "ls ${dout}/${f2D/${date}.grib/${ym}{${date_beg:6:2}..${date_end:6:2}}}.grib 2>/dev/null" | wc -l ) - nnb=$( eval "ls ${dreg}/${n2D/${date}.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) + fnb=$( eval "ls ${dout%/*}/{${date_beg:0:6}..${date_end:0:6}}/${f2D/${date}.grib/*{${date_beg:6:2}..${date_end:6:2}}}.grib 2>/dev/null" | wc -l ) + nnb=$( eval "ls ${dreg%/*}/{${date_beg:0:6}..${date_end:0:6}}/${n2D/${date}.nc/*{${date_beg:6:2}..${date_end:6:2}}}.nc 2>/dev/null" | wc -l ) if [[ ${nbday} -eq ${fnb} || ${nbday} -eq ${nnb} ]]; then echo "-MARS_SURF2D: OK"; else echo "-MARS_SURF2D: ERROR"; exit 1; fi fi diff --git a/subjob_ncochunk.sh b/subjob_ncochunk.sh index 4f81fd7..6c526c0 100755 --- a/subjob_ncochunk.sh +++ b/subjob_ncochunk.sh @@ -42,11 +42,11 @@ done while [[ ${date} -eq ${date_end} && $(squeue -u $USER -h -t pending,running -r -o '%20j' | grep ncochunk_${ym} | wc -l) -gt 0 ]]; do echo "sleeping..."; sleep 10; done if [ ${date} -eq ${date_end} ]; then - fall=${f/${date}_misstodis.nc/${ym}{${date_beg:6:2}..${date_end:6:2}}}_misstodis_cnk64.nc + fall=${f/${date}_misstodis.nc/*{${date_beg:6:2}..${date_end:6:2}}}_misstodis_cnk64.nc if [ ${#var_list[@]} -gt 1 ]; then - file_nb=$( eval "ls ${d}/{$(tr ' ' ',' <<< ${var_list[*]})}_${fall} 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${d%/*}/{${date_beg:0:6}..${date_end:0:6}}/{$(tr ' ' ',' <<< ${var_list[*]})}_${fall} 2>/dev/null" | wc -l ) else - file_nb=$( eval "ls ${d}/${var_list[*]}_${fall} 2>/dev/null" | wc -l ) + file_nb=$( eval "ls ${d%/*}/{${date_beg:0:6}..${date_end:0:6}}/${var_list[*]}_${fall} 2>/dev/null" | wc -l ) fi if [ $((nbday*${#var_list[@]})) -eq ${file_nb} ]; then echo "-NCO_CHUNK: OK" -- GitLab