Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Linux > Applications > Shell

Shell Vos questions sur l'utilisation des commandes shell

Réponse
 
Outils de la discussion
Vieux 21/07/2008, 15h26   #1 (permalink)
Invité de passage
 
Date d'inscription: juillet 2008
Messages: 2
Par défaut Batch sous Linux ?

Bonjour a tous,

J'ai découvert le bat il y a peu et voudrai savoir si il y a un équivalent sous unix ou linux.
Quelqu'un pourrait il me renseigner?
Silend est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2008, 17h05   #2 (permalink)
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Date d'inscription: août 2005
Messages: 3 723
Par défaut

On va dire le .sh. Les systèmes Unix sont beaucoup plus complets que Windows côté commandes en ligne. En gros, un .sh, c'est un peu comme un .bat sauf qu'il faut rendre le fichier exécutable (chmod +x lefichier.sh) et que la première ligne du fichier indique l'interpréteur à utiliser, c'est-à-dire quel programme va être chargé d'exécuter ce qui suit. Par exemple, pour dire que tout ce qui suit dans le fichier doit être interprété par KSH, tu fais ça :
Code :
#!/bin/ksh
Ainsi donc :
Code :
#!/bin/ksh

echo "toto"
Est un script qui sera exécuté par KSH. Ce script demande donc tout simplement à KSH d'afficher "toto". Le gros point fort par rapport à Windows c'est que des interpréteurs, y en a tout plein, et qu'ils sont très malin : on peut facilement faire des boucles, des tests évolués, etc., choses très difficiles à faire en .bat car le jeu d'instructions de Windows est très limité. Mais du coup, écrire un script shell, c'est un peu plus compliqué : il faut connaître le langage utilisé par l'interpréteur et les commandes Unix qui sont souvent bien complètes, donc peut-être un peu difficiles à appréhender.

Pour plus d'info :
http://linux.developpez.com/faq/?page=Shells
http://eric-sanchis.developpez.com/linux/shell/bash/
http://marcg.developpez.com/ksh/
__________________

Avant d'utiliser le verbe "dédier", vérifiez-en le sens ici.
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2008, 19h17   #3 (permalink)
Nouveau membre du Club
 
Date d'inscription: janvier 2007
Localisation: France
Messages: 70
Par défaut

Salut,

Je te conseille cet excellent tutoriel sur bash, qui est le shell par défaut sur la grande majorité des distribs Linux :
http://eric-sanchis.developpez.com/linux/shell/bash/

Il existe d'autres shells (csh, zsh, ksh...), mais qui semblent moins répandus.
monnomamoi est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2008, 11h37   #4 (permalink)
Invité de passage
 
Date d'inscription: juillet 2008
Messages: 2
Par défaut

et bien merci à vous d'avoir été aussi rapide et précis dans vos réponses.

J'ai une autre question, je suis aussi utilisateur unix, les noyaux étant assez proches, les shells le sont ils eux aussi? Pour être plus clair, pourrais je utiliser le bash de la même façon sous unix et sous linux ou y a t'il beaucoup de différence?
Silend est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2008, 11h48   #5 (permalink)
Membre Confirmé
 
Avatar de Le Barde
 
Date d'inscription: juillet 2007
Localisation: Toulouse
Âge: 24
Messages: 298
Envoyer un message via MSN à Le Barde
Par défaut

En fait ce qu'il faut voir est que Linux est une sorte d'UNIX, comme Mac OS X, comme freeBSD et les autres. Pour chacun de ces systèmes, tu as un shell (souvent c'est BASH d'ailleurs). En fait, en gros si tu connais Bash et les commandes shell Linux, on peut dire que tu connais UNIX en gros.

En tous cas, sur le projet que nous développons dans ma boîte, le logiciel est disponible sous Linux, Solaris, AIX et *BSD, et nous n'avons qu'un seul et même script shell, qui est du bash...

Ensuite, je ne veux pas faire le gros, troll loin de là, mais je pense qu'on se fait vite au script shell, surtout si on a déjà versé dans du Batch. ...et tu verras la puissance du shell
Je me plains souvent dans mon boulot d'avoir à mettre les mains dans des scripts batch, et franchement, tu es bridé de partout.
__________________
Un seul dicton : l'expérimentation.

Un barde A Capella !
Le Barde est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2008, 12h25   #6 (permalink)
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Date d'inscription: août 2005
Messages: 3 723
Par défaut

Citation:
Envoyé par Le Barde Voir le message
Pour chacun de ces systèmes, tu as un shell (souvent c'est BASH d'ailleurs).
A mon sens, c'est plutôt KSH qui est plus répandu que Bash : il me semble que sous Solaris ou AIX, KSH sera installé par défaut, ce qui n'est pas le cas de Bash. J'ai toujours faut mes scripts avec KSH et je n'ai jamais eu de problème.
__________________

Avant d'utiliser le verbe "dédier", vérifiez-en le sens ici.
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2008, 16h33   #7 (permalink)
Membre Confirmé
 
Avatar de Le Barde
 
Date d'inscription: juillet 2007
Localisation: Toulouse
Âge: 24
Messages: 298
Envoyer un message via MSN à Le Barde
Par défaut

Ah mince alors, au temps puor moi
__________________
Un seul dicton : l'expérimentation.

Un barde A Capella !
Le Barde est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 23/07/2008, 00h45   #8 (permalink)
LLB
Rédacteur
 
Date d'inscription: mars 2002
Messages: 667
Par défaut

Citation:
Envoyé par _Mac_ Voir le message
Les systèmes Unix sont beaucoup plus complets que Windows côté commandes en ligne.
C'est principalement une question de logiciels installés par défaut, parce que bash, tr, sed et compagnie tournent aussi sous Windows. Et Powershell, un shell Microsoft - orienté Windows - n'est pas mauvais non plus.
LLB est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 29/07/2008, 15h51   #9 (permalink)
Membre du Club
 
Avatar de lozeu
 
Date d'inscription: janvier 2008
Localisation: Monpellier
Âge: 16
Messages: 99
Par défaut

Je crois que Bash est plus utilisé que Ksh (il s'en est inspiré, je pense).
Sinon, le batch c'est bien au début mais quand on découvre ou connait bash (ou ksh/csh) c'est autre chose.
J'ai été agréablement surpris par powershell qui entre nous est un peu pompé sur les shell unix mais c'est un progrès pour les utilisateurs de windows.
D'ailleurs: http://www.developpez.net/forums/sho...d.php?t=133903

Dernière modification par lozeu ; 29/07/2008 à 16h01
lozeu est déconnecté   Envoyer un message privé Réponse avec citation
Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Linux > Applications > Shell



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide