Programmation linux
yayou
Messages postés
1397
Date d'inscription
Statut
Membre
Dernière intervention
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour à tous!
En ce momment je travail sur la programmation unix et je suis tombé sur des instructions comme "if" ,"fi" ou "echo".Le problème c'est que linux et unix sont écrit en C mais je n'ai pas l'impression que l'instruction "fi" et "echo" par exmple fassent partie de la synthaxe du C.De plus, j'ai un ensemble de polycopes intitulés "Programmation Unix" dans lequel il ya justement ces instructions là.Alors, qu'est ce que ce langage? qu'est ce qui le différencie du C? Pourquoi l'a t-on élaboré? et enfin où pourrai-je trouver des cours détaillés sur ce langage? Ce serait vraiment trôp cool que vous me veniez en aide.Merci!
En ce momment je travail sur la programmation unix et je suis tombé sur des instructions comme "if" ,"fi" ou "echo".Le problème c'est que linux et unix sont écrit en C mais je n'ai pas l'impression que l'instruction "fi" et "echo" par exmple fassent partie de la synthaxe du C.De plus, j'ai un ensemble de polycopes intitulés "Programmation Unix" dans lequel il ya justement ces instructions là.Alors, qu'est ce que ce langage? qu'est ce qui le différencie du C? Pourquoi l'a t-on élaboré? et enfin où pourrai-je trouver des cours détaillés sur ce langage? Ce serait vraiment trôp cool que vous me veniez en aide.Merci!
A voir également:
- Programmation linux
- Linux reader - Télécharger - Stockage
- Application de programmation - Guide
- Toutou linux - Télécharger - Systèmes d'exploitation
- R-linux - Télécharger - Sauvegarde
- Backtrack linux - Télécharger - Sécurité
3 réponses
C'est la language pour de scripts de la shell. Il y a d'elements similaires a C m'est tres different. Typiquement on ecrit dans un fichier texte une liste de commandes qu'on veut executer, on rend le fichier executable (avec "chmod +x fichier") et on l'execute (avec /chemin/fichier ou ./fichier si on est dans le bon repertoire). Apres on peut ajouter de choses comme "if .." (avec "fi" pour marquer la fin) ou "for ..." (pour de boucles). En fait c'est une programmation en "commandes".
Par exemple tu as dans un repetoire 3000 fichiers et il te faut ajouter a chaque nom l'extension disons, ".ext", pour donner un exemple.
Pour un ou meme 10 fichiers tu fais a la main, mais pour 3000 tu fais un script comme:
Un shell-script est directement interprete par la shell. Par contre C doit etre compile (normalement avec gcc). C'est pour un autre type de problemes. Il y a de choses qu'il faut faire en C (gros calculs, algorithmes compliques, driver linux, ...) et d'autres choses qu'il faut faire avec un shell-script (manipulation et gestion de fichiers, demarrage de processus, automatisations der certaines taches, ...).
Pour la doc generale, il y a toujours:
http://www.lea-linux.org/
et:
http://doc.mandrakelinux.com/MandrakeLinux/100/fr/Command-Line.html/
Pour les shell-scripts je connais pas de doc simple, mail il y a les pages man (taper: "man bash"). C'est tres complet mais pas simple. Il faut aussi regarder les exemples sur son propre systeme Linux pour apprendre (par exemple les scripts de demarrage dans /etc/rc.d/init.d/...).
Par exemple tu as dans un repetoire 3000 fichiers et il te faut ajouter a chaque nom l'extension disons, ".ext", pour donner un exemple.
Pour un ou meme 10 fichiers tu fais a la main, mais pour 3000 tu fais un script comme:
cd /bon_repertoire for i in * ; do mv $i $i.ext done
Un shell-script est directement interprete par la shell. Par contre C doit etre compile (normalement avec gcc). C'est pour un autre type de problemes. Il y a de choses qu'il faut faire en C (gros calculs, algorithmes compliques, driver linux, ...) et d'autres choses qu'il faut faire avec un shell-script (manipulation et gestion de fichiers, demarrage de processus, automatisations der certaines taches, ...).
Pour la doc generale, il y a toujours:
http://www.lea-linux.org/
et:
http://doc.mandrakelinux.com/MandrakeLinux/100/fr/Command-Line.html/
Pour les shell-scripts je connais pas de doc simple, mail il y a les pages man (taper: "man bash"). C'est tres complet mais pas simple. Il faut aussi regarder les exemples sur son propre systeme Linux pour apprendre (par exemple les scripts de demarrage dans /etc/rc.d/init.d/...).
Salut,
Pour compléter je dirai qu'il explique plusieurs "shells" :
- bsh : le shell bourne (le plus ancien)
- csh : le C-shell - le plus proche du langage C
- ksh : le korn shell un dérivé du shell Bourne avec les avantages du C-shell
- sh : le shell POSIX - dérivé du shell Bourne, le standard des interpréteurs
- rsh : le shell restreint - comme son nom l'indique c'est un shell Bourne mais restreint
- bash : (Bourne Again Shell) le shell par défaut des distributions GNU/Linux
- tcsh : version améliorée du C-shell
- zsh : un condensé de bash, ksh et tcsh
Pour compléter je dirai qu'il explique plusieurs "shells" :
- bsh : le shell bourne (le plus ancien)
- csh : le C-shell - le plus proche du langage C
- ksh : le korn shell un dérivé du shell Bourne avec les avantages du C-shell
- sh : le shell POSIX - dérivé du shell Bourne, le standard des interpréteurs
- rsh : le shell restreint - comme son nom l'indique c'est un shell Bourne mais restreint
- bash : (Bourne Again Shell) le shell par défaut des distributions GNU/Linux
- tcsh : version améliorée du C-shell
- zsh : un condensé de bash, ksh et tcsh
Salut,
Non ce sont les langages du shell Unix ou Linux.
Ce sont des langages qui te permettent d'exploiter ton système (un peu comme le faisait MsDos)...
Voir http://www.commentcamarche.net/unix/unix-shell.php3
Ce sont des langages de plus haut niveau que le C et ils sont interprétés et non pas compilés comme le C....
Tu as là un bon gros manuel pour apprendre le bash (en anglais):
http://www.tldp.org/LDP/abs/html/
PS: J'ai encore répondu trop tard :-)
Non ce sont les langages du shell Unix ou Linux.
Ce sont des langages qui te permettent d'exploiter ton système (un peu comme le faisait MsDos)...
Voir http://www.commentcamarche.net/unix/unix-shell.php3
Ce sont des langages de plus haut niveau que le C et ils sont interprétés et non pas compilés comme le C....
Tu as là un bon gros manuel pour apprendre le bash (en anglais):
http://www.tldp.org/LDP/abs/html/
PS: J'ai encore répondu trop tard :-)