d.s.

agosto 3, 2010

Il search and replace in linux: find e sed

Filed under: Uncategorized — Tag:, , , — admin @ 00:33:20

Visto che mi è capitato di doverlo fare, ricordiamoci con si fa il trova e sostituisci (search and replace) all’interno di files in linux.

Quindi il search and replace all’interno di tutti i files a partire dalla directory corrente in linux si fa così:

find ./ -type f | xargs sed -i ‘s/string1/string2/’

(sidenote: sostituite le virgolette che wordpress di ostina a voler scrivere(‘), con l’apice singolo normale)

Questo comando cerca (comando find), ricorsivamente, tutti i file (parametro -type f) a partire dalla directory corrente(parametro ./), e li passa come input (| xargs) a sed che provvede ad applicare la sostituzione di string1 con string2 all’interno del file in lavorazione.

L’unica cosa, se nelle cartelle sottostanti ci dovesse essere qualche file/cartella con spazi nei nomi (si, a volte capita, lol) il comando precedente restituisce un errore e passa al successivo, in quanto ogni singolo termine viene inviato come input a sed, che quindi non trova il file e ci avverte.

Un altro metodo, che forse fa risparmiare un po’ di risorse (ma non è detto eh) è il seguente:

grep -rl ‘string1′ /percorso/alla/cartella/ | xargs sed -i ‘s/string1/string2/’

Il concetto è molto simile al precedente con la diversità che questo comando cerca, e passa come parametro, solo i files che contengono la stringa da sostituire e li passa a sed, che effettua la sostituzione: questa prima operazione è fatta dal comando ‘grep‘ di cui, tra l’altro avevo già parlato eoni fa (lol).

settembre 1, 2008

Estrazione di file da un tar.gz

Filed under: Uncategorized — admin @ 12:15:02

Chiaramente prima o poi doveva capitare:serve un file di backup contenuto in un tar.gz di 16GB. Chiaramente se estraggo tutto ci metto una follia, e cade l’essenza stessa di avere un backup se non posso recuperare, in un tempo ragionevole, i dati.

Ecco che allora, comunque, linux mi viene in soccorso e mi dice che:

tar -zxvf mytar.ball.tar.gz directory-name

estrae la directory “directory-name” dal file.

Mentre se volgio estrarlo in una posizione specifica (mettiamo sia la /tmp) devo lanciare:

tar -zxvf mytar.ball.tar.gz -C /tmp filename
tar -zxvf mytar.ball.tar.gz -C /tmp dir-name

A seconda che io debba estrarre un file o una directory.

Bon, adesso provo, se non è così edito e vi faccio sapere,

Ciao Ciao

aprile 17, 2008

Il Grep di Linux

Filed under: Uncategorized — Tag:, , — admin @ 11:53:54

Siccome me lo dimentico sempre lo scrivo qui, in modo che sia facilmente reperibile.
Insomma….se devi cercare tutti i files che contengono un determinato testo devi lanciare questo comando:

grep testo * -rin

e magicamente ti restituisce tutti i files, a partire dalla directory corrente, che contengono la parola ‘testo’ indicandone la riga. State attenti se lanciate il suddetto comando dalla root del filesystem…magari ci metterà un po’. Inoltre, probabilmente, si dovranno utilizzare i caratteri di escape per i caratteri speciali, come il punto, quindi se volete cercare testo.qualcosa dovrete scrivere:

grep testo\.qualcosa * -rin

Bene bene….vi saluto, ciao ciao:)

febbraio 7, 2008

E così iniziamo….

Filed under: Uncategorized — Tag: — admin @ 13:32:57

Si, oggi finalmente scrivo il mio primo posto nel blog. A dire il vero non so bene di preciso cosa inserirò e/o commenterò. Userò questo spazio come repository per tutti quei link, suggerimenti che mi possono sempre tornare utili…ed essendo estremamente smemorato, ho la necessità di aver un posto, più o meno fisso, dove so che posso trovare ciò che mi serve.
Ma, direte voi, di che si parlerà?mmm…bella domanda (me la sono posta pure io quando ho deciso di farmi un blog). Sicuramente di informatica in genere, e poi, perché no, se scopro notizie interessanti su WoW ve le posto (anche se ci sn già comunque siti sicuramente migliori dove recuperare info in merito, tipo mmo-champion, oppure wowhead giusto per citarne due).
Bene, ora che ho scritto una scarsa introduzione al blog, e mi sento in pace con la coscienza, posso andare a prendere un caffè che tra poco ritorno a lavorare.

Buon pomeriggio e saluti :)

Powered by WordPress