In Shell- oder Bash -Skripten muss häufig überprüfen, ob eine Datei existiert und ob sie leer ist. Dies ist besonders wichtig, wenn Sie sich mit Eingabe-/Ausgabematerial befassen oder Aktionen basierend auf dem Inhalt einer Datei ausführen. In diesem Artikel werden wir besprechen, wie Sie überprüfen, ob eine Datei existiert und diese Anleitung nicht so lesen oder nicht, wenn Sie nach einer einfachen Möglichkeit suchen, dies zu tun.
So überprüfen Sie, ob eine Datei vorliegt und in Bash leer ist
Bei der Arbeit mit Shell -Skripten ist es wichtig, zu überprüfen, ob eine Datei existiert und ob sie leer ist oder nicht. Dies ist besonders nützlich bei der Automatisierung von Aufgaben, die sich auf bestimmte und nicht leere Dateien verlassen, hier ein Beispiel, das veranschaulicht, wie die Datei vorhanden ist und leer ist:
#!/Bin/Bash
Dateiname = "Bashfile.Sch"
size_threshold = 1
# Überprüfen Sie, ob die Datei vorliegt
Wenn [-e "$ Dateiname"]
Dann
# Dateigröße in Bytes abrufen
Datei_Size = $ (WC -c < "$filename")
# Überprüfen Sie, ob die Datei leer ist
if ["$ file_size" -Gt "$ size_threshold"]
Dann
echo "Datei existiert und ist nicht leer"
anders
echo "Datei existiert, ist aber leer"
fi
anders
echo "Datei existiert nicht"
fi
In diesem Bash -Skript -Beispiel haben wir zuerst den Dateinamen, die Variable Size_threshold, festgelegt und dann prüfen, ob eine Datei mit dem angegebenen Namen mit der Option -e vorhanden ist. Wenn es vorhanden ist, verwenden wir den Befehl WC, um die Dateigröße in Bytes zu erhalten und sie in der Variablen File_Size zu speichern.
Als nächstes überprüfen wir, ob die Datei leer ist, indem Sie die Datei_Size mit der size_threshold vergleichen. Wenn die Datei größer als der Schwellenwert ist, geben wir eine Nachricht aus, die angibt, dass die Datei existiert und nicht leer ist. Andernfalls geben wir eine Nachricht aus, die angibt, dass die Datei existiert, aber leer ist.
Durch Festlegen eines Größenschwellenwerts können Sie das Skript anpassen, um zu überprüfen, ob die Datei basierend auf Ihren spezifischen Anforderungen leer ist.
Da die von mir überprüfe Datei leer ist, zeigt das Bash -Skript an, dass die Datei leer ist und eine Sache zu beachten ist, dass ich den Schwellenwert auf 1 Byte festgelegt habe. Es gibt auch andere Möglichkeiten, um festzustellen, ob die Datei leer ist oder nicht, aber keine davon findet die Datei leer, da sie 1 Byte des Platzes besetzt.
Abschluss
In Bash Scripting -Überprüfung, ob eine Datei existiert und ob sie leer ist oder nicht, ist ein entscheidender Aspekt des Shell -Skripts. In diesem Artikel haben wir gezeigt, wie man überprüft, ob eine Datei existiert und ob sie leer ist oder nicht ein einfaches Shell -Skript verwendet. Durch Festlegen eines Größenschwellenwerts können Sie das Skript anpassen, um zu überprüfen, ob die Datei basierend auf Ihren spezifischen Anforderungen leer ist.