Проверка на съществуването на Bash файл
В процеса на писане на bash скриптове, доста често става необходимо да се провери дали даден файл по някакъв начин съществува, преди да предприемете каквото и да е действие.
Тази работа е за командата test, която ви позволява да разберете дали файлът съществува и какъв тип е той.
В края на теста командата test задава изходния код на 0 ( TRUE - true) или 1 ( FALSE - false) в зависимост от това как е приключил тестът.
Освен това командата test има логически оператор за отрицание, който ви позволява да получите утвърдителен отговор TRUE, когато проверявате твърдението, че файлътне съществува.
Готин съвет: Направете своя bash скрипт по-умен! Нека прави повече тестове! Проверете дали даден файл съдържа определен ред! Продължете да четете →
Bash: Проверка на съществуването на файл от командния ред
Изпълнете една от командите по-долу, за да проверите дали файлът FILENAME съществува:
Съществува ли файлът /etc/passwd ( TRUE - true):
Съществува ли файлът /etc/bebebe ( FALSE - false):
Проверете обратното, че файлът /etc/bebebeне съществува ( TRUE - true):
Ако файлът съществува, тогава...
Обикновено проверяваме за съществуването на файл, за да извършим някакво действие въз основа на резултатите от проверката.
Може би ако файлът не съществува, тогава няма смисъл да продължавате изобщо и трябва да прекъснете изпълнението на скрипта или нещо подобно.
В следващите примери ще отпечатаме съответните съобщения въз основа на резултатите от тестовата команда.
Готин съвет: Конструкцията CASE е най-простата форма на конструкцията IF-THEN-ELSE! Ако имате много ELIF елементи, тогава е по-добре да използвате CASE! Продължете да четете →
Проверете дали файлът /etc/passwd съществува иотпечатайте съобщение, ако е вярно ( TRUE ):
Проверетене съществува, ако файлът /etc/bebebe съществува и отпечатайте съобщение, ако е вярно ( TRUE ):
Проверете дали файлът съществува и отпечатайте съответното съобщение във всеки случай:
Bash скрипт: Съществува ли файл?
Създайте празен файл checkfile.sh с командата touch checkfile.sh.
Направете го изпълним chmod +x checkfile.sh.
Съвет: Един добър bash скрипт трябва да отпечата подходящото съобщение и да прекъсне, ако не получи необходимите аргументи! Много лесно се настройва! Продължете да четете →
Запазете и стартирайте скрипта:
Проверете дали файлът съществува и...
В примерите, показани по-горе, използвайки ключа -f, ние само проверихме дали файлът съществува и дали еобикновен файл.
Изпълнете теста на човека, за да видите всички налични опции.