Мне нужно изменить заголовок пары сотен файлов, добавив vdate из его заголовка в заголовок.
Если vdate = 19971222 , тогда мне нужно имя этогоnc файл становится rerun4_spindown_19971222.nc
Я знаю, что могу найти vdate по ncdump -h filename
(см. пример заголовка ниже).
ncdump -h rerun4_1997_spindown_09191414_co2
netcdf rerun4_1997_spindown_09191414_co2 {
dimensions:
lon = 768 ;
lat = 384 ;
nhgl = 192 ;
nlevp1 = 96 ;
spc = 32896 ;
// global attributes:
:file_type = "Restart history file" ;
:source_type = "IEEE" ;
:history = "" ;
:user = " Linda" ;
:created = " Date - 20190919 Time - 134447" ;
:label_1 = " Atmospheric model " ;
:label_2 = " Library 23-Feb-2012" ;
:label_3 = " Lin & Rood ADVECTION is default" ;
:label_4 = " Modified physics" ;
:label_5 = " Modified radiation" ;
:label_6 = " Date - 20190919 Time - 134447" ;
:label_7 = " Linda " ;
:label_8 = " Linux " ;
:fdate = 19950110 ;
:ftime = 0 ;
:vdate = 19971222 ;
:vtime = 235800 ;
:nstep = 776158 ;
:timestep = 120. ;
Однако тогда я должен вручную открыть все файлы и вручную изменить заголовок файла ... из сотен файлов. Я бы предпочел сделать bash, который может сделать это автоматически.
Я уверен, что должен быть более разумный способ извлечь vdate из заголовка nc, не могли бы вы, ребята, помочь мне?
Спасибо!