(1 Antwort)
Vor 2 Jahren geschlossen.
Ziel:Prüfen Sie, ob eine .tgz-Sicherungsdatei vorhanden ist, die das heutige Datum enthält; Ausgabe 1 für OK, 0 für keine Datei.
Ich bin ein Fan von Einzeilern 🙂
Zum Beispiel in PHP (und ziemlich ähnlich in Javascript), in verschiedenen Szenarien mache ich gerne so etwas wie
<?php
echo (date("d")==1)?"Monday":"Not Monday";
?>
Gibt es eine ähnliche Syntax in Bash? Ich weiß, wie man mit -f FILENAME auf das Vorhandensein einer regulären Datei prüft, ich möchte nur, dass der Befehl 1 oder 0 druckt 🙂
Akzeptierte Antwort:
Sie können dies einfach tun:
#to check if it's a regular file
[ -f "/you/file.file" ] && echo 1 || echo 0
#to check if a file exist
[ -e "/you/file.file" ] && echo 1 || echo 0
In der Shell dieses Zeichen [
bedeutet Test, -e
falls Datei existiert ]
Ende des Tests &&
Wenn der Befehl true zurückgibt, führe den Befehl nach ||
aus Wenn der Befehl falsch zurückgibt, führe den Befehl danach aus.
Dies sollte in der shell
funktionieren und bash