GNU/Linux >> Tutoriels Linux >  >> Linux

Le script n'exécute la boucle qu'une seule fois ?

Cette question a déjà une réponse ici :L'extension Brace ne fonctionne pas dans un script

(1 réponse)
Fermé il y a 1 an.

J'utilise ce script sur un routeur utilisant Entware pour vérifier la réponse du site Web toutes les 15 minutes. Il ne fonctionne qu'une seule fois et se termine après les 15 premières minutes. Pourquoi ?

#! /bin/sh

for i in {1..10}
do  
  date >> webresp.csv
  curl -w 'Testing Website Response Time for :%{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n' -o /dev/null www.google.com | tee -a webresp.csv
  sleep 900
done

Réponse acceptée :

Modifiez ceci :

for i in {1..10}

à ceci :

for i in $(seq 10)

…et le script devrait alors fonctionner comme prévu.


Linux
  1. Quatre tâches en parallèle… Comment faire ?

  2. Que signifie `:-` dans un script shell ?

  3. La substitution d'historique échoue lorsqu'elle est implémentée dans le script shell ?

  4. Comment arrêter le script Loop Bash dans le terminal ?

  5. Exécuter un script à chaque fois qu'un nouveau noyau est installé ?

Imprimer le temps d'exécution du script Shell sous Linux

Script bash pour la boucle expliqué avec des exemples

Demandez au script bash de répondre aux invites interactives

Script bash pour calculer le temps écoulé

déplacer uniquement si le fichier existe dans un script shell

Comment mesurer le temps d'exécution moyen d'un script ?