Exe programme shell

Résolu/Fermé
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 - 24 févr. 2010 à 20:16
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 - 28 févr. 2010 à 17:10
Bonjour,
svp je vx votre aide
script qui affiche les n (p e n=12) premier lignes d une liste de nom de fichiers admis en parametre d entree le script devra verefie que la donnee n est correcte et il en est de meme avec les fichiers . les parametres a passer a ce script sont n et les nom des fichiers
voila ce que j ai fait svp tu px modifie les erreurs et merci bien
#/bin/bash
echo "entrie le nom de fichier"
read file
if test-f $file
then
echo"entrie le nombre de ligne "
read x
if (($x<0))
then
echo"le nombre est incorrect"
else
head -n $x $file
fi
fi
merci d'avance

6 réponses

jipicy Messages postés 40805 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 898
24 févr. 2010 à 20:33
Salut,

d une liste de nom de fichiers admis en parametre
A mon avis il faut passer tous les fichiers dont on doit lire n lignes d'un coup et non pas demander les fichiers un par un.

./script_test.sh 5 fichier1 fichier2 fichier3



d entree le script devra verefie que la donnee n est correcte
Il faut vérifier que le 1er paramètre est bien une valeur numérique.
Voir Tester une variable numérique


et il en est de meme avec les fichiers .
Ensuite il faut tester que les autres paramètres du script sont bien des fichiers

shift
for param in "$@"
do
if [ -f  "${param}" ]
then
echo "${param} est bien un fichier."
else
echo "${param} n'est pas un fichier."
exit
fi
done

0
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 13
24 févr. 2010 à 22:30
excuse moi mais je crois pas que vous avez pas répond a ma question car apres que le programme tester si le file est un fichier il affiche les n ligne ce quelle manque ds votre programme
merci bien cher ami
0
jipicy Messages postés 40805 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 898
25 févr. 2010 à 07:40
Re-

Je ne t'ai pas donné le programme en entier, mais des briques à assembler, répondant à tes questions et aux besoins de ton script.

A toi de rassembler les parties en tenant compte de ce que je t'ai donné.

1 - Tester le 1er paramètre (numérique, voir lien)
2 - Tester les autres paramètres (tu peux tout a fait inclure l'affichage des lignes du fichier de suite après avoir testé que le paramètre est bien un fichier...)
0
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 13
25 févr. 2010 à 13:27
ok merci bien cher ami mais notre prof ma dis qu'il y a des erreurs donc il faut que l'éviter .personnellement j'arrive pas les déterminer .svp si tu px m'aider
merci
0
jipicy Messages postés 40805 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 898
25 févr. 2010 à 13:36
Essaye ça :

#! /bin/sh

#set -xv

# Test nombre params
if [ "$#" -lt 2 ]
then echo "ERREUR ! Il faut au moins 2 paramètres."
exit 3
fi

nbr="$1"
if ! ((nbr)) 2>/dev/null
then echo "ERREUR ! Le 1er paramètre n'est pas un entier."
exit 4
fi

shift
for param in "$@"
do
if [ -f  "${param}" ]
then
echo "${param} est bien un fichier."
echo "Affichage des ${nbr} premières lignes du fichier ${param}..."
echo
head -n "${nbr}" "${param}"
echo
else
echo "${param} n'est pas un fichier."
echo
fi
done
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 13
25 févr. 2010 à 13:53
merci bien ton script est parfait . merci bien
0
jipicy Messages postés 40805 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 898
25 févr. 2010 à 13:54
De rien, il ne te restera plus qu'à expliquer à ton prof les différents choix ;-))
0
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 13 > jipicy Messages postés 40805 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
28 févr. 2010 à 17:10
un autre demande svp je cherche des exercices de programation shell avec des corrections .connaissez vs des sites ???
merci d'avance .
0
adamodin Messages postés 78 Date d'inscription lundi 10 août 2009 Statut Membre Dernière intervention 15 décembre 2010 13
25 févr. 2010 à 14:01
oui merci bien j ai bien compr ton script .
un autre demande svp je cherche des exercices de programation shell avec des corrections .connaissez vs des sites ???
merci d'avance .
0