Я хочу использовать rar.exe через командную строку, чтобы извлечь все файлы из всех архивов в папке, а затем автоматически удалить все архивы, если они были успешно извлечены? Я пробовал -df и -dr безрезультатно. Похоже, что те могут только для удаления файлов, если вы добавляете их в архив.

Прямо сейчас я использую (c #):

string.Format("e -p{0} \"{1}\" *.* \"{2}\"", pass, fi[n].FullName, fi[n].DirectoryName)

2 ответа2

0

Похоже, что те могут только для удаления файлов, если вы добавляете их в архив.

Кажется, да,

$ unrar --help | grep -i unrar
UNRAR 5.00 beta 8 freeware      Copyright (c) 1993-2013 Alexander Roshal
Usage:     unrar command -switch1 -switchN archive files...
$ unrar --help | grep del
$ unrar --help | grep unlink
$ unrar --help | grep rem

... никаких упоминаний об удалении чего-либо.

0

Я думаю, вы могли бы сделать что-то вроде

  • Используйте класс Process для выполнения rar.exe

  • Процесс.WaitForExit

  • Проверьте, были ли файлы извлечены

    (Вы можете просто оценить размер, если вы хотите сделать это быстро и грязно ...)

  • Если проверка прошла успешно, удалите архив

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .