Уважаемые, мне нужно проверить аргумент, чтобы проверить, является ли он каталогом, обычным файлом или другими типами файлов, поскольку я знаю, что все, что не является каталогом, является файлом, поэтому я могу сделать тест, например
br@IBMLC0B2ZJL:/mnt/d/a343$ [ -f gg.sh ] && echo "file"
br@IBMLC0B2ZJL:/mnt/d/a343$ [ -d folder ] && echo "directory"
но я только что увидел вопрос, который требует проверить файл, нормальный ли файл или нет, есть ли идеи проверить это ??
Исходный вопрос: «Напишите сценарий оболочки, который принимает имя файла или каталога в качестве аргумента. Получите отчет сценария, если это обычный файл, каталог или другой тип файла. Если это обычный файл, выйдите со статусом выхода 0. Если это каталог, выйдите со статусом выхода 1. Если это файл другого типа, выйдите со статусом выхода 2. "