Utilisateur:Robin Millette/Intro à la ligne de commande

De Wiki FACiLe
Aller à la navigation Aller à la recherche

Avant les logiciels, il y avait les librairies

Readline, etc.

Longue lignée

intefaces readline à la vim ou emacs

Choisir un terminal (si on est dans X)

Choisir un shell

Bash, zsh, etc.

Trucs Bash/readline

TAB pour compléter les noms de commandes et fichiers

Installer le paquet bash-completion ou équivalent sur votre distro pour compléter aussi les options

CTRL-R pour chercher dans l'historique (ex. CTRL-R cd CTRL-R va trouver la commande précédente qui inclut la chaine "cd" et puis celle qui la précère (2e CTRL-R).

Historique des commandes

Chez moi, je configure l'historique pour retenir les 10,000 dernières commandes passées et j'ai très souvent recourt à CTRL-R pour entrer des longues commandes rapidement.

Flèches haut, bas pour l'historique très récent (préférer CTRL-R autrement, pour l'habitude)

! pour sauter à la ennième commande de l'historique

Configuration des fichiers d'initialisation du shell

.profile, .bash_rc, etc.

Entrée et sortie standards

  • redirection
  • pipe
  • enregistrement (screencast)
  • transformer son filesystem en client irc avec ii

Types de commandes CLI

Types d'interfaces

  • pseudo graphique genre ncurses
  • commande -> réponse, genre ls
  • commande et sous-commandes, genre git
  • caca (conversion graphique -> ascii couleur, avec vlc à la console ou hasciicam par exemple)

Commandes CLI de base

Commandes CLI pour filtrer (les pipes)

Commandes CLI pour des équivalents GUI

sc pour un spreadsheet, w3m pour un fureteur, mutt pour l'email, etc.

Lancer des commandes GUI

S'orienter

Changer de répertoire

  • cd pour changer de répertoire
  • cd - pour revenir au répertoire précédent
  • cd .. pour aller au répertoire parent
  • wcd (ou autre) pour aller rapidement à un répertoire sans connaitre ou taper le nom complet
  • chemins relatifs et absolus

Liens symboliques

Relatifs, absolus, physiques, logiques...

Le prompt

Ce qui précède le $ avant de taper une commande.

Comment l'ajuster.

Trouver des fichiers

  • ls énumère les fichiers; ls -R le fait récursivement (peut être long); ls */allo trouve les fichiers allo de tous les sous-répertoires directs; ls */*/allo trouve allo dans les sous-sous-répertoires.
  • (m)locate trouve instantannément le chemin absolu d'un fichier, basée sur une db mise à jour tous les matins (cron)
  • find parcours les disques pour trouver un fichier et lui faire quelque chose (plus long, selon la taille des disques)


Que d'options!

Chaque commande peut prendre une multitude d'options. man pour le manuel, parfois info et aussi COMMANDE --help.


Jeux et jouets

  • sl au lieu de ls
  • 2048 en lettres
  • bsd games

ssh et les serveurs distants

aux vidanges les mots de passe, on utilisera des clés privés/publiques et un passphrase

voir ssh-agent pour éviter de taper son passphrase tout le temps

Utiliser ssh -A si vous controler le serveur distant et que vous voulez faire un ssh à partir de ce serveur sans retapper votre passphrase.

configurer le client ssh

screen et tmux

Plusieurs sur la même console, etc.

Commandes d'administration de systême, indépendants de la distro

Commandes d'administration de systême, selon la distro

Gestions des tâches

  • CTRL-z pour suspendre une commande et obtenir le prompt, bg pour la redémarrer en background ou fg pour la redémarrer en foreground. CTRL-c pour interrompre la commande. CTRL-s pour suspendre et CTRL-Q pour reprendre.
  • nice, ionice, renice
  • htop et le vénérable top pour voir les processus en cours