A la découverte de 5 Commandes Linux Sympa
Voici 5 commandes rencontrées ici ou là que j'ai récemment découvert et que je voudrais vous partager....
Le bash {} expansion:
Petite fonction sympa de bash qui va nous éviter de réecrire certaines info. Par exemple, vous voulez faire un le backup de votre /etc/postgresql/8.3/main/postgresql.conf mais vous êtes dans votre /home.
utilisez alors le/chemin/du/fichier{,votreajout}
donc en gros :
$ cp /etc/postgresql/8.3/main/postgresql.conf{,.bak}
va en faite faire un
$ cp /etc/postgresql/8.3/main/postgresql.conf /etc/postgresql/8.3/main/postgresql.conf.bak
Et ca marche aussi pour mv ou diff par exemple :
diff fichiermodifie{,.old}
pv :
Pv est une commande qui va permettre de monitorer l'avancement des commandes un peu longue à l'aide de pipe ( | ). C'est la seule commande de ce lot à requérir une installation. Rien de plus simple pour l'installer que :
sudo aptitude install pv
Pour l'utiliser faite simplement passer le contenu de votre commande par un pipe que vous envoyez vers "pv" qui agira un peu à la façon de "cat".
exemple:
tar cfz - mesphotos | pv > photo.tar.gz
resultat :
65,8MO 0:00:08 [9,31MO/s] [ <=> ]
Ou encore :
pv /var/log/messages | gzip > log.gz
Résultat :
171kO 0:00:00 [18,2MO/s] [========================================================================>] 100%
Plus D'info? ==> man pv
Fichier ouvert par un programme?
Celui-ci est plutôt simple, on utilisera juste "ls" et le répertoire /proc :
remplacez <pid> par le Id du processus du programme que vous voulez scruter
ls -al /proc/<pid>/fd
Quel programme utilise le fichier X ?
utilisons fuser pour cette tâche:
lsof /home/emerzh/photo.png
Plus D'info? ==> man lsof
cd -
Pour revenir simplement au dossier ou vous étiez avant votre dernier "cd", utilisez "cd -" exemple:
emerzh@germaine:/var/www/sites1/apps/test/modules$ cd /home/emerzh
emerzh@germaine:/home/emerzh$ cd -
emerzh@germaine:/var/www/sites1/apps/test/modules$