import os os.symlink(src, dst, target_is_directory=False, *, dir_fd=None)
src - str, путь в файловой системе на который указывает ссылка,dst - имя ссылки (str путь в файловой системе),target_is_directory=False - bool, в Windows ссылка как каталог.dir_fd=None - int, дескрипторов каталогов.Функция symlink() модуля os создает символическую ссылку, указывающую на src с именем dst.
Аргументы src и dst могут принимать объекты, представляющие путь файловой системы, такой как pathlib.PurePath.
Функция os.symlink() может поддерживать пути относительно дескрипторов каталогов dir_fd.
На платформах, отличных от Windows, target_is_directory игнорируется. В Windows символическая ссылка представляет собой либо файл, либо каталог и не преобразуется в целевой объект динамически. Если цель присутствует, то будет создан соответствующий тип символической ссылки. В противном случае символическая ссылка будет создана как каталог, если target_is_directory имеет значение True или файловая символическая ссылка (по умолчанию).
Примечание. В более новых версиях Windows 10 непривилегированные учетные записи могут создавать символические ссылки, если включен режим разработчика. Когда режим разработчика недоступен/не включен, требуется привилегия SeCreateSymbolicLinkPrivilege или процесс должен выполняться от имени администратора. Когда функция вызывается непривилегированным пользователем вызывается исключение OSError.
Вызывает событие аудита os.symlink с аргументами src, dst, dir_fd.
Доступность: Unix, Windows.
>>> import os >>> src = '/usr/bin/python' >>> dst = '/tmp/python' >>> os.symlink(src, dst) >>> os.readlink(dst) # '/usr/bin/python' >>> os.path.islink(dst) # True
Создадим файл symlinks.py следующего содержания:
# symlinks.py import os link_name = '/tmp/' + os.path.basename(__file__) print(f'Creating link {link_name} -> {__file__}') os.symlink(__file__, link_name) stat_info = os.lstat(link_name) print('Permissions:', oct(stat_info.st_mode)) print('Points to:', os.readlink(link_name)) # Очистим os.unlink(link_name)
Запустим файл:
$ python3 symlinks.py Creating link /tmp/symlinks.py -> symlinks.py Permissions: 0o120755 Points to: symlinks.py