| cat |
| stampa dalla seconda riga in poi. |
| - stampa tutte le linee di un file tranne i commenti (iniziano con '#') |
| cat $FILE | sed -e '/^#/d' |
| - stampa tutte le linee che iniziano con un numero |
| cat $FILE | sed -n "/^[0-9]/p" |
| - stampa tutte le linee che NON iniziano con un numero |
| cat $FILE | sed -n "/^[0-9]/p" |
| - rimuove tutte le linee vuote (costituite solo da \n) |
| cat $FILE | sed -e "/^$/d" |
| - rimuove tutte le linee formate da spazi (e seguite da \n) |
| cat $FILE | sed -e "/^[ ][ ]*$/d" |
| - rimuove tutte le linee che contengono 'exportPIPPO' |
| sed "/export[ | ]*PIPPO/d" $FILE |
| - rimuove il path di un filename |
| echo "/usr/bin/prova" | sed -e "s/.*\///" |
| scrive: prova |
| - scrive solo il path |
| echo "/usr/bin/prova" | sed -e "s/\/[^\/]*$//" |
| scrive: /usr/bin |
| - stampa la 'n'esima riga di un file (nell'esempio la 5a) |
| sed -n -e "5p" $FILE |
| - stampa le righe di un file (nell'esempio dalla 2a alla 5a) |
| sed -n -e "2,5p" $FILE |
| - esempi di sostituzioni: |
| sed "s/\"/ /g" .. sostituisce tutte le '"' con space |
| sed "s/,/ /g" .. sostituisce tutte le ',' con space |
| sed 's:bin::' .. sostituisce il primo 'bin' con nulla |
| - esempi di estrazioni: |
| - id | sed -n "/^uid=[0-9]*(\([^)]*\)).*/s//\1/p" |
| estrae: nome dell'user |
| - echo "-T100" | sed 's/^-T//' |
| estrae: 100 |
| - estrae i campi user e home (il 1o e il 6o) dal file /etc/passwd e formatta: |
| cat /etc/passwd | sed 's/\([^:]*\):.*:\(.*\):[^:]*$/_dir=\2 _user=\1/' |
| scrive: _dir=/ _user=root |
| ... |
| _dir=/home/bellina _user=bellina |
lunedì 30 gennaio 2012
Shell Script esempi SED
Iscriviti a:
Commenti sul post (Atom)
Nessun commento:
Posta un commento