Séance 1 : Prise en main§

Creative Commons License Ce travail est sous licence Creative Commons Attribution-ShareAlike 3.0 France.

1

Pourquoi Linux ?§

Open-source, et donc

Largement utilisé :

2

Vocabulaire§

3

Pourquoi la ligne de commande ?§

4

Le shell§

5

Le shell§

6

Analyse de la ligne de commande§

# exemple
git commit --all   -m "fixed bug #42"
7

Analyse de la ligne de commande§

# exemple
git commit --all   -m fixed\ bug\ \#42

Note

Dans l'exemple ci-dessus, le caractère dièse (#) nécessite également un anti-slash, car lui aussi serait interprété par le shell (commentaire).

Dans la suite, nous verrons d'autres caractères spéciaux utilisés par le shell pour analyser les lignes de commandes.

Cet outil développé par Thierry Excoffier permet de bien comprendre les mécanismes en œuvre dans cette analyse.

8

Arguments d'un programme§

Les arguments d'un programme sont une liste de chaîne de caractères, passée à ce programme à son lancement.

int main(int argc, char* argv[]) {
  /* ... */
}

Le programme est libre d'interpréter ces arguments comme il le souhaite, mais il existe un certain nombre de conventions.

9

Conventions courantes sur les arguments§

10

Quelques commandes de base§

11

man [section] <commande> / man [options]§

Affiche une page du "manuel" (documentation).

<commande>

La commande dont on souhaite afficher le manuel.

[section]

Éventuellement, le numéro de section du manuel.

-k, --apropos <texte>

Liste toutes les pages du manuel contenant texte.

12

echo [options] <arguments>§

Affiche les arguments, séparés par des espaces.

-n

N'affiche pas de retour à la ligne après les arguments.

13

more [ficher]§

Affiche un fichier de manière paginée.

Indication

CTRL+C n'est pas une instruction spécifique à more; cela interomp la plupart des programmes lancés en ligne de commande.

14

id [options] [utilisateur]§

Affiche des informations sur un utilisateur.

utilisateur

Nom ou numéro d'utilisateur (défaut : utilisateur courant).

-u, --user

Affiche uniquement l'identifiant de l'utilisateur.

-G, --groups

Affiche uniquement les groupes auxquels appartient l'utilisateur.

-n, --name

Affiche l'identifiant textuel au lieu de l'identifiant numérique (avec -u ou -g).

15

date [options] [+format]§

Affiche une date au format demandé.

-d, --date=STRING

La date à afficher (défaut : date courrante)

+format

Format à utiliser pour l'affichage, cf. man date.

Exemples :

  • "+%d/%m/%y" affiche jour/mois/année (sur 2 chiffres)
  • +%A affiche uniquement le jour de la semaine
  • +%W affiche le numéro de la semaine

Note

La valeur passée à --date accepte de nombreux formats différents, y compris des expressions comme « tomorrow » ou « 2 years ago ».

Attention cependant au format xx/yy/zzzz, il est généralement interprété à l'américaine : mois/jour/année. Il vaut mieux lui préférer le format aaaa-mm-jj.

16

Travaux dirigés§

Consultez les ici

17