Comment utulisé awk dans mon script
Bonjour,
j'ai un scripte ou je doit prendre la duré comme un chiffre et non pas un caractère ,quelle la
façon ,mon script et le suivant:
ficin=$1
cut -c 37-48,188-198 $ficin | while read dure nd
do
if [[ $dure -gt 7200 ]]
then
echo $nb $nd >> FIC_Dure_SUP_2
fi
done
dure:la durée de communication
nd :numéros d'appel
merci d'anance.
j'ai un scripte ou je doit prendre la duré comme un chiffre et non pas un caractère ,quelle la
façon ,mon script et le suivant:
ficin=$1
cut -c 37-48,188-198 $ficin | while read dure nd
do
if [[ $dure -gt 7200 ]]
then
echo $nb $nd >> FIC_Dure_SUP_2
fi
done
dure:la durée de communication
nd :numéros d'appel
merci d'anance.
4 réponses
-
ContributeurSalut,
On peut voir à quoi ressemble le contenu de ton fichier "ficin" s'il te plaît ?
-
salut,
le contenu de fichier est le suivant:
WLL_BOUIRA 110051 SSC 020706834 20130620000032 079951
6648
00000115 00000006
avec le premier numéros = nd (020706834)
et le avant dernier =durée (000000115)
merci -
salut,
j'ai utilisée la cut -c 37-48,188-198,pour récupéré les deux champs numéros d'appel est la durée d'appel puis faire la condition sur la durée,c'est à dire la condition (dure -gt 7200).
merci-
ContributeurBen si tes champs récupérés sont bons, je ne vois pas où est le problème avec ton script, la preuve (j'ai simplifié avec $1 et $2, mais le test est le même) :
$ cat foo.sh #! /bin/bash if [[ $1 -gt 7200 ]] then echo $2 $2 else echo "Durée plus petite" fi $ ./foo.sh 7000 15 Durée plus petite $ ./foo.sh 7201 15 15 15 $
-
-
salut ,
quand j'ai exécute le script il ma fiche le message d'erreur suivant:
/dure: [[: 020675954: value too great for base (error token is "020675954")
que je doit faire
merci