Как заставить python «запомнить» имя моего pendrive? - PullRequest
1 голос
/ 22 мая 2019

Я пишу скрипт Python для копирования файлов с моего компьютера на USB-накопитель.Сценарий выполняет итерации по нескольким папкам и копирует найденные в нем файлы в папку в моем pendrive.Он также проверяет, существует ли эта папка, и если нет, то создает ее.Скрипт отлично работает на моем компьютере, в котором на USB-канале есть буква «Y: \».Но если я сменил компьютер, сценарии перестали работать, и мне нужно отредактировать его, чтобы оно соответствовало букве, которую мой USB-накопитель принял на новом компьютере.Как это сделать в моем сценарии?Есть ли способ, возможно, дать моему pendrive каждый раз одно и то же письмо?

1 Ответ

0 голосов
/ 22 мая 2019

Мой начальник обычно ненавидит меня за то, что я даю такие решения. Однажды мне пришлось указать путь к файлу в коде, и я не смог дать эту ссылку, поэтому я написал код, который ищет файл в системе и возвращает его путь. Это решение, которое я предлагаю сейчас, просто найдите подключенные устройства и вставьте их в подключенные устройства, если это устройство доступно для записи, ваши данные попадут в него. Если вы хотите быть осторожным, просто используйте регулярное выражение, чтобы соответствовать типу устройства USB-флешки.

import re
import subprocess
device_re = re.compile("Bus\s+(?P<bus>\d+)\s+Device\s+(?P<device>\d+).+ID\s(?P<id>\w+:\w+)\s(?P<tag>.+)$", re.I)
df = subprocess.check_output("lsusb")
devices = []
for i in df.split('\n'):
    if i:
        info = device_re.match(i)
        if info:
            dinfo = info.groupdict()
            dinfo['device'] = '/dev/bus/usb/%s/%s' % (dinfo.pop('bus'), dinfo.pop('device'))
            devices.append(dinfo)
print devices

Всего наилучшего! Мне понравилась твоя идея. Звоните мне, если вам нужна дополнительная помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...