Yves j'y ai cru ;-)

~#wc -l supMajUserEmargos | grep -q "^1 " ; then echo "1 ligne" ; else echo
"pas 1 seule ligne"; fi
pas 1 seule ligne
~#
alors que le fichier en contient une et une seule.

Pas si simple ;-)





Le 1 juin 2017 à 14:04, David Martin <[email protected]> a écrit :

> [ "$(wc -l < monfichier.txt)" == "1" ] && echo 'ok' || echo 'KO'
>
> Ne fonctionne pas
>
>
>
> Le 1 juin 2017 à 13:58, David Martin <[email protected]> a écrit :
>
>> Merci pour vos réponses,
>>
>> Je viens de faire le test avec la solution de Lorenzo, ça ne semble pas
>> fonctionner.
>>
>> Test fait avec une ligne... puis j'ai fait un echo toto >> fichier pour
>> en rajouter une, toujours le meme resultat : pas bon.
>> Même sur un fichier vide ça ne passe pas.
>>
>>
>> Mon but étant de controler :
>>
>> si j'ai une ligne c'est bon.. si j'en ai deux pas bon, si j'en ai
>> 3...;etc... pas bon...
>> si j'en ai 0 pas bon
>>
>> 1 ligne OK
>> 2 ou plus KO
>> 0 KO
>>
>> je ne sais pas si c'est possible.
>>
>> Le 1 juin 2017 à 12:47, Lorenzo Bernardi <[email protected]
>> .fr> a écrit :
>>
>>> Bonjour,
>>>
>>> wc -l te donne le nombre de ligne dans un fichier typiquement
>>>
>>> wc -l  monfichier.txt
>>>
>>> 1234 monfichier.txt
>>>
>>> donc
>>>
>>> wc -l monfichier.txt | cut -c1,2 te renvoie les deux premier caractere.
>>> Toi tu veux "1 " pas seuluement le premier parceque sinon tout les fichier
>>> dont le nombre de ligne commence par 1 passe le test.
>>>
>>> if [ $(wc -l monfichier.txt | cut -c1,2) -eq 1 ];  then
>>>
>>> echo "OK";
>>>
>>> else
>>>
>>> echo "pas bon ";
>>>
>>> fi
>>>
>>> devrait te permettre de verifier si tu n'a qu'une ligne. $(wc -l
>>> monfichier.txt | cut -c1,2) permet de recuperer dans une variable la sortie
>>> de la commande wc -l monfichier.txt | cut -c1,2.
>>>
>>> Après bien sur cela dépend de ton shell (ici bash)
>>>
>>> cordialement
>>>
>>> L.
>>>
>>> On 06/01/2017 12:19 PM, David Martin wrote:
>>>
>>> Bonjour à tous,
>>>
>>> C'est tout bête mais je ne vois pas comment je peux faire un controle
>>> sur une ligne.
>>>
>>> J'ai un fichier, dans lequel je génére une ligne d'éxécution (un
>>> resultat d'un bash), si j'en ai plusieurs
>>> c'est que j'ai un problème dans l'éxécution de mon script.
>>>
>>> Comment puis-je faire pour controler si j'ai strictement et seulement
>>> une seule ligne dans ce fichier,
>>> mais si j'en ai plusieurs ça ne va pas ?
>>>
>>> echo "c'est bon"
>>>
>>>
>>> echo "c'est pas bon"
>>>
>>> Je pourrais faire un controle si il est vide ou pas, mais ce n'est pas
>>> ça dont j'ai besoin
>>>
>>> Si vous avez une idée ?
>>>
>>>
>>> --
>>> david martin
>>>
>>>
>>>
>>
>>
>> --
>> david martin
>>
>>
>
>
> --
> david martin
>
>


-- 
david martin

Répondre à