====C==== * **cal** Cette commande affiche un calendrier dans le terminal. __utilisation__ : cal (--> Affiche le calendrier du mois en cours) cal -m avril (--> Affiche le calendrier du mois d'avril) * **cat** Affiche le contenu d'un fichier texte. __utilisation__ : cat fichier1.txt (--> Affiche le contenu de "fichier1.txt") cat -n fichier1.txt (--> Affiche le contenu de "fichier1.txt", préfixe chaque ligne par son numéro. Attention numérote également les lignes vides) cat -b fichier1.txt (--> Affiche le contenu de "fichier1.txt", préfixe chaque ligne par son numéro. Ne numérote pas les lignes vides) * **cd** Permet de se déplacer dans les dossiers * **chgrp** Change le groupe propriétaire d'un fichier __utilisation__ : chgrp groupe1 texte1.txt (--> "groupe1" devient le groupe propriétaire de "texte1.txt") * **chmod** Permet de changer les droits d'accès d'un fichier ou d'un dossier. soit __utilisation__ : Les droits d'un fichier ou d'un dossier ce présente sous cette forme : rwx(u) rwx(g) rwx(o) (u = user, g = group, o = other) La commande prend une valeur selon les droits qu'on veux donner au fichier. r (read) = 4, w (write) = 2, x (exécuter) = 1 Si je veux donner à "fichier1.txt" les droits suivants : - Lecture, écriture et exécution au propriétaire. - Lecture et exécution au groupe. - Lecture aux autres Je calcule la valeur de mon chmod : - Propriétaire : 4 + 2 + 1 = **7** - Groupe : 4 + 1 = **5** - Autres : **4** La commande sera donc : chmod 754 fichier1.txt La commande peux également s'utiliser de manière plus aisée : __ex__ : soit un fichier texte appartenant à Olivier et avec les droit suivant --> texte1.txt rwx rx r * droit de lecture, écriture et exécution pour Olivier * droit de lecture et exécution au groupe olivier * droit de lecture à "autres" Si je veux ajouter le droit d'écriture au groupe et retirer le droit de lecture à "autres" la commande sera : chmod g+w o-r texte1.txt Attention mal utilisée, cette commande peut être très destructrice * **chown** Change le propriétaire d'un fichier. __utilisation__ : chown olivier.olivier texte1.txt (--> l'utilisateur olivier et le groupe olivier deviennent propriétaires de "fichier1.txt") * **cp** Permet de copier un fichier __utilisation__ : cp fichier1.txt fichier2.txt (--> Fait une copie de "fichier1.txt" et la nomme "fichier2.txt") ---- ====D==== * **date** Cette commande affiche la date dans le terminal. __utilisation__ : date (--> Date du jour et heure) date +%s (--> Affiche le nombre de secondes écoulées depuis le 1er janvier 1970) date -u (--> Affiche la date au format UTC) * **df** Cette commande permet d'afficher la taille des partitions et périphériques attacher au système. __utilisation__ : df df -h (Affiche le résultat avec des taille lisible par les humains - multiple de 1024) du -H (Affiche le résultat avec des taille lisible par les humains - multiple de 1000) * **du** Cette commande permet d'afficher la taille des dossiers d'une hiérarchie. __utilisation__ : du /home/olivier/Document du -h /home/olivier/Document (Affiche le résultat avec des taille lisible par les humains) du -h -s /home/olivier/Document (Affiche uniquement la taille totale des dossiers avec un résultat lisible par les humains) ---- ====E==== * **echo** Affiche un texte. __utilisation__ : echo "Hello World !" ---- ====F==== * **find** Permet de chercher des fichiers ou des dossiers. Commande assez complexe par son nombre d'options. __utilisation__ : find /home/olivier -name *.txt -print (Recherche tous les fichiers txt présent dans /home/olivier) Recherche à partir d'une expression rationnelle : find /home/olivier/Documents -iname "[abc]*.txt" -print Recherche par type : find /home/olivier/Documents -name exemple -type f -print (Recherche les fichiers portant comme nom exemple) find /home/olivier/Documents -name exemple -type d -print (Recherche les dossiers portant comme nom exemple) find /home/olivier/Documents -name exemple -type l -print (Recherche les liens portant comme nom exemple) Recherche sur un critère de temps : find /home/olivier -atime 1 -print (Affiche l'ensemble des fichiers ouvert depuis moins de 1 jour) find /home/olivier -amin 10 -print (Affiche l'ensemble des fichiers ouvert depuis moins de 10 minutes) find /home/olivier -ctime 1 -print (Affiche l'ensemble des fichiers dont les droits on été modifiés depuis moins de 1 jour) find /home/olivier -cmin 10 -print (Affiche l'ensemble des fichiers dont les droits on été modifiés depuis moins de 10 minutes) find /home/olivier -mtime 1 -print (Affiche l'ensemble des fichiers modifiés depuis moins de 1 jour) find /home/olivier -mmin 10 -print (Affiche l'ensemble des fichiers modifiés depuis moins de 10 minutes) Rechercher des fichiers ou documents vides find /home/olivier -empty -print (cherche tous les fichiers ou dossiers vides dans /home/olivier) Recherche multi-critères : find /home/olivier -empty -name linux* -type f -print (cherche tous les fichiers vides dont le nom commence par linux dans /home/olivier) ---- ====G==== * **grep** Permet de faire une recherche dans un ou plusieurs fichiers. __Utilisation__ : grep "^a" texte1.txt (cherche toutes les lignes commençant par a dans texte1.txt) grep "olivier" texte1.txt (cherche toutes les lignes contenant le mot olivier dans texte1.txt) grep "^a$" texte1.txt (cherche toutes les lignes ne contenant que la lettre a dans texte1.txt) grep "^$" texte1.txt (cherche toutes les lignes vides dans texte1.txt) grep -i "olivier" texte1.txt (recherche non sensible à la case peux donc donner comme résultat "olivier", "Olivier", "olIvIer"...) __Inversion de la recherche__ : grep -v "olivier" texte1.txt (recherche toutes les lignes ne comportant pas le mot "olivier" - v inverse la recherche) __Nombre de lignes__ : grep -c "olivier" texte1.txt (donne le nombre de lignes comportant le mot "olivier") __Numéro des lignes__ : grep -n "olivier" texte1.txt (affiche les numéros et les lignes comportant le mot "olivier") __Recherche dans l'ensemble des fichiers__ : grep "olivier" * (affiche les lignes des fichiers comportant les mots comprenant "olivier") grep -w "olivier" * (affiche les lignes des fichiers comportant l'expression exacte "olivier") grep -wl "olivier" * (affiche uniquement le nom des fichiers comportant l'expression exacte "olivier") grep -wlr "olivier" * (affiche uniquement le nom des fichiers comportant l'expression exacte "olivier" de manière récursive) ---- ====H==== * **head** Affiche les dix premières lignes d'un fichier texte. __utilisation__ : head fichier1.txt (--> Affiche les dix premières lignes de "fichier1.txt") head -n2 fichier1.txt (--> Affiche les deux premières lignes de "fichier1.txt") ---- ====I==== * **id** Affiche son login, son groupe principal et ses autres groupes. ---- ====L==== * **ls** Liste le contenu d'un dossier. * **less** Permet de lire un document texte page par page. __utilisation__ : less texte.txt Nous pouvons passer page par page à l'aide de la touche **espace**. Pour pouvoir naviguer plus librement dans le document, nous utiliserons les touches **b** (retour arrière) et **f** (continuer à la page suivante). La touche **/** permet de faire une recherche dans un document. Enfin la touche **n** permet dans le cadre de cette recherche de passer à l’occurrence suivante. ---- ====M==== * **man** Affiche le manuel d'une commande. __utilisation__ : man date (--> Affiche le manuel de la commande date) * **mkdir** Permet de créer un dossier vide. __utilisation__ : mkdir dossier1 (--> crée un dossier "dossier1") * **mv** Permet de déplacer ou de renommer un fichier. __utilisation__ : mv fichier1.txt dossier1/ (--> Déplace "fichier1.txt" dans "dossier1") --> chemin relatif mv fichier1.txt fichier2.txt (--> Renomme fichier1.txt en fichier2.txt) ---- ====P==== * **pwd** Affiche le répertoire dans lequel on se situe (chemin absolu). ---- ====R==== * **rm** Supprime un fichier. __utilisation__ : rm fichier1.txt (--> Supprime le fichier "fichier1.txt") rm -d dossier1 (--> Supprime le dossier "dossier1") --> équivalent de **rmdir** rm -r dossier1 (--> Supprime des dossiers récursivement --> le dossier1 et son contenu) rm -rf dossier1 (--> Supprime des dossiers récursivement et sans confirmation !) Attention mal utilisée, cette commande peut être très destructrice * **rmdir** Supprime un dossier vide __utilisation__ : rmdir dossier1 (--> Supprime le dossier vide "dossier1") ---- ====S==== * **stat** Permet d'afficher les statistiques d'un fichier (Emplacement, taille, droit, date de création, de modification...) __utilisation__ : stat texte.txt * **strings** Permet d'afficher des chaînes de caractères renvoyées par un exécutable. __utilisation__ : strings ls (Il faut être dans /bin) * **su** Permet de devenir le Super Utilisateur (root). __utilisation__ : su Il faut connaître le mot de passe root, et donc celui-ci doit être activé. * **sudo** Permet de prendre temporairement l'identité du Super Utilisateur (root). __utilisation__ : sudo nom_de_la_commande sudo -k (permet de vider le cache et d'oublier donc le mot de passe qui sera redemandé à la prochaine commande sudo) ---- ====T==== * **tail** Permet d'afficher les dix dernières lignes d'un fichier (exemple un log). __utilisation__ : tail fichier.log Nous pouvons passer l'option **n20** par exemple pour afficher les 20 dernières lignes. L'option **f** permet de garder le fichier ouvert afin de continuer à le scruter. * **touch** Permet de créer un fichier texte vide. __utilisation__ : touch fichier1.txt (--> crée le fichier vide "fichier1.txt") * **type** Cette commande permet de savoir si une commande est de type interne ou externe. __utilisation__ : type echo (--> interne) type date (--> externe) ---- ====W==== * **wc** Permet d'afficher le nombre de lignes, de mots et d'octets d'un fichier. __utilisation__ : wc fichier.txt