Poldet1.ru

Пул Дет №1
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как проверить, существует ли папка, и не создать ли ее?

Как проверить, существует ли файл или каталог в Bash

FavoriteДобавить в избранное

Главная » Операционная система Linux » Как проверить существование файла или каталога в Bash

Как проверить, существует ли файл или каталог в Bash

В Bash вы можете использовать команду test, чтобы проверить, существует ли файл, и определить его тип.

Команда тестирования имеет одну из следующих синтаксических форм:

Если вы хотите, чтобы ваш скрипт был переносимым, вы должны предпочесть использовать старую тестовую команду [, которая доступна во всех оболочках POSIX. Новая обновленная версия команды test [[(двойные скобки) поддерживается в большинстве современных систем, использующих Bash, Zsh и Ksh в качестве оболочки по умолчанию.

Проверяем если файл существует os.path.exists() и os.path.isfile()

Самый простой способ проверки существования файла в Python — это использование методов exists() и isfile() из модуля os.path в стандартной библиотеке.

Эти функции доступны в Python 2 и Python 3.7, и обычно их рекомендуют использовать в первую очередь, если вы ищете помощь в документации Python или ищете решение проблемы в Google.

Есть ли у вас вопросы по Python?

На нашем форуме вы можете задать любой вопрос и получить на него ответ от всего нашего сообщества!

Telegram Чат & Канал

Присоединяйтесь к чату Python и общайтесь с людьми, разделяющими ваши интересы! Присоединяйтесь к сообществу!

Паблик VK

Сообщество Python в социальной сети VK. У нас есть книги и видео для вас!

Вот пример работы с os.path.exists() . Мы проверим существование нескольких путей (файлов и папок):

Существование файлов и папок определяется с помощью os.path.exists(). Если вы хотите убедиться, что путь указывает на файл, а не на папку, то следует использовать os.path.isfile()

Читайте так же:
Как разбить значения ячеек на несколько столбцов в Excel?

Для обеих функций важно помнить о том, что они проверяют только существует файл, или нет, а не наличие доступа программы к нему. Если подтверждение доступа к файлу важно, то вам нужно выполнить простое открытия файла и поймать исключение IOError.

Мы вернемся к этой технике, когда будем подводить итоги в конце руководства. Но перед этим, рассмотрим еще один способ проверки существования файла в Python.

Проверка наличия файла

Проверка того, является ли данный файл Bash файлом (т.е. существует ли файл), выполняется с помощью параметра -f.

#!/bin/bash
if [ -f $HOME ]
then
echo «$HOME — это файл»
else
echo «$HOME — это не файл»
if [ -f $HOME/.bash_history ]
then
echo «А вот .bash_history — файл»
fi
fi

Пример того, как этот код работает:

Сценарий проверяет, является ли $HOME файлом. Если результат отрицательный, то проверяется файл .bash_history, который уже возвращает true.

На практике лучше сначала проверить наличие объекта как такового и только потом его конкретный тип. Таким образом, можно избежать различных ошибок или неожиданных результатов работы программы.

Как проверить файл без антивирусной программы

Кроме того, вы можете проверить файл непосредственно через Интернет, если на вашем компьютере нет антивирусной программы или вы не уверены в ее надежности. Этот сайт проверяет файлы не несколькими антивирусами, а более чем пятьюдесятью.

Принцип простой. Открываем virustotal.com, нажимаем на кнопку «Выберите файл» и выбираем файл на компьютере. После этого нажимаем на кнопку «Проверить».

Появится окно с информацией о том, проверялся ли файл ранее, когда он проверялся и каковы были результаты проверки.

Я вам рекомендую, каков бы ни был результат, все равно нажать на кнопку «Повторить анализ» в этом окошке. После этого начнется проверка файла и через непродолжительное время вы получите всю информацию по нему.

Читайте так же:
Как преобразовать лист или ячейки Excel в таблицу HTML?

Изображение показывает, что файл безопасен, но одной из 53 антивирусных программ он не понравился. В этом случае можно использовать файл. Однако если есть еще программы, которым он не нравится, лучше удалить файл.

Минусы Если в файле найдено что-то плохое, сайт не сможет это вылечить или удалить. Удаление можно сделать вручную или с помощью антивирусной программы, установленной на вашем компьютере (если она найдет вирус).

Еще один серьезный минус — ограничение по размеру. Можно проверить только файлы, размер которых не превышает 128 МБ.

Кроме того, проверяя файл через Интернет, вы отправляете его производителям антивирусного программного обеспечения. Следовательно, проверяя файл, вы соглашаетесь с тем, что он станет собственностью других людей.

Для создания папки/каталога в любой операционной системе необходимо выполнить следующую команду

После этого в текущем рабочем каталоге появится новая папка с именем «folder».

Когда вы попытаетесь запустить ее снова, появится ошибка FileExistsError, поскольку папка уже существует. Чтобы решить эту проблему, необходимо запускать команду только в том случае, если не существует каталога с таким же именем. Этого можно добиться следующим образом:

Функция os.path.isdir() возвращает True, если переданное имя относится к существующей директории.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector