Следующий скрипт сначала копирует структуру каталогов из источника, а затем файлы из вашего списка в соответствующие папки. Строка if not line in ["", "\n"] предназначена для предотвращения ошибок, если файл содержит пустые строки.
#!/usr/bin/env python
import os
import shutil
source = "/path/to/source"; target = "/path/to/target"; filelist = "/path/to/filelist.txt"
for root, dirs, files in os.walk(source):
for dr in dirs:
dr = root+"/"+dr
destdir = dr.replace(source, target)
if not os.path.exists(destdir):
os.makedirs(destdir)
with open(filelist) as lines:
src = lines.readlines()
for line in src:
if not line in ["", "\n"]:
shutil.copyfile(line.replace("\n", ""),
line.replace("\n", "").replace(source, target))
Как использовать
Скопировать сценарий в пустой файл, сохранить его как перемещение. py Добавьте соответствующие пути в раздел главы. Запустите его:python /path/to/move.py
Я бы предложил разместить все, что вы загрузили, и запустить себя в каталоге /opt. Например, с моей сборкой eclipse. Я извлекаю его в /opt/eclipse, теперь я создаю символическую ссылку и ссылаюсь на нее вокруг своей системы. Это позволяет мне изменять версии, и все мои программы остаются текущими и беспорядочно переписывают пути при обновлении.
Goodluck
как создать символическую ссылку:
ln -s linkname /path/to/link