[ "$(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]
> > 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

Répondre à