Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.
А это подборки моих материалов на канале
Приложение 3 к видеуроку (Приложение 1, Приложении 2)
Справочная информация по библиотеке pathlib. Продолжение
Продолжаю рассказ о библиотеке pathlib. Много удобных в ней вещей, хотелось бы, что читатели взяли её на вооружение.
Получение информации о файле или каталоге. Изменение режима доступа
- Path.stat — возвращает объект stat_result, содержащий разную информацию о файлах и каталогах. st_mode - биты типа файла и разрешения файла, st_ino номер inode в Linux, st_dev - идентификатор устройства, где расположен файл, st_nlink - количество жестких ссылок, st_uid - идентификатор владельца, st_gid - идентификатор группы, st_size - размер файла в байтах, st_atime - время последнего доступа, st_mtime - время последней модификации, st_ctime - время последнего изменения метаданных в Linux.
- Path.lstat — аналогично Path.stat, но не следует по символьной ссылке.
- Path.group() — возвращает имя группы файла.
from pathlib import Path
p = Path('./text')
print(p.group())
Результат выполнения фрагмента
vladislav - Path.owner() — возвращает имя собственника.
- Path.readlink() — возвращает путь, на который указывает символическая ссылка.
from pathlib import Path
p = Path('./Downloads')
print(p.readlink())
Результат выполнения фрагмента
/home/vladislav/Yandex.Disk/Downloads - Path.chmod(mode) — изменение режима доступа.
from pathlib import Path
p = Path('./text')
p.chmod(0o666)
В результате режим доступа по чтению и записи файла будет установлен для собственника, группы файла и всех остальных. См. статью. - Path.lchmod(mode) — аналогичен chmod, но не следует символическим ссылкам.
Создание, удаление, переименование файлов и каталогов.
- Path.mkdir() — создание каталога.
from pathlib import Path
newd = Path('./new')
newd.mkdir(0o700)
В результате в текущем каталоге будет создан каталог new. - Path.touch() — создаёт пустой файл.
from pathlib import Path
p = Path('./tmp')
p.touch(0o666)
Создаёт пустой файл в текущем каталоге. - Path.link_to() — создаёт жёсткую ссылку.
from pathlib import Path
p = Path('/home/vladislav/tmp/output.mp4')
p.link_to('./file.mp4')
Создаётся жесткая ссылка в текущем каталоге на указанный файл. - Path.symlink_to() — создание символьной ссылки.
from pathlib import Path
p = Path('ff.mp4')
p.symlink_to('/home/vladislav/tmp/output.mp4')
Будет создана символьная ссылка на файл в текущем каталоге. - Path.unlink() — удаление файла (жесткой ссылки) из указанного каталога.
- Path.rmdir() — удаление каталога.
from pathlib import Path
p = Path('./new')
p.rmdir()
Будет удалён пустой каталог. - Path.rename() — переименование файла или каталога.
from pathlib import Path
p = Path('./text')
p.rename('/home/vladislav/txt1')
Файл text будет переименован с переносом в другой каталог
Наш справочник ещё не закончился. Продолжим в следующей статье.
Хорошего программирования. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.