Wir haben einen Server, auf dem Selenium-Tests mit unserer Erweiterung (für Chrome und Firefox) ausgeführt werden. Wir führen die Selenium-Tests alle 2 Stunden durch. Ich möchte nach 14:00 verschiedene Tests durchführen als vor 14:00. Ich habe diese Variable:Wie kann ich die Stunde mit einer Zeichenfolge/Zahl in bash vergleichen?
start_hour=`TZ='Asia/Tel_Aviv' date +"%H"`
Und ich weiß, wie es zu einer bestimmten Stunde zu vergleichen, wie 08.00 Uhr (es ist ein String):
if [ "$start_hour" = "08" ]; then
...
fi
Aber wie kann ich überprüfen, ob diese Variable zeigt eine Stunde nach 14:00 (einschließlich 14:00) oder vor 14:00? Kann ich Strings in bash vergleichen und wie? Ich möchte nur überprüfen, ob $start_hour
> = "14" ist, oder nicht?
Ist die Antwort anders, wenn ich nach 08:00 Uhr oder früher überprüfen möchte?
es gibt keinen Grund, die 8 zu zitieren - eine konstante ist, so wird nie pron sein e zu string-splitting und glob expansion (die quoting verhindert). Was du zitieren solltest, sind deine variablen Erweiterungen; also, "$ start_hour" ', nicht $ start_hour. –
BTW, du willst wahrscheinlich keine führende '0' in deiner '08'. Dies kann eine oktale Interpretation anfordern, und nur die Ziffern 0-7 können als oktal analysiert werden. –
Ich würde in Betracht ziehen, diese Frage zu verallgemeinern, um über größere/weniger als numerische Ganzzahlvergleiche in bash im Allgemeinen zu sprechen - es gibt keinen Grund, es speziell über Stunden zu machen. –