Quelques notions et commandes linux

De Wiki Arthion
Raccourcis console

Ctrl + A  : ramène le curseur au début de la commande
Ctrl + E : ramène le curseur à la fin de la ligne de commande
Ctrl + U : supprime tout ce qui se trouve à gauche du curseur
Ctrl + K : supprime tout ce qui se trouve à droite du curseur
Ctrl + W : supprime le premier mot situé à gauche du curseur
Ctrl + Y : annule la dernière suppression
Ctrl + L : efface le contenu de la console
Ctrl + D : quitte la console
Ctrl + R : recherche parmis les commandes récemment tapées


Tab : autocomplétion de commande
Tab, Tab : liste les mots commençant par les lettres déjà entrées

.. : dossier précédent
. : dossier parent

Résumé de la syntaxe du SYNOPSIS de la commande man
    * gras : tapez le mot exactement comme indiqué.
    * souligne : remplacez le mot souligné par la valeur qui convient dans votre cas.
    * [-hvc] : toutes les options -h, -v et -c sont facultatives.
    * a|b : vous pouvez écrire l'option a OU b, mais pas les deux à la fois.
    * option... : les points de suspension indiquent que l'option peut être répétée à l'infini

Paramètres de commandes

-x : notation courte (on peut mettre plusieurs lettres derrière le -)
--bidule : notation longue
-h : aide résumée pour la plupart des commandes. Plus lisible que "man"


Droits :
r (read) = 4
w (write) = 2
x (execute) = 1

u = user
g = group
o = other

Création d'alias (fichier .bashrc)
	nom='commande'

--------------------

Commandes usuelles

apropos : suivi d'un mot, recherche une commande à partir d'un mot-clé en rapport

cat : affiche le contenu d'un fichier
	-n affiche les numéros de ligne

chmod :
	chmod 600 rapport.txt : rw pour le proprio sur rapport.txt
	chmod g+w rapport.txt : donne le droit en écriture au groupe
	chmod g+w,o-w rapport.txt : donne droit en écriture au groupe, enlève aux autres
	chmod +x rapport.txt : droit d'exécution pour tout le monde
	chmod u=rwx,g=r,o=- rapport.txt : tout au proprio, leture au groupe, rien aux autres
	-R : pour affecter récursivement les sous-dossiers
	

cp : copie d'un fichier
	cp nom1 nom2 : crée nom2 qui est la copie de nom1
	cp nom dossier/ : fait un copie de nom dans dossier
	cp nom1 dossier/nom2 : copie nom1 dans dossier et le renomme nom2
	cp -R dossier1 dossier2 : copie dossier1 et tous ses sous-dossiers dans dossier2
	cp *.jpg dossier/ : copie tous les jpg dans dossier
	cp so* dossier/ : copie tous les fichiers dont le nom commence par "so" dans dossier

date : renvoie la date du jour

du : taille occupée par les dossiers
	-h : taille en Ko, Mo, Go...
	-a : taille des dossier ET des fichiers
	-s : juste le total

head : affiche les premières lignes d'un fichier
	-n : suivi du'un nombre, permet d'afficher les nombre de ligne que l'on veut
	
history : historique des commandes tapées.

info : alternative à man...

less : affiche le contenu d'un fichier page par page
	Entrée : affiche la ligne suivante
	PageDown/PageUp : affiche page suivante/précédente
	d : affiche 11 lignes suivantes
	u : retourne en arrière de 11 lignes
	q : arrêt de la lecture du fichier
	= : indique où nous en sommes dans le fichier
	h : affiche l'aide
	/ : mode recherche. Entrée pour valider
	n : après une recherche, permet d'aller à la prochaine occurrence
	N : occurrence précédente

ln : suivi de fichier1 fichier2, crée un lien physique vers fichier1 (fichier2 partagera le même inode)
	-s : crée un lien symbolique (raccourcis)

ls : liste le contenu du répertoire courant.
	-a (--all) : liste tout, même les fichier/dossiers cachés
	-A : liste tout sauf "." et ".."
	-F : ajout un "/" à la fin des noms de dossiers (utile si pas de couleur)
	-h : affiche la taille en Ko, Mo, Go (combiné avec -l)
	-l : liste détaillée
	-t : tri par date de dernière modification (combiné avec -l pour plus de lisibilité)
	-r : inverse la liste (combiné avec -l)
	ls *.jpg : n'affiche que les fichiers .jpg

man : suivi d'une commande, affiche le manuel d'une commande
	/ : pour faire une recherche
	q : pour quitter

mkdir : suivi d'un nom de dossier, crée un dossier. si plusieurs noms, crée, autant de dossiers que de noms
	-p : sert à créer des dossier intémédiaires (truc/machin/chouette)

mv : déplace un fichier ou un dossier (mv fichier répertoire/) (mv dossier1/ dossier2/) (mv *.jpg mondossier/)
	mv fichier01 fichier02 : renomme fichier01 en fichier02
	mv fichier01 mondossier/fichier02 : déplace et renomme

nano : lance nano
		nano fichier : lance le fichier dans nano ; le crée si besoin
		-m : souris autorisée
		-i : identation automatique
		-A : retour intelligent en début de ligne

pwd : affiche le dossier actuel

rm : supprimer fichiers
	-i : demande confirmation pour la suppression de chacun des fichiers (o/n ou y/n)
	-f : forcer la suppression (dangereux)
	-v : verbose (la console montre ce qu'elle fait)
	-r : supprimer un dossier et tout ce qu'il contient

tail : affiche les dernières lignes d'un fichier
	-n : suivi du'un nombre, permet d'afficher les nombre de ligne que l'on veut
	-f : permet de suivre un fichier au fur et à mesure de son évolution (pratique pour les logs)
	Ctrl + c : arrêter la commande tail
	-s : suivi d'un nombre, ajuste la màj en secondes (défaut 1s)

touch : suivi d'un nom de fichier, crée un fichier. si plusieurs noms, crée, autant de fichiers que de noms

whatis : suivie d'une commande, donne l'entête du manuel, pour expliquer à quoi elle sert

which : connaitre l'emplacement d'une commande

--------------------

sudo : entrer une commande en root
	sudo su : passe en root indéfiniment

adduser : suivi d'un nom d'utilisateur, ajoute un utilisateur

addgroup : avec nom du groupe en paramètre, crée un groupe

chgrp : change le groupe proprio d'un fichier (utilisation identique à chown)

chown : changer le proprio d'un fichier
	chown machin fichier.txt : machin devient le nouveau proprio de fichier.txt
	chown machin:amis fichier.txt : fichier devient le propriété de machin et du groupe amis
	-R : affecte récursivement tous les sous-dossiers

delgroup : supprime un groupe

deluser : suivi d'un nom du'tilisateur, supprime un compte
	deluser --remove-home nom_utilisateur : vire le home et les fichiers persos de l'utilisateur

passwd : en indiquant le nom de compte à modifier, changee le mot de passe (si rien précisé, mdp de root)

usermod : modifie un utilisateur
	-l : renomme l'utilisateur (le nom de son home ne sera pas changé)
	-g : change de groupe
	-G : attribue plusieurs groupes à l'utilisateur

--------------------

Téléchargement

apt-get update : met le cache à jour (root)
apt-get remove monpaquet : supprime monpaquet
apt-get autoremove monpaquet : supprime monpaquet ainsi que ses dépendance devenues inutiles
apt-get upgrade : màj de tous les paquets installés sur le système
apt-cache search monpaquet : recherche d'un paquet dont on ne connait pas le nom exact
apt-cache show monpaquet : donne une plus ample description du paquet
apt-get install monpaquet : télécharge et installe le paquet

--------------------

Recherche de fichiers

locate nomfichier : recherche rapide rudimentaire à travers la db des données du hd
updatedb : force la reconstruction de la db des fichiers

find : recherche approfondie. recherche les fichiers directement sur le hd (3 paramètres : où, quoi, que faire)
	-name : paramètre obligatoire. nom du fichier recherché.
	find ~ -size +10M : recherche dans le home tous les fichiers de + de 10 Mo
	find /var/log -name "syslog" : recherche dans var/log
	find -name "*.odt" -atime -7 : cherche un fichier .odt qui a été accédé il y a moins de 7 jours
	-type d : uniquement des répertoires
	-type f : uniquement des fichiers
	
	-print : affiche les résultats trouvés
	-printf : affichage formaté des résultats (avec un max d'options c-like)
	-delete : efface les fichiers trouvés
	-exec : appeler une commande
		find ~ -name "*.jpg" -exec chmod 600 {} \;
		    * Cette commande ne doit PAS être entre guillemets.
			* Les accolades {} seront remplacées par le nom du fichier.
			* La commande doit finir par un \; obligatoirement.
	-ok : comme exec mais demande une confirmation


Quelques commandes vi de base :

    i : Insérer du texte
    a : Ajouter du texte
    Echap : Sortir du mode choisi précédemment (i ou a)
    x : Effacer un caractère
    dd : Effacer/couper une ligne
    Y : Copier une ligne
    p : Coller une ligne
    o : Insérer une nouvelle ligne
    u : Annuler la dernière action
    :w : Enregistrer le fichier
    :q : Quitter
    :q! : Quitter sans sauvegarder
    /mot_à_chercher : Rechercher un mot
    n : Rechercher le mot suivant
    :g/mot1/s//mot2/g : Rechercher dans tous le fichier le mot1 pour le remplacer par le mot2

    
    
Creating a tar gzipped archive using option cvzf
The above tar cvf option, does not provide any compression. To use a gzip compression on the tar archive, use the z option as shown below.
$ tar cvzf archive_name.tar.gz dirname/

Extract a gzipped tar archive ( *.tar.gz ) using option xvzf
Use the option z for uncompressing a gzip tar archive.
$ tar xvfz archive_name.tar.gz