Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/08/2006, à 13:24

RenZO

Bash : if [ls | grep sfv = 0] : quelle syntaxe ?

Hello !

J'aimerais faire un nautilus-script, qui vérifie la présence d'un type de fichier, avant de lancer un soft (qui utilise ce même fichier).
Je veux vérifier qu'il y a des sfv, afin de pouvoir lancer le check sfv.

if [$ ls | grep sfv -eq 0];then
zenity --error --title="Error" --text="Your folder doesn't contain sfv"
else

quelle est mon erreur ?
merci
RenZO

Hors ligne

#2 Le 15/08/2006, à 23:06

lunique

Re : Bash : if [ls | grep sfv = 0] : quelle syntaxe ?

Pour commencer, je pense que le $ tout seul ne sert a rien, ce doit plutot etre "$(ensemble commande)". De plus, il faut un espace apres le [ et un autre avant le ] (enfin, je crois que c'est ce que nous avait dit notre prof... ).
Ensuite tu teste si un ensemble de ligne vaut 0. Là, il n'est pas content, tu dois compter le nombre de ligne qui on sfv dans leur nom de fichier, et faire la chose s'il y en a, donc on utilise l'option -c de grep pour avoir un nombre qu'on pourra comparer à 0

Donc en regroupant tout  sa,  on obtient

if [ $(ls|grep -c sfv) -eq 0 ]

Voila, bonne soirée

Hors ligne