RDB

creation d'un fichier rdb

echo mission > test.rdb
echo ------- >> test.rdb

rajout d'un champ
addcol date_UT < qq.rdb

creation d'un script qui ecrit les headers make_rdb_header

editer un fichier rdb existant avec rdbedit

pour visualiser facilement a l'ecran un fichier rdb
cat optique_adaptative.rdb | justify | trim
 

fixtotable object=1,16 program=17,14 filter=31,12 flag1=43,11 seeing=54,14 mission=68,8 < ../2001.txt > qq.rdb
cat qq.rdb | rmblank > qqq.rdb

append optique_adaptative.rdb < qqq.rdb

Trier des chaine de caractere
sorttable object < optique_adaptative.rdb > optique_adaptative_all.rdb
 

soffice permet de gerer les separation ; espace ou tabulation

modifie le champ pose_Sat_NonSat si le champ filter contient la "(sat)"
cat qqq.rdb | compute 'if (filter~"(sat)")  pose_Sat_NonSat="Saturee"' > tmp.rdb

remplace les cellules vide d'un champ par tiret
cat qqq.rdb | compute 'if (champ~"")  champ="-"' > tmp.rdb
 

cat prima.rdb | addcol RA_hms DEC_dms RA_deg DEC_deg Vmag mass_primary | \
compute 'RA_hms=a1'|\
compute 'DEC_dms=a2'|\
compute 'RA_deg=sprintf("%8.3f",a4)' |\
compute 'DEC_deg=sprintf("%8.3f",a5)'|\
compute 'Vmag=sprintf("%8.2f",a3)'|\
compute 'Mv=sprintf("%8.2f",Mv)'|\
compute 'Dpc=sprintf("%8.2f",Dpc)'|\
compute 'a_au=sprintf("%8.2f",a_au)'|\
compute 'P=sprintf("%8.2f",P)'|\
compute 'ecc=sprintf("%8.2f",ecc)'|\
compute 'astrometrique_signature=sprintf("%8.2f",astrometrique_signature)'|\
compute 'mass_primary=sprintf("%8.2f",masses)'|\
compute ''
column object  RA_hms DEC_dms RA_deg DEC_deg Vmag  Mv   Dpc  mass_primary component Msini a_au P ecc astrometrique_signature |justify|trim




EXTRACTION NOMBRE LIGNES WC

 set nlignes=`wc -l file_name | tr -s " \t" "  " | cut -d " " -fXXX`

  tr -s " \t" "  ": remplace les blancs ou tabs (ou combinaison) par 2 blancs
  cut -d " ": extrait les champs separes par des blancs
  -fXXX: prend le XXXeme champ resultant

  voir aussi script exemple ~naef/scripts/wc_extract
 

commande:

wc -l file_name  | tr -s " \t" "  " | cut -d " " -fXXX

XXX=1  ==> nombre de lignes
XXX=2  ==> nombre de mots
XXX=3  ==> nombre de caracteres
 
 
 

STTO.rdb contient juste 2 headers
Id    Nmes
--    ----

cp STTO.rdb stto.rdb
foreach qq (`cat new_melo_12pc.rdb | column Id| headoff`)
         set bb = `cat OA_catalogue_update.rdb | row 'Id=="'$qq'"' | headoff|wc -l | tr -s " \t" "  " | cut -d " " -f2`
     echo $qq"\t"$bb >> stto.rdb
end
 
 

cp toto.tmp q.tmp
chmod u=rwx q.tmp
foreach i (`ls *.vrad`)
set j = `echo $i|sed "s/.vrad//"`
echo $i $j
cat $i | addcol Id |  compute 'Id="'$j'"'| rmblank  |addcol instrument | compute 'instrument="coravel"' | headoff >> q.tmp
end
 
 
 

cat q.rdb | \
compute 'if (comp==2) vfit2=vfit'|\
compute 'if (comp==2) vfit=""'|\
compute 'if (comp==2) SigVr2=SigVr1'|\
compute 'if (comp==2) SigVr1=""'|\
compute 'if (comp==2) sigfit2=sigfit
compute 'if (comp==2) sigfit=""'|\
compute 'if (comp==2) ampfit2=ampfit
compute 'if (comp==2) ampfit=""' \
 > qq.rdb