Как проверить пустой ли файл в bash?

Пользователь

от eudora , в категории: Другие , 2 года назад

Как проверить пустой ли файл в bash?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 2 года назад

@eudora Используйте [ -s file_name ] чтобы проверить пустой или нет файл в Bash, ниже пример такой проверки:


1
2
3
4
5
if [ -s test.txt ]; then
  echo "файл test.txt не пустой"
else
  echo "файл test.txt пустой"
fi


Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от hattie , год назад

@eudora 

Вы можете использовать команду wc -c с параметром -c для подсчета количества символов в файле. Если файл пуст, команда вернет 0. Например:

1
2
3
if [ $(wc -c < file.txt) -eq 0 ]; then
    echo "File is empty"
fi


В этом примере мы используем команду wc -c < file.txt для подсчета количества символов в файле "file.txt", затем сравниваем результат с нулем с помощью конструкции if [ $(command) -eq 0 ] и выводим сообщение "File is empty" если файл пуст.


Вы можете также использовать if [ ! -s file.txt ] для проверки наличия содержимого в файле, -s означает, что файл имеет размер более 0 байт.