Commandes utiles sous linux
sed
- Pour rajouter par exemple un @ devant une liste de domaines :
sed
s/^/@/g oldfile > newfile
sed s/'blacklist_from \*'//g
- Pour supprimer tous les lignes commençant par exemple par
a13:
sed
"/^a13/d" oldfichier > newfichier
- Pour voir la difference entre deux fichiers:
diff
-n
fichier1
fichier2 > newliste
- Pour triller une liste par ordre alphabétique:
sort
oldifchier > newfichier
- Pour supprimer les doublons ( seulement ceux qui sont à la
suite
):
uniq -u oldfichier >
newfichier
- Pour modifier un chemin dans un fichier qui se trouve dans
plusieurs répertoire, par exemple le chemin /usr/java en
/usr/share/java des fichiers bash_profile de plusieurs utilisateurs :
for
i in `find /home -name "*.*bash_profile*" - print` ; do sed -i
s/\\/usr\\/java/\\/usr\\/share\\/java/g $i ; done
scp
scp est un utilitaire ssh, permet de copier des
fichiers d'une machine à l'autre via un tunnel
crypté.
syntaxe:
- copier un fichier vers une autre machine :
scp fichier
user@machine:chemin/fichier
- copier une fichier d'une machine distance dans un
répertoire :
scp
user@machin:chemin/fichier chemin/fichier
cut
$ cut -d: -f1 /etc/passwd
Affiche le champ USER du fichier des mots de passe.
$ cut -d: -f3-4 /etc/passwd
Affiche les champs UID et GID du fichier des mots de passe.
$ who|cut -c1-8
Sélectionne les 8 premiers caractères (le nom
d'utilisateur) de la sortie de la commande
who.
for
for est une commande très utile, elle permet de
traiter
des entrées d'une liste. Cela peut être pratique
pour
traiter les résultats de plusieurs commandes comme ls, find
etc..
syntaxe :
for i in commande ; do commande
; done
xargs
xargs permet de récupérer le
résultat de la commande précédente.
ex: supprimer que les fichiers .old d'un
répertoire
ls | grep "\.old" | xargs -i rm -f {}
ln - lien symbolique
un lien symbolique est un pointeur. C'est un à
dire un
fichier ou dossier qui pointe vers un autre fichier ou dossier. Si vous
éditez ce fichier, cela éditera le fichier
source. Ceci
est pratique si vous devez avoir un fichier dans un
répertoire
car vous n'êtes pas obligé de copier le fichier
source.
pour créer un lien symbolique :
ln -s fichier_source
fichier_pointeur
Vous pouvez aussi faire un lien symbolique avec la commande
cp
-s
tarer à
distance
Pratique pour mettre en place des
sauvegardes sur un
cron :
Pour lancer un tar distance sur une machine linux
ssh adr_ip 'cd /home/tbd
&& tar cf - .' | dd
of=test.tar
scp rep_local/nom_fichier mon_nom@serveur1:rep_distant
Retour à la page
d'accueil