Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

About this user

Antonio http://www.levysoft.it

« Newer Snippets
Older Snippets »
Showing 1-4 of 4 total  RSS 

Check whether current user is owner

current_user=`id | sed 's/uid=[0-9][0-9]*(\([^)]*\)).*/\1/'`

SED examples

// SED examples

- 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

Quale è il comando più semplice per leggere la 3 riga di un file?

// man sed => sed -n n,mp file
Scrive tutte le righe comprese tra n e m.
Segnatamente:

sed -n 3,3p file

Remove the lines that do not contain the word "ebuild"

sed -n -e '/ebuild/p' $temp_file_1 > $temp_file_2
« Newer Snippets
Older Snippets »
Showing 1-4 of 4 total  RSS