Terminal Unix et Ligne de Commande Cheat Sheet

A cheat sheet in français (French) by michel.syska

Bases d'utilisation du terminal sous Unix

8,007 views 2,649 downloads 10 Dec 2015 History
4.9 avg · 1 rating

Cheat Sheet indisp­ensable en DUT INFO S3

feuille publiée par erreur mais en cours d'am­éli­oration :-)
Pour qui ?
les DUT INFO S3 de Nice - Fabron
Dans quel module ?
M311 / principes des systèmes d'ex­plo­ita­tions
Pourquoi ?
être dix fois plus efficace en TP

Ouvrir un terminal GNOME

Depuis le bureau GNOME
Cliquer en haut à gauche sur "­Act­ivi­tés­" puis Rechercher "­ter­min­al" dans la zone de recherche en haut du bureau. En profiter pour placer l'icône dans la barre "­Act­ivi­tés­"
Depuis un terminal GNOME
Menu "­Fic­hie­r" puis "­Ouvrir un termin­al"
Depuis l'explorateur
de fichiers
Clic droit dans le fond de la fenêtre et "­Ouvrir dans un termin­al"
Le clic droit dans l'ex­plo­rateur permet d'ouvrir le terminal dans le bon répertoire
Ne pas hésiter à ouvrir plusieurs terminaux côte à côte pour tester les programmes multi processus et contrôler leur exécution depuis un autre terminal (avec kill, ps, top, htop, ..)

Taper des commandes dans le terminal

Copier / Coller
surligner le texte choisi à la souris puis clic gauche dans le terminal et clic milieu pour coller
Complétion
tab et/ou tab tab pour faire défiler les possib­ilités en boucle puis taper un ou plusieurs caractères pour choisir
Historique bash
taper la commande history
Commandes précéd­entes
ou ctrl-p
Commandes suivantes
ou ctrl-n
Début de ligne
ctrl-home ou ctrl-a
Fin de ligne
ctrl-end ou ctrl-e
Abandonner
ctrl-c
Rechercher la dernière commande contenant mot
ctrl-r mot puis ctrl-r autant de fois que nécessaire pour retrouver toutes les commandes contenant mot
Couper jusqu'à la fin de ligne
ctrl-k
Coller le texte coupé
ctrl-y
Pour les autres raccou­rcis, voir la docume­ntation du mode emacs

Voir ses fichier Windows depuis Linux

Dans l'ex­plo­rateur de fichier, taper dans la barre du haut - location - (ou ctrl-l) et entrer la connexion
smb://­dc-­inf­o-0­3/u­ser­s/e­tud­ian­t/login
domaine : IUTNICE
password : celui utilisé sous Windows
Les supports de cours des autres modules sont sur le partage :
smb://­fs-­inf­o-0­1/S­upp­ort­Cou­rs/S3T

Commandes bash de base

Afficher le contenu du répertoire dir
ls -la dir
Se positi­onner à la racine de son espace personnel
cd ou cd ~ ou cd $HOME
$HOME et ~ désignent le même chemin, le répertoire défini comme racine du login corres­pon­dant, par exemple /home/­martin
Effacer le répertoire dir et ses sous-r­épe­rtoires
rm -rf dir
Renommer dir1 sous le nom de dir2
mv dir1 dir2
Effacer le terminal
clear
Ajouter $HOME/bin au PATH
export PATH=$­PAT­H:$­HOM­E/bin
Changer l'invite de commande
export PS1='$ '
Les variables d'en­vir­onn­ement comme PS1, PATH, ... sont à changer de préférence dans les fichiers de config­uration de bash : .bash_­login, .bash_­profile, .bashrc, ...

Gestion zéro des archives tar.gz

Extraire le contenu de tp.tar.gz
tar zxvf tp.tar.gz
Créer une archive contenant le répertoire tp
tar zcvf tp.tar.gz tp
Pour créer l'ar­chive contenant tous les fichiers du répertoire tp, il faut se positi­onner avant au dessus de tp. Par exemple, si le chemin absolu de tp est /home/­log­in/­ASR/tp, alors les commandes sont:
cd /home/­log­in/ASR
tar zcvf tp.tar.gz tp

Commandes de contrôle des processus

ps axu ou bien ps -eF
voir tous les processus en cours
ps axjf ou bien ps -ejH
voir aussi les arbres de filiation
pstree
affiche un arbre de tous les processus en cours
ps -elfT ou bien ps axms
avoir en plus les inform­ations sur les threads
top ou bien top U login
affichage dynamique, top -H pour voir les threads
htop ou bien htop -u login
taper H pour voir les threads, t pour les arbres, F4 pour filtrer un nom
kill -SIGINT pid
interr­ompre le processus numéro pid
kill -SIGKILL pid
tuer le processus numéro pid qui résiste à SIGINT
killall -INT prog
interr­ompre tous les exempl­aires de processus de nom prog
killall -KILL prog
tuer tous les exempl­aires des processus de nom prog

Éditer, compiler et exécuter des programmes C

Éditer avec
nano, gedit, notepad++, emacs, vim
ou un autre éditeur à partir du moment que le codage est UTF-8
Compiler
gcc -Wall -std=gnu99 prog.c -o prog
Compiler avec un Makefile
make
Nettoyer le répertoire courant
make mrproper ou make clean
Exécuter prog
./prog
Interr­ompre le processus prog
ctrl-c ou ctrl-\
Formater un source C
indent -linux prog.c
Réutiliser systèm­ati­quement les exemples de Makefile et de sources C donnés avec le sujet de TD

Exemple

Exemple
sur cet exemple (PuTTY) on montre comment
1 - changer l'invite de commande
2 - se positi­onner dans un répertoire depuis son $HOME (ou ~)
3 - effacer les exécut­ables avec la règle mrproper du Makefile pour
4 - tout recompiler et
5 - exécuter le programme somme

Erreur de compil­ation bizzare

error stray '­\20­4' in program …
effacer puis retaper le texte
Erreur souvent due à un copier­/coller du web vers gedit : il faut téléch­arger les sources, pas faire des copier­/coller

Trouver les #inclu­de<>

Pour chaque appel système ou routine de la libc, consulter le manuel
Exemple pour fork() : taper
man fork
qui nous indique d'ajouter
#include <un­ist­d.h>
Dans le cas où il existe des entrées multiples dans le manuel, alors il faut préciser la section. Exemple :
man 3 sleep affiche la page de manuel de la fonction C sleep()
man sleep affiche la page de manuel de la commande bash sleep qui est trouvée en premier car elle est dans la section 1 (et non 3) du manuel
Pour touver toutes les entrées (et les sections corres­pon­dantes) contenant mot : man k mot

Badges

Nice Cheat Sheet Good Cheat Sheet Downloaded from Unusual Locations × 1

Comments

No comments yet.

Cheatography n. The art of mapping complex subjects into clear, instantly navigable reference guides.