Моя модель создает один файл netcdf для каждого временного шага и каждой переменной с именем DDDDDDD.VVV.nc, где DDDDDDD — дата, а VVV — имя переменной.
Для каждого временного шага я использую nco для добавления файлов, соответствующих различным переменным, чтобы получить один файл для каждого временного шага.
#! /bin/bash
# looping on timesteps to merge all variables
# I use one variable 'O2o' to get the list of timesteps
for timesteps in *.O2o.nc;
do
timestep=$(echo $timesteps| cut -b -21)
echo $timestep
for var in $timestep*.nc;
do
ncks -Ah $var 'F1_'$timestep.nc
done
done
Существует около 432 выходных переменных, и каждый файл имеет размер около 6,4 КБ или 1,1 КБ (переменные имеют разное количество измерений).
Я нахожу процесс очень медленным (например, 15 секунд на временной шаг), а файлы очень маленькие. Любая идея, как мне оптимизировать скрипт?