jeudi 15 octobre 2009

Bien débuter avec la ligne de commande

Vous entendrez souvent CLI (Command Line Interface) ou Shell. Ces deux termes représentent la fenêtre fade (presque moche) que vous aurez l'habitude de voir sous Linux...Vous serez même obligé de l'utiliser de temps à autre. Faudrait s'y faire. Mais kamagatOS :D vous a dégoté certaines commandes de base pour vous aider à mieux plonger dans ce milieu sombre et obscure ;).
Nous allons tout d'abord commencer par des raccourcis claviers simples et très utiles:

Ctrl + L
Efface le contenu de la console. Pratique quand tout commence à être confu sur l'écran.

Ctrl + A
Ramène le curseur au début de la ligne de commande.

Crtl + E
Ramène le curseur à la fin de la ligne de commande.


Opérations sur les fichiers et les dossiers

cat, Affiche entièrement un fichier
$ cat file

less, Affiche le fichier page par page
$ less file

head, Affiche les premières lignes d'un fichier
$ head file

tail, Affiche les dernières lignes d'un fichier
$ tail file

tail, Affiche le nombre de ligne indiqué
$ tail -n 5 file

touch, [EDIT] Permet à la base de modifier le timestamp d'un fichier mais utiliser généralement pour créer un nouveau fichier
$ touch file

mkdir (MaKe DIRectory), Permet de créer un nouveau répertoire
$ mkdir repertoire

cp (CoPy), Copie un fichier
$ cp file /home/user/document

mv (MoVe), Déplace un fichier
$ mv home/user/newdoc/file /home/user/document

rm (ReMove), Supprime un fichier
$ rm file

rm -r, Supprime le dossier et son contenu
$ rm -r /home/user/document


rm -f, Force la suppression
# rm -f file

pwd (Print Working Directory), Affiche le chemin absolu du répertoire en cours
$ pwd

which, Permet de connaître le répertoire d'une commande
$ which pwd

ls, Renvoie la liste des fichiers et dossiers
$ ls

ls -a, Affiche tous les fichiers et dossiers cachés
$ ls -a

ls -l, Renvoie la liste détaillée des éléments du répertoire
$ ls -l

ls -lh, Renvoie la liste détaillée des éléments du répertoire avec leur taille en Ko, Mo, Go
$ ls -lh

cd, Permet de changer de répertoire
$ cd /home/user/music

cd .. , Permet de revenir au répertoire précédent (remarquez l'espace entre la commande et les deux points)
$ cd ..

du -h ( Disk Usage - Human readable ), Permet de connaître la taille d'un répertoire
$ du -h

du -ah, Permet de connaître la taille des fichiers et des dossiers
$ du -ah

grep -i, Recherche un motif dans un fichier sans tenir compte de la casse
$ grep -i "Ubuntu" Linux.odt

sort, Trie les lignes
$ sort liste_ordinateurs

sort -r, Trie dans l'ordre inverse
sort -n, Trie des nombres

wc -w, Compte les mots d'un fichier
$ wc -w file

wc -l, Compte les lignes d'un fichier
wc -c, Compte les caractères d'un fichier

Recherche

updatedb, Met la base de donnée des fichiers sur le disque dur à jour
# updatedb

locate, Recherche un fichier sur le disque dur
locate file

find, Recherche un fichier dans le répertoire indiqué
$ find /home/user/ -name "file"
$ find /home/user/ -name "*.ogg" -size -5M

Compresser et archiver

Compresser une archive (sans sauvegarder l'original)
$ compress archive.tar
$ gzip archive.tar
$ bzip2 archive.tar

Décompresser une archive
$ uncompress archive.tar.Z
$ gunzip archive.tar.gz
$ bunzip2 archive.tar.bz2

Transfert de fichiers

wget, Télécharge un fichier depuis la console
$ wget http://www.ubuntu.com/getubuntu/downloading?release=desktop-newest&mirror=http%3A%2F%2Fubuntu.linux-bg.org%2Freleases%2F&arch=i386

scp (Secure CoPy), Permet le transfert de fichiers entre deux ordinateurs à travers le réseau (grâce à ssh)
# scp music.ogg kamagatOS@41.10.1.122:home/kamagatOS/music/

Utilisateurs & droits

adduser, Ajoute un utilisateur
# adduser user

passwd, Change de mot de passe
# passwd user

deluser, Supprime un compte
# deluser user

deluser --remove-home, Supprime le compte et le répertoire personnel
# deluser --remove-home user

chown, Change le propriétaire d'un fichier
# chown user file

chmod [ugo][+/-][rwx], Modifie les droits d'accès
# chmod u+rx music.ogg
u = User (Utilisateur) g = Group (Groupe) o = Others (autres)
r = Read (lire) w = Write (écrire) x = eXecute (exécuter)

Réseau

host, Converti l'adresse IP en nom d'hôte ou le nom d'hôte en adresse IP
$ host 168.15.10.20
$ host www.kamagatos.blogspot.com

whois, Permet d'obtenir des informations sur les noms de domaine
$ whois www.ubuntu-fr.org

ifconfig, Renvoie la liste des interfaces réseau
$ ifconfig


ifconfig, Permet de changer l'état d'une interface (actif ou inactif)
$ ifconfig eth0 down

netstat -i, Renvoie des stats des interfaces réseau
$ netstat -i

Renvoie toutes les connexions actives (U = UDP,  T = TCP, A = All)
$ netstat -uta
Liste les connexions en état d'écoute
$ netstat -lt

Administration système


who, Renvoie les utilisateurs connectés
$ who

top, Renvoie l'activité du système
$ top

ps, Renvoie l'état des processus
$ ps -ef

ethool, Permet de connaître le module d'une carte
# ethtool -i eth0

Renvoie plus d'informations sur la carte
# udevinfo -a -p /sys/class/net/eth0/

Renvoie la liste des interfaces détectées par le noyau
$ /sbin/ifconfig
$ /sbin/ip link show

iwconfig, Renvoie les informations pour les interfaces sans-fil
# iwconfig

Tester l'adresse locale
$ ping -c4 localhost

Pinger une adresse réseau
$ ping -c4 Adresse_IP

Vérifier les adresses MAC du LAN
# nmap -sP 192.168.1.1-254

uname -r, Renvoie les informations sur le kernel (noyau)
$ uname -r


uname -o, Renvoie les informations sur le système d'exploitation
$ uname -o

uname -p, Renvoie les informations sur le type de processeur
$ uname -p

Renvoie les informations détaillées sur le type de processeur
$ cat /proc/cpuinfo

Renvoie les informations détaillées sur la mémoire
$ cat /proc/meminfo

Renvoie les informations sur le Bios
# biosdecode

Renvoie la liste des matériels
# lshw

Renvoie la liste des cartes PCI
$ lspci -v

Renvoie la liste des périphériques USB
# lsusb

6 commentaires:

Anonyme a dit…

Bonne article bien pratique pour ne pas oublier ces petites commandes

Maxime a dit…

touch n'est pas fait pour "créer un fichier" il est fait pour changer le timestamps du fichier il crée le fichier par effet de bord tu peux très bien rajouter -c comme ce ci
touch -c test

et test ne sera pas créer.

Tu peux rajouter
ctrl+s pour masquer ce que l'on tape (pratique quand il faut taper un mot de passe en clair)
ctrl+q pour démaster
(fait un test dans un term tu fais ctrl+s tu tapes "test" et tu fais ctrl+q)

Ctrl+u pour effacer toute la ligne

rmdir : supprime un dossier vide

cd - : revenir au dossier précédent
watch : afficher la sorti d'un programme toutes les 2s
watch -n5 ls : affichera la sortie de ls toutes les 5 secondes ;)

du -sh : affiche la taille du dossier sans afficher les sous dossier et en valeur humainement compréhensible.

scp -r dossier_local user@server:dossier_distant : pour transférer un dossier ;)

Mes 2c c'est une bonne liste de commendande que tu as fait, tu devrais en faire un Cheat Sheet

Bonne continuation
Max.

Kamagatos a dit…

Maxime => Merci pour la remarque sur le touch ;) , je pense faire un EDIT tout de suite

Anonyme a dit…

Ouais une cheat sheet en pdf ça roxxerai du pangolin !

Anonyme a dit…

Merci bien !

Anonyme a dit…

crt in fragile this unrestricted [url=http://www.casinoapart.com]casino[/url] hand-out at the unequalled [url=http://www.casinoapart.com]online casino[/url] conductor with 10's of elegant [url=http://www.casinoapart.com]online casinos[/url]. list d prosper previous [url=http://www.casinoapart.com/articles/play-roulette.html]roulette[/url], [url=http://www.casinoapart.com/articles/play-slots.html]slots[/url] and [url=http://www.casinoapart.com/articles/play-baccarat.html]baccarat[/url] at this [url=http://www.casinoapart.com/articles/no-deposit-casinos.html]no precipitate casino[/url] , www.casinoapart.com
the finest [url=http://de.casinoapart.com]casino[/url] for the recuperate of UK, german and all upwards the world. so in behalf of the insigne [url=http://es.casinoapart.com]casino en linea[/url] corroborate us now.