Commit 78783ce9 authored by Sergio Bruni's avatar Sergio Bruni
Browse files

m

parent 5c54f1b5
#### Scarica via ftp tutti i file mtrz.* dalle cartelle 2017,2018,2019 ricreando in locale la stessa alberatura remota. Attenzione con l'opzione -N effettua la sovrascrittura dei file esistenti
```
wget --user=enrico.serpelloni --password='serpelloni' -N -r -nH --cut-dirs=3 -A "mtrz*" ftp://bancadati2.gm.ingv.it/OUTGOING/RINEX30/RING/2019
```
#### copia in background via http di una intera cartella da gatbo
`nohup wget -r -nH --cut-dirs=2 --no-parent -R "index.html*" http://gat.bo.ingv.it/rinex/NETS/RGAPA/ --http-user=gnssdata --http-password=nasspritz > nohup_rgapa.out 2>&1 &`
```
nohup wget -r -nH --cut-dirs=2 --no-parent -R "index.html*" http://gat.bo.ingv.it/rinex/NETS/RGAPA/ --http-user=gnssdata --http-password=nasspritz > nohup_rgapa.out 2>&1 &
```
#### copia in background di una intera cartella tra due macchine
```
nohup scp -rp gpsdata@adria:/data/rinex/albania ./ALBANIA > nohup.out.albania 2>&1 &
```
`nohup scp -rp gpsdata@adria:/data/rinex/albania ./ALBANIA > nohup.out.albania 2>&1 &`
##### idem con password:
```
`nohup sshpass -p "sergiobruni" scp -rp sergio@car:/home/bernese/MERGENETS/GATBO/ITACYL ./ITACYL &`
```
#### copia le cartelle dir1, dir2, ..., dirn con scp
`scp -rp gpsdata@adria:/data/rinex/albania/\{dir1, dir2, ...dirn\} .`
```
scp -rp gpsdata@adria:/data/rinex/albania/\{dir1, dir2, ...dirn\} .
```
#### impostazione ricorsiva su tutte le cartellersynch
`find . -type d -exec chmod 755 {} \;`
```
find . -type d -exec chmod 755 {} \;
```
#### impostazione ricorsiva su tutti i file
`find . -type f -exec chmod 644 {} \;`
```
`find . -type f -exec chmod 644 {} \;
```
`
#### cambia da uppercase a lower case tutti i file, esclusa l'estensione
`find . -type f -exec rename -v 's/(\w+).(\w+)$/\U$1\E.$2/' {} \;`
```
find . -type f -exec rename -v 's/(\w+).(\w+)$/\U$1\E.$2/' {} \;
```
#### altro modo per correggere i rinex con il codice stazione maiuscolo
```
find . -type f -name '*.[0-9][0-9][Dd].Z' -exec rename -v 's/(\w+).(\w+).(\w)$/\L$1.\L$2.\U$3/' {} \;
```
#### come sopra ma i file hanno un ulterione punto in mezzo. tipo AAAA1990.12d.Z
`find . -type f -exec rename -v 's/(\w+\.\w+).(\w+)$/\L$1\E.$2/' {} \;`
```
find . -type f -exec rename -v 's/(\w+\.\w+).(\w+)$/\L$1\E.$2/' {} \;
```
#### Ricerca di tutti i file rinex2 con il nome non corretto
......@@ -53,21 +98,35 @@ nohup find . -type f \( -name '[A-Z]*' -o -name '?[A-Z]*' -o -name '??[A-Z]*' -o
#### NAT locale che redirige 10.140.0.158 verso 127.0.0.1
`sudo iptables -t nat -A OUTPUT -d 10.140.0.158 -j DNAT --to 127.0.0.1`
```
sudo iptables -t nat -A OUTPUT -d 10.140.0.158 -j DNAT --to 127.0.0.1
```
##### per listare le regole correnti:
```
`sudo iptables -t nat -L -n`
```
per cancellare una regola metti -D al posto di -A
#### copia ricorsivamente con sovrascrittura tutti i file della prima cartella nella seconda
`rsync -av /mnt/data/archive/rinex/CGPS/TMP_NETS/CAR_MERGED/EMILIA/ /mnt/data/archive/rinex/CGPS/NETS/EMILIA`
```
`rsync -av /mnt/data/archive/rinex/CGPS/TMP_NETS/CAR_MERGED/EMILIA/ /mnt/data/archive/rinex/CGPS/NETS/EMILIA
```
`
##### stesso comando con la cartella sorgente remota
```
`rsync -av sergio@car:/home/bernese/MERGENETS/MERGED/EMILIA/ /mnt/data/archive/rinex/CGPS/NETS/EMILIA`
```
#### copia tutti i file dalla cartella remota gpsdata@callisto:/data/rinex/metrica/ alla cartella locale ./METRICA/ saltando quelli gia esistenti a meno che più recenti sulla cartella remota
......@@ -76,48 +135,88 @@ il backup ha una tilde davanti
fonte: https://superuser.com/questions/547282/which-is-the-rsync-command-to-smartly-merge-two-folders
```
`rsync -aviuzP gpsdata@callisto:/data/rinex/metrica/ ./METRICA/`
```
#### Cerca nel file wasnotfound tutte le stringhe: 'Station with marker "???"' e ne visualizza la DISTINCT
`grep --only-matching 'Station with marker ".*"' wasnotfound | sort --unique`
`
```
grep --only-matching 'Station with marker ".*"' wasnotfound | sort --unique`
```
#### Cerca in tutti i file *.populateT2.py.20180915.out le stringhe che verificano regex 'Station with marker ".*"' e poi effettua la distinct sul quarto campo
```
`grgrep --only-matching 'Station with marker ".*"' *.populateT2.py.20180915.out | awk '{print $4}' | sort --unique`
```
#### esempio di lancio de populateRinex.py
`python populateRinex.py -n italpos -r /mnt/data/archive/rinex/CGPS/NETS -s /mnt/data/archive/rinex/CGPS/STATIONS_LIST`
```
`python populateRinex.py -n italpos -r /mnt/data/archive/rinex/CGPS/NETS -s /mnt/data/archive/rinex/CGPS/STATIONS_LIST
```
`
#### trasformazione di tutti i file xxxx.yyo.gz in xxxx.yy.d.Z
```
`find -iname '.??o.gz' -execdir gunzip {} \;`
`find -iname '.??o' -execdir RNX2CRX {} \;`
`find -iname '*.??d' -execdir compress {} \;`
`find -iname '*.??d' -execdir compress {} \;
```
========================================================
#### Cerca tutti file non in formato rinex corretto
```
`find . -type f -not -name '[abcdefghijklmnopqrstuvwxyz0123456789][abcdefghijklmnopqrstuvwxyz0123456789][abcdefghijklmnopqrstuvwxyz0123456789][abcdefghijklmnopqrstuvwxyz0123456789_][0-9][0-9][0-9]0.[0-9][0-9]d.Z' | grep '.*/[0-9][0-9][0-9][0-9]/[0-9][0-9][0-9]/*'`
```
#### spazio occupato in kilo bytes per ogni DOY di una rete
(va lanciato posizionandosi nella cartella della rete)
`du --max-depth=2 | perl -n -e 'END { foreach my $key ( sort keys %result ) {print "$key: $result{$key}\n"} } if ( ($bytes, $year, $doy) = /(\d+)\s+\.\/(\d{4})\/(\d{3})/) {$result{$doy}+=$bytes;}'`
`
```
du --max-depth=2 | perl -n -e 'END { foreach my $key ( sort keys %result ) {print "$key: $result{$key}\n"} } if ( ($bytes, $year, $doy) = /(\d+)\s+\.\/(\d{4})\/(\d{3})/) {$result{$doy}+=$bytes;}'`
```
#### totale dello spazio occupato (in kilo bytes) per ogni ANNO da tutte le reti. Va lanciato dalla cartella root delle reti
`du --max-depth=2 | perl -n -e 'END { foreach my $key ( sort keys %result ) {print "$key: $result{$key}\n"} } if ( ($bytes, $net, $year) = /(\d+)\s+\.\/(\w+)\/(\d{4})/) {$result{$year}+=$bytes; print "$net, $year, $bytes\n"}'`
```
`du --max-depth=2 | perl -n -e 'END { foreach my $key ( sort keys %result ) {print "$key: $result{$key}\n"} } if ( ($bytes, $net, $year) = /(\d+)\s+\.\/(\w+)\/(\d{4})/) {$result{$year}+=$bytes; print "$net, $year, $bytes\n"}'
```
`
#### cambia i primi quattro caratteri dei file che iniziano per trie in trse
`find . -name 'trie*' -exec bash -c 'mv $0 ${0/trie/trse}' {} \;`
```
`find . -name 'trie*' -exec bash -c 'mv $0 ${0/trie/trse}' {} \;
```
`
#### lanciato su gnssgiving copia da ginssgiving a cab tutte le cartelle /NETS/RETE/ANNO
```
rsync -av -e ssh --exclude='/\*/\*/\*/\*/' --exclude='*.log' --exclude='*.tar' --exclude='*.info' --exclude='*.stf' --exclude='*.txt' /mnt/data/archive/rinex/CGPS/NETS sergio@cab.int.ingv.it:/home/sergio
```
......@@ -139,3 +238,21 @@ find . -name 'drag????.16d.Z' -exec bash -c '7z x -o$(dirname "{}") {}' \;
#### Cerca le coppie stazione/rete alle quali sono associati dei rinex e per le quali non è presente il legame tra stazione e rete su tabella station_network
```
select id_station, id_network
from (
select t.id_station, t.id_network from (
select r.id, r.id_station, max(rn.id_network) id_network
from rinex_file r
JOIN rinex_file_network rn on rn.id_rinex_file=r.id
GROUP by r.id
) t
left join station_network sn
ON sn.id_station=t.id_station AND sn.id_network=t.id_network
where sn.id_station IS NULL
) t1
group by id_station, id_network
```
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment