6

У меня есть архив rar, который я скачал, за исключением того, что некоторые имена файлов слишком длинные, чтобы быть созданными в Ubuntu. Как я могу извлечь все файлы?

Менеджер архивов по умолчанию в Ubuntu просматривает большинство файлов, завершает работу с ошибками и удаляет всю папку. Арк извлекает их и молча терпит неудачу на именах, которые являются слишком длинными.

3 ответа3

6

Обычное ограничение файловой системы в 255 символов применяется к уникальным именам файлов или каталогов, а не к их полному пути. Так что распаковка в /a не поможет. Проблема в том, что формат файла RAR позволяет архиву содержать файлы, имя которых может превышать 255 символов.

Вы можете обойти эту проблему, распечатав проблемный файл на стандартный вывод и перенаправив его в файл:

unrar -inul p archive.rar слишком длинное имя-файла> более короткое имя

Это извлекает слишком длинное имя файла из archive.rar в файл с именем более короткое имя.

3

Вы можете попробовать и сократить путь, с которым он должен работать ... в оболочке, то есть:

mkdir /a; cd /a
unrar /path/to/file/with/long/names .

(убедитесь, что у вас sudo su - в Ubuntu, иначе у вас не будет достаточно прав для записи в корневой каталог.)

вместо того, чтобы пытаться извлечь файлы в какой-либо каталог, такой как /long/directory/name/some/path/where/fish/live/ ..., вы должны иметь возможность извлечь их в короткий каталог вроде /a

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

-1

У меня была эта проблема с mp3-файлами из Bandcamp - в их файлах есть имя исполнителя, название альбома и название песни в имени файла, поэтому иногда они становятся длиннее!

Мой обходной путь - использовать вариант "предварительного просмотра" Арка.

После того, как я выбрал поврежденный файл и выбрал "Предварительный просмотр", он начинает воспроизводиться в моем музыкальном проигрывателе (я использую Clementine). Затем я щелкаю правой кнопкой мыши по файлу в Clementine и нажимаю "показать в браузере файлов". Затем откроется окно обозревателя файлов, в котором будет отображаться временная папка, в которой хранится предварительно просматриваемый файл (если вы используете другой музыкальный проигрыватель без этой опции, возможно, вам просто нужно найти каталог вручную).

Затем я прекращаю воспроизведение песни, затем быстро переименовываю ее во временную директорию и вырезаю и вставляю туда, где я хочу.

Если вы работаете слишком медленно, файл исчезает из временного каталога, и вы должны начать заново.

Не знаю, если это будет работать для других типов файлов.

Надеюсь, что это поможет любому, кто пришел сюда из Google, как я. Как нетехника, я не понимал, что означает "печать проблемного файла на стандартный вывод", но этот обходной путь работает для меня!

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