ESEMPI DELL’USO DEL SED IN LINUX

Click to rate this post!
[Total: 1 Average: 4]

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

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

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x