jubei6 Posté(e) le 20 mars 2009 Partager Posté(e) le 20 mars 2009 Bonsoir, J'ai ces 4 exercices à faire et je suis complètement perdu. Quelques pourrait m'aider SVP ? Merci EXERCICE N°1 Réaliser un script nommé cours_ok qui affiche le message suivant : « Le cours d’unix peut démarrer » si le nombre de stagiaires connectés est au moins égal 7. Autrement le message suivant sera affiché « Merci de patienter quelques minutes ». EXERCICE N°2 Ecrire une procédure nommée quid qui affiche le numéro UID ainsi que le répertoire d’accueil de l’utilisateur dont le nom de connexion est saisi en interactif. EXERCICE N°3 Ecrire une procédure nommée save qui reçoit trois informations dans cet ordre un fichier à sauvegarder, un répertoire dans lequel le fichier sera sauvegardé et une extension à ajouter au nom du fichier sauvegardé. Il est conseiller de tester certaines informations. EXERCICE N°4 Ecrire une procédure gener_file qui reçoit deux informations, un nom de fichier et un nombre de fichier à créer. La procédure doit tester le nombre de paramètres, dans le cas où ce nombre a une valeur différente de deux un message d’erreur sera affiché et l’exécution arrêtée. Autrement chaque fichier crée doit contenir la date de création. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 20 mars 2009 Partager Posté(e) le 20 mars 2009 Vous êtes tous connectés sur la même machine ? Pour le 1 * Les connections établies s'obtiennent avec "who". * Pour les compter, un coup de "wc -l" devrait faire l'affaire. * un test > se fait ainsi if [[ "$variable" -ge 42 ]] then echo "tadam" else echo "pouet" fi pour le 2 * le uid se récupère avec "id -u" (id donne plein d'autres infos) * Cela dit, je penses qu'il veut que tu parse le fichier /etc/passwd, avec cat, grep et cut pour le 3 * les arguments récupérés sont $1, $2 et $3 * le nombre d'arguments est $# * les tests sur les fichiers sont détaillés dans man test, par exemple pour test si $variable est un répertoire, on ferait if [[ -d "$variable" ]] then echo "repertoire" else echo "pas repertoire" fi pour le 4 *on peut sortir en appelant exit * si tu veux vraiment mettre exactement la date de création dans le fichier, il faut faire en deux temps : 1° les creer avec touch 2° écrire leur date de création dedans, celle-ci peut se récupérer avec "ls -l --time=ctime" voilà Lien vers le commentaire Partager sur d’autres sites More sharing options...
nonas Posté(e) le 20 mars 2009 Partager Posté(e) le 20 mars 2009 Ta bonté te perdra lorinc... Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 20 mars 2009 Partager Posté(e) le 20 mars 2009 C'est pas comme ci je donnais un résultat à la faismesdevoirs.com (remarque je pourrais peut-êter gagner de l'argent) Il y a eu pas mal de grèves ces derniers temps (j'en sais quelque chose), et donc plein de cours annulés. Du coup, pas mal de matières qui sont déjà abruptes (unix en fait partie) deviennent apocalyptiques. C'est hyper vrai avec unix parce que la difficulté tient plus à connaître par coeur un ensemble de commande qu'à la manière de les enchaîner. Alors quand les cours dans lesquels on est sensé les voir ont sauter, La Divine Comédie ressemble ressemble à un épisode de télétubbies à côté de ce genre d'exo... Quand je donnais des exos du genre, je donnais au moins la liste des outils à utiliser ainsi que la syntaxe pour les plus compliqués d'entre eux. Comme ça, je me disais qu'on passerait plus de temps à essayer de devenir un peu plus malins enréfléchissant à comment goupiller tout ça ensemble, qu'à tenter de trouver la bonne page du manuel... Et puis je voulais aussi répondre avant tuXXX... Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 Merci Beaucoup Lornic je me mets au travail tout de suite je te dirai si cela fonctionne ou pas et on est tous connecté sur la même machine à tout de suite... MERCI Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 Pour lem oment dans le premier j'ai le message Merci de patienter quelques minutes :( CODE : if [[ "$wc-l" -ge "1" ]] then echo "Le cours d'unix peut demarrer" else echo "Merci de patienter quelques minutes" fi Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 Ok c bon j'ai réussi le premier mais le 2ème je ne sais pas vraiment : EXERCICE N°2 Ecrire une procédure nommée quid qui affiche le numéro UID ainsi que le répertoire d’accueil de l’utilisateur dont le nom de connexion est saisi en interactif. :( Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 Ok je suis au 3ème : EXERCICE N°3 Ecrire une procédure nommée save qui reçoit trois informations dans cet ordre un fichier à sauvegarder, un répertoire dans lequel le fichier sera sauvegardé et une extension à ajouter au nom du fichier sauvegardé. Il est conseiller de tester certaines informations. Et je sais pas par quoi commencer :/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 EXERCICE N°3 Ecrire une procédure nommée save qui reçoit trois informations dans cet ordre un fichier à sauvegarder, un répertoire dans lequel le fichier sera sauvegardé et une extension à ajouter au nom du fichier sauvegardé. Il est conseiller de tester certaines informations. J'ai fait qqch comem cela mais c fonctionne pas correctement : CODE : if [[ -f $1 ]] 2 then 3 cp $1 /home/dos/bin/backup/ 4 else 5 echo "$1 n est pas un fichier" 6 fi Qnn pourrait m'aider ? Merci... Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 c bon pour le 3 Je suis au 4ème là EXERCICE N°4 Ecrire une procédure gener_file qui reçoit deux informations, un nom de fichier et un nombre de fichier à créer. La procédure doit tester le nombre de paramètres, dans le cas où ce nombre a une valeur différente de deux un message d’erreur sera affiché et l’exécution arrêtée. Autrement chaque fichier crée doit contenir la date de création. Si Qnn a des idées je suis là Merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
jubei6 Posté(e) le 21 mars 2009 Auteur Partager Posté(e) le 21 mars 2009 J'ai fait qch comem cela mais ça fonctionne pas :( CODE : 1 fichier=$1 2 nombre=1 3 information=2 4 5 if [ $# -ne 2 ] 6 7 then 8 information!=2 9 fi 10 11 12 echo "La valeur est differente de 2" 13 else c pas finit :/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.