Aide pour script unix
cora59
-
drup -
drup -
Bonjour,
je voudrais créer un script unix qui :
J'ai dans 1 fichier de paramètres des noms de fichiers par ex :
fichier A
fichier B
....
Je veux que le script prenne ce fichier en entrée et que pour chaque nom de fichier (fichier A, fichier B), il compte le nombre de lignes, de mots et de caracteres et mette le résultat dans un troisième fichier style :
nom fichier | nbre ligne|nbre de mots|nbre de caractères
merci pour votre aide je connais pas grand chose à unix, à part qu'il faut utiliser le shell wc
cora59
je voudrais créer un script unix qui :
J'ai dans 1 fichier de paramètres des noms de fichiers par ex :
fichier A
fichier B
....
Je veux que le script prenne ce fichier en entrée et que pour chaque nom de fichier (fichier A, fichier B), il compte le nombre de lignes, de mots et de caracteres et mette le résultat dans un troisième fichier style :
nom fichier | nbre ligne|nbre de mots|nbre de caractères
merci pour votre aide je connais pas grand chose à unix, à part qu'il faut utiliser le shell wc
cora59
A voir également:
- Aide pour script unix
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Script cmd - Guide
- Script download - Télécharger - Édition & Programmation
4 réponses
Salut,
while read ligne do var=$(cat "$ligne" | wc) echo -e "$ligne : $var" done < fichier.entrée > fichier.sortie;-))
Parce que c'est la syntaxe usuelle (utilisation d'une boucle while) pour lire un fichier ligne par ligne.
ou bien avec une boucle for , en comptant le nombre de
lignes et de caracteres : cat fichier | wc -l et cat fichier | wc -m :
repertoire oû se trouvent les fichiers texte :
cd /repertoire
for file in `ls -1 *` ; do
nbl=$(cat "$file" | wc -l) ;
nbc=$(cat "$file" | wc -m) ;
echo "fichier $file : nb-ligne: $nbl nb-carac: $nbc" ;
echo "fichier $file nb-ligne: $nbl nb-carac: $nbc" >> ~/compteur;sleep 2;
done
lignes et de caracteres : cat fichier | wc -l et cat fichier | wc -m :
repertoire oû se trouvent les fichiers texte :
cd /repertoire
for file in `ls -1 *` ; do
nbl=$(cat "$file" | wc -l) ;
nbc=$(cat "$file" | wc -m) ;
echo "fichier $file : nb-ligne: $nbl nb-carac: $nbc" ;
echo "fichier $file nb-ligne: $nbl nb-carac: $nbc" >> ~/compteur;sleep 2;
done
merci