2016-04-13 11 views
1

Как можно минимизировать уровни подпапок в Python3? я получил основную папкуPython3: вложенные папки Minimze в папке

/projects/ 

Есть много папок, которые пришли из распаковки архивных файлов:

/projects/project1/project1/file.txt 
/projects/project2/document.txt 

В первом случае есть один /project1/ ненужная вложенный мне нужно сделать просто это:

/projects/project1/file.txt 

ответ

0

Одним из способов было бы просто переместить файл.txt на один уровень вверх и удалить внутреннее проже ct1.

Вы можете использовать команду os.system() для запуска команд оболочки. Здесь вам понадобятся две команды оболочки: 1.mv и 2.rm -rf.

import os 
os.system('mv /projects/project1/project1/file.txt /projects/project1/file.txt') 
os.system('rm -rf /projects/project1/project1/') 
+0

мне нужно что-то общее, потому что есть около 1000 подпапок, некоторые из них хорошо, некоторые из них не ... – LukinM26

+0

Вы можете контролировать декомпрессию таким образом, что он не создает новую папку? Может быть, передать некоторые необязательные аргументы? Если нет, рассмотрите возможность использования цикла для вышеуказанного кода с 1000 папками, каждый раз проверяя наличие внутренней папки, которая должна быть довольно простой, используя строковые методы или регулярное выражение. – trans1st0r