Python Rar: все файлы в каталоге, каждый файл в другом каталоге

Кажется, что это колоссально глупый вопрос, но документация для rar в целом довольно отрывочна, и использование python для rar приводит к безумному количеству обращений, ни один из них, похоже, даже не пытается сделать то, что я пытаюсь сделать ( что я нахожу несколько странным).

У меня есть каталог с кучей файлов: FILE_1.ext FILE_2.ext FILE_3.ext ... FILE_N.ext

Имена не обязательно одинаковы, равно как и расширения. Я ищу скрипт Python для: для всех файлов в каталоге, которые не начинаются с . rar a -m0 -R -v1g ИМЯ_ФАЙЛА.rar "ИМЯ_ФАЙЛА" #Примечание: ИМЯ_ФАЙЛА.rar не имеет расширения ".ext"

Часть «rar a -m0 -R -v1g ИМЯ_ФАЙЛА.rar «ИМЯ_ФАЙЛА»» — это то, что я использую, когда отправляю команду оболочки для одного файла, и мне нужно самому ввести ИМЯ_ФАЙЛА и т. д. Не было проблема, но теперь я имею дело с большим количеством больших файлов, и это слишком много, чтобы вводить их все один за другим, но мне нужно, чтобы каждый файл был своим объемом.


person Robin Hood    schedule 09.03.2012    source источник
comment
По какой причине вы не можете использовать tar/zip?   -  person Spencer Rathbun    schedule 09.03.2012
comment
Почему Питон? Я очень люблю Python, но эту конкретную проблему легко решить с помощью сценария оболочки.   -  person larsks    schedule 09.03.2012


Ответы (1)


Как насчет:

    import os
    for file_n in os.listdir(DIRECTORY_NAME):
         if not file_n.startswith('.') and not file_n.endswith('.rar'):
              os.system('rar a -m0 -R -v1g %s.rar "%s"' %(os.path.splitext(file_n)[0], file_n))
person Bogdan    schedule 09.03.2012