« Le système d'exploitation GNU-Linux/Autres commandes utiles » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
mAucun résumé des modifications
Ligne 42 : Ligne 42 :
/var/log/maillog
/var/log/maillog


Lorsque l'indexation a eu lieue il y a plus de 8 jours, la commande locate l'indique par un message.
Lorsque l'indexation a eu lieu il y a plus de 8 jours, la commande locate l'indique par un message.


Pour réindexer le système de fichier :
Pour réindexer le système de fichier :

Version du 7 juin 2015 à 07:59

Manipulation des flux et des fichiers textes

awk

Wikipédia propose un article sur : « awk ».

La commande awk permet d'effectuer des manipulations sur des fichiers texte (ou un flux redirigé en entrée), dont notamment afficher une colonne particulière. Exemple :

 $ dpkg -l | awk '{print $2}'

Cette commande dit à dpkg que l'on ne veut que la deuxième colonne.

sed

Wikipédia propose un article sur : « Stream Editor ».

sed : utilitaire de traitement de données très puissant, capable d'utiliser les expressions régulières.

Pour substituer toute « chaîne1 » dans le fichier « chemin1 » avec « chaine2 » et envoyer le résultat dans le fichier « chemin2 » :

sed 's/chaine1/chaine2/g' chemin1 > chemin2


Trouver les commandes et les programmes

which

Wikipédia propose un article sur : « which ».

La commande which permet de connaitre dans quel répertoire se situe une commande (présente dans le PATH) :

 $ which ls
 /bin/ls

updatedb et locate

Wikipédia propose un article sur : « locate ».

La commande locate (ou slocate) permet une recherche rapide sur le système de fichier (suite à une indexation réalisée par updatedb).

$ locate maillog
warning: locate: warning: database /var/lib/slocate/slocate.db' is more than 8 days old
/etc/log.d/conf/logfiles/maillog.conf
/var/log/maillog

Lorsque l'indexation a eu lieu il y a plus de 8 jours, la commande locate l'indique par un message.

Pour réindexer le système de fichier :

$ sudo updatedb
ou
# updatedb

Note sur les droits : updatedb utilise par défaut une base d'indexation globale. Il faut donc avoir les droits super-utilisateur pour mettre à jour l'indexation globale.

Outils réseaux

wget

Wikipédia propose un article sur : « wget ».

La commande wget permet de télécharger un fichier depuis la ligne de commande :

 $ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2
 --13:16:02--  http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2
            => `linux-2.6.23.tar.bz2'
 Résolution de www.kernel.org... 204.152.191.5, 204.152.191.37
 Connexion vers www.kernel.org[204.152.191.5]:80...connecté.
 requête HTTP transmise, en attente de la réponse...200 OK
 Longueur: 45,488,158 [application/x-bzip2]

 9% [===>                                          ] 4,245,225    630.29K/s    ETA 01:28

Pour utiliser un proxy, il faut définir la variable d'environnement http_proxy. Exemple :

http_proxy=monproxy:3128 wget http://apache.cict.fr/ant/source/apache-ant-1.7.0-src.tar.gz

wget sur ftp

wget est également compatible avec le protocole ftp. Il est ainsi capable de télécharger un fichier ou un ensemble de fichier depuis un ftp distant.

 # wget ftp://login:passwd@ftp.host.net/thedir/* 

Pour télécharger les sous-répertoire et fichiers on utilise l'option "-r".

L'option "-nH" permet de ne pas sauvegarder le nom d'hôte, autrement wget fera la copie vers un nouveau dossier créé portant le nom de l'hôte du serveur ftp.

Utilisation de base

Typiquement Wget s'utilise par la ligne de commande, avec un ou plusieurs URLs passés en paramètres. De nombreuses options permettent d'affiner le comportement souhaité (téléchargement multiple, suivre les liens...).

# Télécharge la page à la racine du site exemple.fr dans un ficher
# nommé "index.html".
wget http://www.exemple.fr/
# Télécharger les sources de Wget depuis le serveur FTP de GNU.
wget ftp://ftp.gnu.org/pub/gnu/wget/wget-latest.tar.gz

Il est possible de télécharger automatiquement plusieurs URLs dans une hiérarchie de dossiers.

# Télécharge tous les fichiers *.gif d'un serveur web
# (Les syntaxes de type glob, comme "wget http://www.serveur.com/dir/*.gif", ne marche que avec FTP)
wget -e robots=off -r -l1 --no-parent -A.gif http://www.serveur.com/dir/
# Télécharge la page racine de exemple.fr, avec les images et les 
# feuilles de styles utilisées pour afficher la page, et convertit les 
# URLs internes pour fonctionner avec les copies locales.
wget -p -k http://www.exemple.fr/
# Télécharge le contenu entier de exemple.fr
wget -r -l 0 http://www.exemple.fr/

Divers

file

Wikipédia propose un article sur : « file (Unix) ».

La commande "file" permet de connaître le type du fichier indiqué en paramètre.

 # file TmDedicatedServer_2006-05-30.tgz
 TmDedicatedServer_2006-05-30.tgz: gzip compressed data, was "fr.22968.0.TmDedicatedServer_20",
 from Unix, last modified: Tue May 30 13:41:35 2006

du

Wikipédia propose un article sur : « du (Unix) ».

La commande "du" sert à afficher la taille des grandes espaces (partitions de disque et répertoires)

 # du -sh /var/temp

L'option "s" affiche seulement un total pour chaque type d'argument.

L'option "h" permet l'affichage automatique de l'unité adaptée (Ko, Mo, Go...).

df

Wikipédia propose un article sur : « df (Unix) ».

La commande df affiche l'espace occupé par les systèmes de fichiers.

 # df -h

L'option "h" permet l'affichage automatique de l'unité adaptée (Ko, Mo, Go...).