Utile: liste des commandes doc.ubuntu-fr.org/tutoriel/console_commandes_de_base et doc.ubuntu-fr.org/tutoriel/console_ligne_de_commande
man en fr http://jp.barralis.com/linux-man/
terminal et console
un terminal n'est qu'une émulation d'une console.
6 consoles disponibles, elles sont accessible via Ctrl+Alt+Fx + 7 session Xorg
S'il y a plusieurs utilisateurs connectés, il y a plusieurs sessions Xorg auxquelles vous pouvez accéder via Ctrl+Alt+F9, etc. (à noter que Ctrl+Alt+F8 est en général une console spéciale où s'affichent des informations sur le démarrage de l'ordinateur).
Les consoles virtuelles sont les terminaux démarrés par défaut. Il y en a généralement six ( [Ctrl]+[Alt]+[Fx] x=1 à 6). Pour revenir à la session graphique, il faut utiliser la combinaison [Alt]+[F7] (parfois [Alt]+[F8]).
Shell - tips de base
trad de GNU-linux-Tools-Summary.txt
auto completion
TAB: complète nom commande & nom fichier et rep.
ESC-Y (Y: car spécial): test autoindex, bip/flash si ne trouve rien. ESC-X-Y (Y: car spécial): liste (sans compléter), bip/flash si ne trouve rien.
note car spéciaux:
caractères spéciaux (ESC-Y ou CTRL-X-Y)
~ (tilde) |
complète les noms de user |
@ (at sign) |
" machine |
$ (dollars sign) |
" nom de variable d'environnement |
! (exclamation mark) |
" nom commande & nom fichier (idem TAB). |
alias
Mandriva: /etc/profile.d/alias.sh mais dans .bashrc pour les autres linux
# ex d'alias perso
alias cp='cp -vi' #to prompt when copying if you want to overwrite and will tell you where information is going
alias rm='rm -i' #Prompts you if you really want to remove it.
alias mv='mv -i' #Prompts you if you are going to overwrite something
set -x (commande interne bash)
affiche commande avant exe (recherche erreur *!....). set +x retire la fonctionnalité. Meme un simple "ls" montre ls -F --color=auto
donc ls est un alias 
\ (backslash)
Faire en début de commande \ (backslash) pour le lancer sans l'alias. \rm est dangereux!
Sert aussi à stopper le developpement/expand de certains symboles, alternative à ' (single quotation marks)
script
cette commande log la session shell (tappées et sorties)
~ (tilde character)
répertoire home des users. ~user_name (sans * ou ! dans user_name) pour le home des autres users
divers
reset |
ré-initialise le terminal courrant. |
exit (CTRL-D) |
clore le terminal courrant (si x-terminals) ou logout |
logout |
|
echo |
pratique, ex: echo rm -R * n'efface rien, affiche ce qui serait effacé option -e permet de formater la sortie d'une ligne (\t tab, \n nouvelle ligne ...) |
set bell-style none (ou xset -b si X windows)
pour arreter le bip, à mettre dans .bashrc ou .bash_profile
Historique des commandes shell
Flèches haut et bas, entrée. history n liste le n dernières commandes passées.
!n execute la commande numéro n ; !! exe la dernière commande saisie ; et !-n exe celle utilisée n fois avant (!-1 équivaut à !!).
!string exe la dernière commande qui commence par string et !?string? qui contient le mot string.
commandName !* execute commandName avec les arguments utilisés à la commande précédente. Utile en cas de faute de frappe sur le nom de la commande 
recherche dans historique: Ctrl-R (reverse) et fleches gch/drt
recherche de la dernière utilisation de snort: faire CTRL-R puis saisir snort puis CTRL-R pour scroller ; quand on trouve le bon, faire ENTREE pour l'exe
flèches gauche/droite : place la commande trouvée dans le cli pour édition
autres CTRL-D Z A K ...
CTRL-D |
EOF logout rapide, ou dans un program, par ex dans un at pour dire qu'on a fini de saisir |
CTRL-Z |
stopper un process ou le mettre en bg un moment.
Lors édition d'un fichier avec vim, CTRL+Z permet de passer 1 ou 2 ls puis saisir fg pour récupérer vim (si fg KO faire jobs puis fg ID ou fg nom_job) |
CTRL-A et E |
aller au début (stArt) ou fin (End) de la ligne. |
CTRL-K
CTRL-Y
CTRL-W |
coupe/del ce qui avant le curseur
colle (CTRL-K ou CTRL-W précédent)
coupe/del toute la ligne |
Terminal virtuel et écran (ALT-F* et CTRL-ALT-F*)
Changer de term virtuel (configurés pour le shell): ALT-F2 (à 6) et ALT-F7 correspond à X. De X: CTRL-ALT-F*
Ecran, term virtuel
screen |
pour switcher d'un term virtuel à l'autre dans le meme term physique. Utile dans X avec ssh sur srv à distance, par ex.
Faire screen puis CTRL-A (debut ligne) et faire C : crée un nouvel terminal virtuel. CTRL-N term virtuel suivant ; CTRL-P précédent ; essayer CTRL-A pour se déplacer entre 2 term |
screen -S nom_de_la_session
|
Créer un nouveau screen en nommant la session.
ESPACE pour accéder à cette new session |
CTRL+a suivi de d
OU fermer le terminal et/ou ouvrir un autre terminal |
se détacher de la session du screen
screen -d toto3 force détachement
|
screen -r nom_de_la_session
|
se rattacher à la session du screen (ou avec id donné par -ls) |
screen -ls
|
Connaître les screen existants |
man
q pour quitter. man section_number tool_name
man -K keyword pour rechercher keyword (attention tp). man -f command voir détails commande (idem whatis). info man avec liens (si existe) - ex: info ls.
opérateurs
On peut composer deux ou plusieurs commandes à l’aide du caractère « ; » :
$ ls guide-unix.tex ; echo bonjour
guide-unix.tex
bonjour
$
opérateur && et ||
commande1 && commande2 -> exécute commande2 si commande1 s’exécute sans erreur ;
commande1 || commande2 -> exécute commande2 si commande1 renvoie une erreur (valeur <> 0)
var d'env
Lorsqu’un shell est exécuté par le système, un certain nombre de variables dites d’environnement sont instanciées.
$ env
SSH_AGENT_PID=2458
GPG_AGENT_INFO=/tmp/gpg-RtLtOG/S.gpg-agent:2459:1
MAIL=/var/spool/mail/unuser
HOSTTYPE=i386
PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin
HOME=/home/unuser
SHELL=/bin/bash
USER=nom-user
OSTYPE=Linux
$
caractères spéciaux du shell
-
$ permet le mécanisme d’expansion et donc permet de faire référence à la valeur de la variable nommée après, mais aussi de faire des calculs ou d’exécuter une autre commande ;
-
~ remplace le répertoire privé de l’utilisateur ;
-
& lance une commande en arrière-plan ;
-
* remplace toute chaîne de caractères ; ? remplace tout caractère ;
-
| pour créer un tube ;
-
> et < pour les redirections ;
-
; est le séparateur de commandes ; # est le caractère utilisé pour les commentaires ;
users
Voir La liste des groupes est dans /etc/passwd
(groupes des users) /etc/group
Si on tappe groups
on voit les groupes auquels le users logués appartient.
$ id anna
uid=1001(anna) gid=1001(anna) groupes=1001(anna),4(adm),21(fax),24(cdrom),29(audio),44(video), 46(plugdev), 104(fuse), 110(netdev),111(lpadmin),121(nopasswdlogin),122(sambashare),1002(mesusers)
Utile: liste des commandes doc.ubuntu-fr.org/tutoriel/console_commandes_de_base et doc.ubuntu-fr.org/tutoriel/console_ligne_de_commande
man en fr http://jp.barralis.com/linux-man/
Vers Bases - opérateurs - var - users - Plus
terminal et console
un terminal n'est qu'une émulation d'une console.
6 consoles disponibles, elles sont accessible via Ctrl+Alt+Fx + 7 session Xorg
S'il y a plusieurs utilisateurs connectés, il y a plusieurs sessions Xorg auxquelles vous pouvez accéder via Ctrl+Alt+F9, etc. (à noter que Ctrl+Alt+F8 est en général une console spéciale où s'affichent des informations sur le démarrage de l'ordinateur).
Les consoles virtuelles sont les terminaux démarrés par défaut. Il y en a généralement six ( [Ctrl]+[Alt]+[Fx] x=1 à 6). Pour revenir à la session graphique, il faut utiliser la combinaison [Alt]+[F7] (parfois [Alt]+[F8]).
Shell - tips de base
trad de GNU-linux-Tools-Summary.txt
auto completion
TAB: complète nom commande & nom fichier et rep.
ESC-Y (Y: car spécial): test autoindex, bip/flash si ne trouve rien. ESC-X-Y (Y: car spécial): liste (sans compléter), bip/flash si ne trouve rien.
note car spéciaux:
alias
Mandriva: /etc/profile.d/alias.sh mais dans .bashrc pour les autres linux
# ex d'alias perso
alias cp='cp -vi' #to prompt when copying if you want to overwrite and will tell you where information is going
alias rm='rm -i' #Prompts you if you really want to remove it.
alias mv='mv -i' #Prompts you if you are going to overwrite something
set -x (commande interne bash)
affiche commande avant exe (recherche erreur *!....). set +x retire la fonctionnalité. Meme un simple "ls" montre ls -F --color=auto
donc ls est un alias 
\ (backslash)
Faire en début de commande \ (backslash) pour le lancer sans l'alias. \rm est dangereux!
Sert aussi à stopper le developpement/expand de certains symboles, alternative à ' (single quotation marks)
script
cette commande log la session shell (tappées et sorties)
~ (tilde character)
répertoire home des users. ~user_name (sans * ou ! dans user_name) pour le home des autres users
divers
option -e permet de formater la sortie d'une ligne (\t tab, \n nouvelle ligne ...)
set bell-style none (ou xset -b si X windows)
pour arreter le bip, à mettre dans .bashrc ou .bash_profile
Historique des commandes shell
Flèches haut et bas, entrée. history n liste le n dernières commandes passées.
!n execute la commande numéro n ; !! exe la dernière commande saisie ; et !-n exe celle utilisée n fois avant (!-1 équivaut à !!).
!string exe la dernière commande qui commence par string et !?string? qui contient le mot string.
commandName !* execute commandName avec les arguments utilisés à la commande précédente. Utile en cas de faute de frappe sur le nom de la commande
recherche dans historique: Ctrl-R (reverse) et fleches gch/drt
recherche de la dernière utilisation de snort: faire CTRL-R puis saisir snort puis CTRL-R pour scroller ; quand on trouve le bon, faire ENTREE pour l'exe
flèches gauche/droite : place la commande trouvée dans le cli pour édition
autres CTRL-D Z A K ...
Lors édition d'un fichier avec vim, CTRL+Z permet de passer 1 ou 2 ls puis saisir fg pour récupérer vim (si fg KO faire jobs puis fg ID ou fg nom_job)
CTRL-Y
CTRL-W
colle (CTRL-K ou CTRL-W précédent)
coupe/del toute la ligne
Terminal virtuel et écran (ALT-F* et CTRL-ALT-F*)
Changer de term virtuel (configurés pour le shell): ALT-F2 (à 6) et ALT-F7 correspond à X. De X: CTRL-ALT-F*
Faire screen puis CTRL-A (debut ligne) et faire C : crée un nouvel terminal virtuel.
CTRL-N term virtuel suivant ; CTRL-P précédent ; essayer CTRL-A pour se déplacer entre 2 term
ESPACE pour accéder à cette new session
OU fermer le terminal et/ou ouvrir un autre terminal
screen -d toto3 force détachement
man
q pour quitter. man section_number tool_name
man -K keyword pour rechercher keyword (attention tp). man -f command voir détails commande (idem whatis). info man avec liens (si existe) - ex: info ls.
Vers Bases - opérateurs - var - users - Plus
opérateurs
opérateur && et ||
commande1 && commande2 -> exécute commande2 si commande1 s’exécute sans erreur ;
commande1 || commande2 -> exécute commande2 si commande1 renvoie une erreur (valeur <> 0)
Vers Bases - opérateurs - var - users - Plus
var d'env
Lorsqu’un shell est exécuté par le système, un certain nombre de variables dites d’environnement sont instanciées.
caractères spéciaux du shell
users
Voir La liste des groupes est dans
/etc/passwd
(groupes des users)/etc/group
Si on tappe
groups
on voit les groupes auquels le users logués appartient.$ id anna
uid=1001(anna) gid=1001(anna) groupes=1001(anna),4(adm),21(fax),24(cdrom),29(audio),44(video), 46(plugdev), 104(fuse), 110(netdev),111(lpadmin),121(nopasswdlogin),122(sambashare),1002(mesusers)