lug
29
One-liners per veri geek Linux
Pubblicato da giuliastro in Linux, Varie
Il vero geek Linux ha bisogno della sua dose periodica di one-liners. Anche questa, nonostante l’apparenza fredda e criptica del codice, è a tutti gli effetti espressione di una vera forma d’arte.

Il numero dei files nella directory corrente:
ls | wc -l
I 5 processi che occupano più CPU:
ps -eo user,pcpu,pid,cmd | sort -r -k2 | head -6
Tutti gli utenti della macchina in ordine alfabetico:
cat /etc/passwd | sort
Lo stesso comando, ma solo gli utenti:
cat /etc/passwd | sort | cut -d":" -f1
Lo stesso comando, ma solo gli utenti "umani":
cat /etc/passwd | sort | gawk ‘$3 >= 500 {print $1 }’ FS=":"
Copiare tutti i file con una certa estensione (es: .php) cambiando estensione (es: .bkp):
for f in *.php; do cp $f $f.bkp; done
Copiare file da una macchina all'altra usando ssh e tar:
tar cf - . | ssh smith@remote.server tar xfp - -C /usr/backup/smith
Suggerimento, utilizzare questi one-liners con un alias:
alias p5="ps -eo pcpu,user,pid,cmd | sort -r | head -6"
Fonte: Linux.com
Tag: cli, linea di comando, Linux, shell, Trucchi.
Oppure leggi altri nostri articoli:




Utili. Grazie.
hamen
Beh, fate attenzione, quotate opportunamente le variabili negli shell scripts per evitare sorprese in caso di spazi e caratteri strani nel nome del file:
for f in *.php; do cp “$f” “$f.bkp”; done
o, volendo esagerare con le precauzioni, addirittura:
for f in *.php; do cp “${f}” “${f}.bkp”; done
Ciao ciao,
Antonio
giusto, grazie per la precisazione Antonio.
Ciao, generalizzo un po’ questa riga :
for f in *.php; do cp “${f}” “${f/php/php-old}”; done
${f/php/php-old} non e’ altro che $f in cui e’ stata operata una sostituzione,
puo essere utile per rinominare JPG in jpg o AVI in avi, e altre amenita’ varie,
ciauz
@allanon
Cosi’ facendo pero’ non rischi di sostituire la stringa anche se e’ all’interno del nome del file?