Le script ne s’exécutera pas lorsqu’il est utilisé avec echo –

#!/bin/bash cp "$1" tmpmulti ex tmpmulti << 'HERE' %s/.*/echo "&:" "validate_html &"/ wq HERE /bin/bash tmpmulti rm tmpmulti 

Je construis donc ce script dans le but de valider plusieurs sites HTML via le validateur w3c (exercice scolaire).

Le script reçoit en entrée un fichier texte avec plusieurs liens. J’ai déjà fait un script de validation pour un seul site qui fonctionne (validate_html). J’essaie de mettre ce script au format suivant:

 www.xxx.xx : This document was successfully checked as XHTML 1.0 Ssortingct! www.yyy.yy : Errors found while checking this document as XHTML 1.0 Transitional! 

Mais quand j’utilise mon script, je reçois:

 www.xxx.xx : validate_html www.xxx.xx www.yyy.yy : validate_html www.yyy.yy 

Le script validate_html n’est pas en cours d’exécution (il fonctionne quand il est appelé seul)

Quelqu’un a des conseils? 🙂

Avez-vous essayé quelque chose comme ça? J’ai ajouté le $() autour de votre validate_html pour qu’il soit exécuté et pas simplement imprimé.

 #!/bin/bash cp "$1" tmpmulti ex tmpmulti << 'HERE' %s/.*/echo "&:" "$(validate_html &)"/ wq HERE /bin/bash tmpmulti rm tmpmulti