我有一个每日netcdf文件(20060101),时间维度有144个步骤,因此文件中有10分钟的时间步长。现在我想用nco为每个10分钟的时间步创建一个netcdf文件。所以最后它应该创建144个文件。
我已经在他们使用
的地方找到了类似的问题 ncks -d time,min,max,stride infile.nc outfile.nc
但我不知道如何编写创建这144个文件的代码。 有人可以帮我弄这个吗? 谢谢你的帮助!
答案 0 :(得分:2)
找到解决方案:
start=1131580800 # first time step in seconds
for f in *_test.nc; do #$files
echo 'Processing' $f
for i in {0..17}; do
time=$(expr $start + 600 \* $i) # calculates the next time step --> 600s correspond to 10 minute steps I wanted to have
time_new=$(date -d @$time '+_%H%M') # extracting the time variable from my file and convert it to use them in the file names
outfile=$(echo $f|sed "s/_level2/$time_new/g")
ncks -d time,$i,$i $f $outfile # split my original file to 10 min steps
done
done