Contenu | Rechercher | Menus

Annonce

Le forum rencontre en ce moment quelques soucis de charge, il est possible qu'une erreur soit affichée quand vous postez un message, ne rechargez pas la page au risque de poster une seconde fois votre message

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

Déjà un an…

#1 Le 09/02/2013, à 00:28

commande bash dans une boucle

Bonjour à tous,

Voyez-vous mon erreur ?

#!/bin/bash
while read line
do
        echo $line
        search_path="/home/user/./"
        video_format='avi|mpg|mpeg|mkv|mka|mks|asf|wmv|mov|ogg|ogv|oga|ogx|3gp|3g2|webm|nut|flv'
done < <(find $search_path -type f -regextype posix-extended -iregex ".*\.($video_format)$")

Ce script est censé me retouner le listing de mes videos dans le répertoire précisé par la variable "search_path" mais ne me renvoi absolument rien.

Pourtant mes regex sont bonnes (notamment ma commande find), je les ai testé directement dans le terminal.

Merci pour votre aide.


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

#2 Le 09/02/2013, à 00:43

Re : commande bash dans une boucle

salut,

les variables devraient être définies une seule fois, en dehors de la boucle.

search_path me semble étrange. pourquoi ce point-slash?


eval, c'est mal.

Hors ligne

#3 Le 09/02/2013, à 00:47

Re : commande bash dans une boucle

Merci pour ta réponse.

Le problème est résolu.

En fait :

search_path="/home/user/./"
video_format='avi|mpg|mpeg|mkv|mka|mks|asf|wmv|mov|ogg|ogv|oga|ogx|3gp|3g2|webm|nut|flv'

doivent se trouver en dehors de la boucle. Faute d'inattention !

@Watael: merci pour ta réponse. Le chemin ne pose pas de soucis.

Dernière modification par wolf85kunst (Le 09/02/2013, à 00:47)


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

#4 Le 09/02/2013, à 00:51

Re : commande bash dans une boucle

B'soir,

Moi, ce qui me parait le plus étrange c'est la boucle while.
sans boucle, find donne le même résultat non ?


Asus M5A88-v EVO:AMD Phenom II X4 960T BE:16 Go DDR3:Precise Pangolin
HP dv7-3145ef:i5-430M:4 Go DDR3:Oracle Linux 6.4
EMachine EM350:Atom N450:1 Go DDR2:Debian Wheezy
Et Red Hat EL6 live fait maison a partir des sources.

Hors ligne

#5 Le 09/02/2013, à 00:53

Re : commande bash dans une boucle

@xavier4811 : Tout à fait. J'ai pas mis la totalité de mon code en fait. wink
Bonne soirée.

Dernière modification par wolf85kunst (Le 09/02/2013, à 00:53)


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

#6 Le 09/02/2013, à 01:06

Re : commande bash dans une boucle

wolf85kunst a écrit :

Le chemin ne pose pas de soucis.

ce n'est pas parce que ça ne cause pas de soucis, que c'est utile.
en l'occurrence, c'est un pléonasme.


eval, c'est mal.

Hors ligne

#7 Le 09/02/2013, à 01:15

Re : commande bash dans une boucle

J'en profite pour vous demander :

Comment capturer des zones avec les parenthèse capturante avec grep ?

Merci beaucoup

Dernière modification par wolf85kunst (Le 09/02/2013, à 01:16)


Les raisonnables ont duré, les passionnés ont vécu.
-- 10.04 Lucid Lynx --

Hors ligne

Haut de page ↑