В этой статье мы узнаем, как создать скрипт оболочки, который находит и перечисляет все пустые файлы в указанном каталоге.
Пустые файлы могут иногда загромождать каталоги, и их выявление может быть полезно для целей очистки или аудита.
Мы расскажем вам о том, как написать простой, но эффективный скрипт на bash, который будет эффективно выполнять эту задачу.
Создание файла скрипта
Сначала нам нужно создать новый файл скрипта оболочки.
Откройте терминал и выполните следующую команду, чтобы создать файл с именем empty_files.sh
Напишем скрипт для поиска и вывода списка пустых файлов
Добавьте в файл следующий код.
#!/bin/bash
# Get the directory from the first script argument
directory="$1"
# Check if the directory argument is provided
if [ -z "$directory" ]; then
echo "Usage: $0 <directory>"
exit 1
fi
# Check if the provided argument is a valid directory
if [ ! -d "$directory" ]; then
echo "Error: '$directory' is not a valid directory."
exit 1
fi
# Find and list all empty files in the directory
echo "Empty files in $directory:"
find "$directory" -type f -empty
Пояснение к скрипту:
- Строка Shebang: #!/bin/bash указывает, что сценарий должен быть запущен с помощью оболочки bash.
- Аргумент директории: directory=”$1″ фиксирует первый аргумент, переданный скрипту в качестве директории для поиска.
- Проверка аргумента: if [ -z «$directory» ]; проверяет, пуст ли аргумент директории, и предлагает пользователю использовать его правильно, если это так.
- Проверка валидности каталога: if [ ! -d «$directory» ]; проверяет, является ли указанный аргумент действительным каталогом.
- Команда Find: find «$directory» -type f -empty ищет пустые файлы (-type f) в указанном каталоге (-empty).
Сделаем скрипт исполняемым
Сделайте скрипт исполняемым, изменив его права.
Запуск скрипта
Чтобы запустить скрипт, используйте следующую команду в терминале.
При запуске скрипта нам нужно указать каталог в качестве аргумента.
Система выведет все пустые файлы из каталога /var/log.
Заключение
В заключение хочу сказать, что создание сценария оболочки для поиска и вывода списка пустых файлов в каталоге – это простая задача, которая может значительно помочь в управлении и поддержании чистоты каталогов.
Этот скрипт проверяет достоверность входного каталога, использует мощную команду find для поиска пустых файлов и предоставляет удобный для пользователя вывод.
Следуя шагам, описанным в этой статье, вы сможете легко создать и использовать этот сценарий для упрощения задач управления файлами.
см. также:
- 📜 PowerShell: Скрипт автологина для подключений к удаленному рабочему столу
- 📜 Создание переменных, доступных только для чтения, а также неизменяемых переменных в Bash
- 🖥️ Плагин Nagios для проверки использования памяти на Linux
- 🔒 Скрытие пользовательского ввода в скриптах bash\
- 🐧 Запрет пользователям запускать `chmod 777`
- 🖧 Как проверить IPv4-адреса в скрипте
- 👥 Как создать быстрый кравлер веб-сайтов на PowerShell