Linux a ferramenta para gestores

Muitos pensam neste SO como uma ferramenta apenas para servidores e mais uma vez surpreendi alguns a mostrar que serve também para gerir e integrar dados com todas as ferramentas que disponibiliza de raiz.

Por exemplo copy paste de uma listagem e com 3 comandos obter todos os dados necessários e no final passar para o formato csv, com recurso ao cat, awk, sed, sort, bash, grep e wc. Podia ter aprumado um pouco mais e ter ido obter dados que me eram necessários da web com perl mas não foi preciso ir até esse ponto.

give me a shell

ls -l  | awk ‘{ system(“chown -R “$3” “$8) }’

//cuidado com directorios que contenham espaços doens’t work with spaces ;

find /home/ -uid 0 -exec ls -l \{\} \;

fgrep ‘gold’ /var/log/ -R | grep -i something

or regexp style search
egrep ‘(err|fail|warning)’ /var/log/* > `date +%F`.txt

ls -l  | sed -e ‘s/andre/netcrash/gi’

#!/usr/bin/perl

print “hello\n”;
$dir=”/home/andre”;
if ( (!(-d $dir.”/Maildir”)) ){
`/usr/bin/maildirmake.maildrop $dir”/Maildir”`;

}

bash
[03:42:08]andre@garden:~$ for i in `seq 10`; do echo $i ; done;

Haven’t been using cut that mutch but, also a good weapon of choice.

Simple things that evolve to more complex tools 😀

the shell

andre@linux-wii:~$ history|awk ‘{a[$2]++ } END{for(i in a){print a[i] ” ” i}}’|sort -rn|head
103 ssh
79 cd
76 dig
71 ls
17 sudo
12 vi
12 telnet
10 ping
10 cat
8 man

:S isto é um pouco incorrecto, e depende do que tenham sido as minhas tarefas na ultima semana

Uma visão um pouco mais ampla

andre@linux-wii:~$ history|awk ‘{a[$2]++ } END{for(i in a){print a[i] ” ” i}}’|sort -rn|head -60
103 ssh
78 cd
76 dig
71 ls
17 sudo
12 vi
12 telnet
10 ping
10 cat
8 man
8 exit
7 w
7 scp
6 nmap
6 ifconfig
5 wget
5 ps
5 less
4 mv
4 mkdir
4 date
4 cp
3 mysql
3 find
3 chmod
2 vim
2 unzip
2 tar
2 ./snmpdiskio
2 rm
2 reset
2 history|awk
2 history
2 evince
2 clear