Exercice 15: Commandes Unix/Linux (Environnement, Niveau 0)
Application 1
cd java/cours01
cp ~sam/Public/poeme?.txt .
ou
cp ~sam/Public/poeme?.txt ~/java/cours01
Application 2
cd
cd java/cours01
mkdir test
- cp fait une copie, et le fichier original
reste, mais mv «déplace» le fichier (cette
commande efface donc l'original).
- «which ls» indique quelle commande est exécutée par
ls. Dans votre environnement cela devrait
être un «alias», c'est-à-dire un «surnom»/«raccourci» pour une autre
commande (en l'occurence «ls --color=tty», peut importe ce
que cela veut dire). Pour de «vraies» commandes, non alias, comme
par exemple man (essayez «which man»), ces commandes sont en fait des
programmes quelque part dans le système de fichiers et «which» vous indique le nom complet
(absolu) de la commande qui est effectivement exécutée lorsque
cette commande est donné au Shell.
- ls -l *.txt liste, au «format long» (-l), tous les fichiers du répertoire courant ayant pour dernière extension .txt, soit si vous n'avez rien fait d'autre que ce qui est demandé dans la série :
-rw-r--r-- 1 moimoi sc-ba1 3897 Sep 18 2009 poeme1.txt
-rw-r--r-- 1 moimoi sc-ba1 1211 Sep 18 2009 poeme2.txt
Note : il se peut que les droits d'accès soient un peu différents
de ceux indiqués ici.
-
cd test
touch f1 f2 f4
- ls ?? liste tous les fichiers dont le nom
contient deux caractères. Rappel : ?
remplace une occurrence de n'importe quel caractère.
- La commande ls f[123] liste les
deux fichiers f1 et f2. Pour afficher f4
également, la commande serait: ls f[124].
- cat f[123] «concatène» les fichiers
f1 et f2, c'est à
dire donne le contenu de ces deux fichiers à la suite (dans
l'ordre alphabétique : f1 d'abord puis
f2 ensuite). Notez bien que f3
est ici ignoré car il n'existe pas. Si vous aviez créé un fichier
f3 également, celui-ci serait concaténé
à la suite de f1 et f2.
- touch albert a.txt zoulou zebre etautres.txt
- vous pouvez ici utiliser echo (command d'affichage) ou ls (commande qui liste les informations associées à des fichiers). À ce niveau de simplicité, il n'y a aucune différence.
echo *
echo a*
echo ??????
- divers est un fichier et autchose est une répertoire.
C'est la
première lettre (- ou d) des attributs (e.g. drwxr-x--x) qui indique la nature du fichier.
- Ce fichier appartient à l'utilisateur dupont du groupe dilia.
- chmod a+w divers où a+w
signifie qu'on applique les droits d'écriture (w=write) à tous les
utilisateurs (a=all).
- Selon les indications pour le groupe: r-x, ces utilisateurs
ne peuvent pas écrire dans le répertoire autchose.
- Le droit de le traverser. Attention ! c'est une
question piège.
Le droit x
pour un répertoire ne signifie pas "exécuter" comme dans le
cas des fichiers (ce qui n'aurait aucun sens pour les
répertoires) mais "traverser" cela signifie que les
personnes concernées peuvent accéder à des fichiers contenus
dans ce répertoire (bien qu'elles ne peuvent pas lire (droit
r) le contenu).
Cette possibilité permet par exemple de cacher des fichiers
tout en en autorisant l'accès (cf exercice 10).
Les fichiers dont le nom commence par le caractère '.' sont «cachés», c'est à dire non listés par
défaut par
la commande ls.
Quand on exécute ls -a tous les fichiers sont affichés,
y compris les fichiers cachés.
-
Et pour terminer :
ls /etc
ls /usr/share/fonts/../man/f*
# ou, plus simplement :
ls /usr/share/man/f*
ls /etc/[on]*[ies]