GNU/Linux >> Linux Esercitazione >  >> Linux

Lo script esegue il ciclo solo una volta?

Questa domanda ha già una risposta qui :L'espansione del tutore non funziona in uno script

(1 risposta)
Chiusa 1 anno fa.

Sto usando questo script sul router utilizzando Entware per controllare la risposta del sito Web ogni 15 minuti. Funziona solo una volta e termina dopo i primi 15 minuti. Perché?

#! /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

Risposta accettata:

Cambia questo:

for i in {1..10}

a questo:

for i in $(seq 10)

…e lo script dovrebbe quindi funzionare come previsto.


Linux
  1. Cosa significa `:-` in uno script di shell?

  2. La sostituzione della cronologia non riesce quando viene implementata nello script della shell?

  3. Come posso assicurarmi che sia in esecuzione solo un'istanza di uno script Ruby alla volta?

  4. Esegui uno script di shell ogni giorno in un momento specifico

  5. Shell Script while loop:[intorno a una pipeline manca `]'

Quattro compiti in parallelo... Come farlo?

Stampa il tempo di esecuzione dello script della shell in Linux

Script Bash per Loop spiegato con esempi

Come misurare il tempo medio di esecuzione di uno script?

Rispondere sì a ssh-copy-id la prima volta che viene eseguito dallo script?

Bash loop decomprimere lo script di file con password