>>>> import shutil
>>>> shutil.copy('oops.txt', 'ohno.txt')
Функция shutil.move() копирует файл, а затем удаляет оригинал.
Изменяем имена файлов с помощью функции rename()
Эта функция соответствует своему названию. В этом примере файл ohno.txt переименовывается в ohwell.txt:
>>>> import os
>>>> os.rename('ohno.txt', 'ohwell.txt')
Создаем ссылки с помощью link() или symlink()
В операционных системах семейства Unix файл существует в одном месте, но может иметь несколько имен, которые называются ссылками. Среди низкоуровневых жестких ссылок найти все имена заданного файла не так уж легко. Символьная ссылка позволяет вам получить одновременно оба имени — оригинальное и новое. Вызов link() создает жесткую ссылку, а symlink() — символьную ссылку. Функция islink() проверяет, является ли файл символьной ссылкой.
Вот так можно создать жесткую ссылку на существующий файл oops.txt из нового файла yikes.txt:
>>>> os.link('oops.txt', 'yikes.txt')
>>>> os.path.isfile('yikes.txt')
>True
Для того чтобы создать символьную ссылку на существующий файл oops.txt из нового файла jeepers.txt, используйте следующий код:
>>>> os.path.islink('yikes.txt')
>False
>>>> os.symlink('oops.txt', 'jeepers.txt')
>>>> os.path.islink('jeepers.txt')
>True
Изменяем разрешения с помощью функции chmod()
В системах Unix функция chmod() изменяет разрешение на использование файла. Можно задать возможность читать, записывать и выполнять файл для пользователя (обычно для вас, если файл создавали вы), основной группы, в которой находится пользователь, и остального мира. Команда принимает сильно сжатое восьмеричное значение (в системе счисления с основанием 8), которое содержит в себе информацию о пользователе, группе и другие разрешения. Например, для того чтобы указать, что файл oops.txt доступен только для чтения своему владельцу, введите следующий код:
>>>> os.chmod('oops.txt', 0°400)
Если вы не хотите работать с таинственными восьмеричными значениями и вам приятнее работать с непонятными (немного) таинственными символами, можете импортировать некоторые константы из модуля stat и использовать выражение, аналогичное следующему:
>>>> import stat
>>>> os.chmod('oops.txt', stat.S_IRUSR)
Изменение владельца файла с помощью функции chown()
Эта функция также характерна для систем Unix/Linux/Mac. Вы можете изменить владельца и/или группу, указав числовой идентификатор пользователя ID (uid) и идентификатор группы (gid):
>>>> uid = 5
>>>> gid = 22
>>>> os.chown('oops', uid, gid)
Получаем pathname с помощью функции abspath()
Эта функция расширяет относительное имя до абсолютного. Если вы находитесь в папке /usr/gaberlunzie, в которой лежит файл oops.txt, то можете воспользоваться следующим кодом: