En fait, il y a plus de 1%...
Sous UNIX, il y a quelques applications très répandues pour l'archivage
et la compression de fichiers. tar
sert à fabriquer des
archives -- comme PKZIP
mais il ne fait qu'archiver, sans
compression. Pour fabriquer une nouvelle archive :
$ tar -cvf <nom_d_archive.tar> <fic> [fic...]
Pour extraire des fichiers d'une archive :
$ tar -xpvf <nom_d_archive.tar> [fic...]
Pour examiner le contenu d'une archive :
$ tar -tf <nom_d_archive.tar> | less
Vous pouvez compresser les fichiers à l'aide de compresss
, mais
il est obsolète et ne devrait plus être utilisé, ou gzip
:
$ compress <fic>
$ gzip <fic>
qui créent un fichier compressé portant l'extension .Z (compress
)
ou .gz (gzip
). Ces programmes ne peuvent compresser qu'un fichier
à la fois. Pour décompresser, utilisez :
$ compress -d <fic.Z>
$ gzip -d <fic.gz>
LPM.
Il existe également les utilitaires unarj
, zip
et unzip
(compatibles avec PK??ZIP). Les fichiers portant l'extension
.tar.gz
ou .tgz
(archivés avec tar
, puis compressés
avec gzip
) sont aussi communs dans le mode UNIX que les fichiers
.ZIP sous DOS. Voici comment examiner le contenu d'une archive au
format .tar.gz
:
$ tar -ztf <fic.tar.gz> | less
Tout d'abord : l'installation de paquetages est le travail de root. La
plupart des applications Linux sont distribuées sous forme d'archives
.tar.gz
qui contiennent typiquement un répertoire
nomdepaquetage/
où se trouvent tous les fichiers et/ou
sous-répertoires. Un bonne habitude est d'installer ces paquetages à
partir de /usr/local
à l'aide de la commande :
# tar -zxf <archive.tar.gz>
puis de lire les fichiers README ou INSTALL. La plupart du temps, le
paquetage est distribué sous forme de code source, que vous devrez
compiler pour créer les binaires ; en général, en vous contentant de
taper make
puis make install
. Bien évidemment, vous
devez avoir les compilateurs gcc
ou g++
.
D'autres archives doivent parfois être déballées à partir de
/ ; c'est notamment le cas pour les archives .tgz
de
Slackware. D'autres archives contiennent des fichiers mais pas de
sous-répertoires. Il faut toujours examiner le contenu d'une archive
avant de l'installer.
Les distributions Debian et Red Hat ont leur propre format d'archives,
respectivement .deb
et .rpm
. Ce dernier bénéficie d'une
reconnaissance de plus en plus large ; pour installer un paquetage
.rpm
, tapez :
# rpm -i paquetage.rpm
La «complétion» de commandes : en tapant <TAB>
lors de la saisie d'une commande, vous obtiendrez la complétion de la
ligne de commande. Par exemple : si vous avez à taper gcc
ceci_est_un_nom_a_rallonge.c
; il suffira de taper gcc
ceci<TAB>
. (Si vous avez d'autres fichiers qui commencent
avec les mêmes caractères, il faut fournir en fournir suffisamment
pour lever toute ambiguïté.)
Le défilement en arrière : l'appui sur <SHIFT + PAG UP> (la touche grise) vous permet de remonter en arrière de quelques pages, en fonction de la quantité de mémoire vidéo dont vous disposez.
Le nettoyage de l'écran : s'il vous arrive de faire more
ou
cat
sur un fichier binaire, votre écran peut se retrouver rempli
de caractères bizarres. Pour y remedier, tapez reset
même si vous
n'y voyez plus rien, ou entrez cete séquence de caractères : echo
CTRL-V ESC c RETURN
.
Le collage de texte : dans la console, voyez plus loin ; sous X,
cliquez et déplacez la souris en maintenant le bouton enfoncé pour
sélectionner le texte dans une fenêtre xterm
, puis cliquez avec
le bouton central (ou les deux boutons à la fois si vous avez une
souris à deux boutons) pour coller. Il existe également un
xclipboard
>
presse-papiers sous X (NdT.)(qui ne marche qu'avec du texte, hélas) ; ne vous laissez pas perturber par son très long temps de réponse.
L'utilisation de la souris : si vous avez installé gpm
, un
pilote de souris pour la console, alors vous pouvez cliquer et
déplacer la souris sans relâcher le bouton pour sélectionner du texte,
puis cliquer avec le bouton droit pour coller le texte
sélectionné. Cela marche d'une console virtuelle à l'autre.
Messages émis par le noyau : examinez /var/adm/messages
,
ou /var/log/messages
en étant root pour savoir ce que le
noyau a à vous dire, y compris les messages de démarrage. La commande
dmesg
est également bien pratique.
Si vous vous demandez s'il existe des applications en remplacement de vos
vieilles applications DOS/Windows, je vous propose de parcourir les
principaux «entrepôts» de logiciels pour Linux :
ftp://sunsite.unc.edu/pub/Linux
,
ftp://tsx-11.mit.edu/pub/linux
, et
ftp://ftp.funet.fi/pub/Linux
.
Un autre lieu digne d'intérêt est la «Linux Applications and
Utilities Page» située à
http://www.xnet.com/~blatura/linapps.shtml
.
Linux peut faire tout un tas de choses qui étaient pénibles, difficiles ou impossibles sous DOS/Windows. Voici une petite liste qui devrait vous ouvrir l'appétit :
at
vous permet de lancer des programmes à des heures spécifiques ;
awk
est un langages simple mais néanmoins puissant pour
manipuler des fichiers de données (mais pas seulement). Par exemple,
si data.dat
est votre fichier contenant des données sur plusieurs
champs,
$ awk '$2 ~ "abc" {print $1, "\t", $4}' data.dat
affiche tous les premiers et quatrièmes champs de chaque ligne de
data.dat
dont le second champ contient «qbc».
cron
est utile pour effectuer des tâches de manière
périodique, à des dates et des heures spécifiques. Tapez man 5 crontab
.
file <nomdefichier>
vous indique le type de
nomdefichier
(texte ASCII, exécutable, archive, etc.) ;
find
(cf. également la section
Répertoires : traduction de commandes) est l'une des
commandes les plus puissantes et les plus utiles. On l'utilise pour
trouver des fichiers répondant à certaines caractéristiques, et pour
effectuer des actions sur ceux-ci. L'utilisation de base de find
est :
$ find <repertoire> <expression>
où <expression> inclut les critères de recherche et les
actions. Exemples :
$ find . -type l -exec ls -l {} \;
trouve tous les fichiers qui sont des liens symboliques et montrent ce
sur quoi ils pointent ;
$ find / -name "*.old" -ok rm {} \;
trouve tous les fichiers correspondant au motif donné et les efface,
après vous avoir demandé confirmation ;
$ find . -perm +111
trouve tous les fichiers dont les droits d'accès sont 111 (exécutables) ;
$ find . -user root
trouve tous les fichiers appartenant à root. Il y a plein d'autres
possibilités -- LPM ;
grep
trouve des motifs de caractères dans des
fichiers. Par exemple,
$ grep -l "geologie" *.tex
affiche tous les fichiers *.tex contenant le mot
«geologie». La variante zgrep
marche avec les fichiers
«gzippés». LPM ;
^a[^a-m]X{4,}txt$
correspond aux lignes commençant par un «a», suivi d'un
autre caractère ne se trouvant pas dans l'intervalle a-m, suivi de de
4 ou plus «X» et finissant en «txt». Les
expressions régulières sont utilisées avec des éditeurs avancés,
less
, et de nombreuses autres applications. man grep
pour avoir une introduction ;
script <fichier_script>
envoie le contenu de l'écran
dans le fichier ficher_script
jusqu'à ce que vous lanciez la
commande exit
. Utile pour le débogage ;
sudo
autorise les utilisateurs d'effectuer certaines
tâches de root (par ex. : le formattage et le montage des disques.
LPM) ;
uname -a
vous renvoie de l'info sur votre système ;
bc, cal, chsh, cmp,
cut, fmt, head, hexdump, nl, passwd, printf, sort, split, strings, tac,
tail, tee, touch, uniq, w, wall, wc, whereis, write, xargs, znew.
LPM.
Vous pouvez rencontrez d'innombrables extensions aux noms de fichiers. En excluant les plus exotiques (en l'occurrence les polices etc.), voici une liste de qui est qui :
1 ... 8
: les pages du manuel (man
). Au cas fort
improbable où vous n'ayez pas man
, répurérez-le.
arj
: archive fabriquée avec arj
.
dvi
: fichier de sortie produit par TeX
(cf. ci-dessous). xdvi
permet de le visualiser et dvips
le
transforme en fichier Postscript .ps
.
gz
: archive fabriquée avec gzip
.
info
: fichier info (espèce d'alternative aux pages
man). Récupérez info
.
lsm
: fichier Linux Software Map. Il s'agit d'un fichier
ASCII ordinaire contenant la description d'un paquetage.
ps
: fichier PostScript. Pour le visualiser, réupérez
gs
et, optionnellement ghostview
ou gv
.
rmp
: paquetage Red Hat. Il est possible de l'installer
sur n'importe quel système à l'aide du gestionnaire de paquetages rpm
.
taz, tar.Z
: archive fabriquée avec tar
et compressée
avec compress
.
tgz, tar.gz
: archive fabriquée avec tar
et
compressée avec gzip
.
tex
: fichier texte à fournir en entrée à TeX, un puissant
système de composition de documents. Récupérez le paquetage tex
mais méfiez-vous de NTeX, dont les polices sont erronnées et qui est
comprise dans certaines distributions Slackware.
texi
: fichier texinfo, peut produire aussi bien des
fichiers TeX et des fichiers info (cf. info
). Récupérez texinfo
.
xbm, xpm, xwd
: fichiers graphiques. Récupérez
xpaint
The Gimp ou Electric Eyes feront également très bien l'affaire (NdT.).
Z
: archive fabriquée avec compress
.
Si vous devez échanger des fichiers entre DOS/Windows et Linux,
méfiez-vous du problème des «sauts de ligne». Sous DOS,
chaque ligne se termine par CR/LF, alors que Linux se contente de
LF. Si vous essayez d'éditer un fichier DOS sous Linux, il est
probable que chaque ligne se termine par un étrange caractère
«M» ; un texte Linux apparaîtra sous DOS comme une ligne
unique extrêmement longue et aucun paragraphe ne sera présent. Il
existe quelques outils, dos2unix
et unix2dos
, pour convertir
les fichiers.
Si vous fichiers contiennent des caractères accentués, assurez-vous qu'ils ont été saisis sous Windows (disons avec Write ou Notepad) et non sous DOS ; sinon tous les caractères accentués seront mélangés joyeusement.
Pour convertir des fichiers Word ou WordPerfect vers des fichiers
texte pur, le sujet est un peu plus délicat mais c'est possible. Vous
aurez besoin de l'un des outils qui se trouvent sur les sites CTAN ;
l'un d'entre eux étant
ftp://ftp.tex.ac.uk
. Récupérez le paquetage word2x
du répertoire
/pub/tex/tools/, ou essayez l'un des paquetages
disponibles dans le répertoire /pub/tex/support/. Pour ma
part, je n'ai essayé que word2x
, qui marche assez bien.