Ich habe ein grundlegendes Shell-Skript gemacht, das nach einer Datei Existenz sucht. Es kann einen Parameter (optional) für das Schlafintervall erhalten. Wenn ich keine gebe, ist der Standardwert 60 Sekunden.Schlafintervall in Shell-Skript
Hier ist mein Code:
#!/bin/bash
minutes=60
if [ "$#" -eq 1 ]; then
re='^[0-9]+$'
if ! [[ "$1" =~ re ]]; then
echo $1 is not a number!
exit 1
fi
else minutes=$1*60
fi
while [ ! -f uj_aru ]
do
last | grep Apr
sleep "$minutes"
done
Nach läuft das ich diesen Fehler:
sleep: invalid time interval '*60'
ich hier denke, ist ein kleiner Fehler mit den Variablen, aber ich didn‘ Es gelingt mir, es herauszufinden.
Ändern Sie 'minutes = $ 1 * 60' in' minutes = $ (($ 1 * 60)) ' – user000001
Ist es für die Autocheck-Datei alle 60 Sekunden erforderlich? – Alex
Danke, es funktioniert! :) –