Як вказати відносний шлях у 7-zip командному рядку?


4

Мені подобається 7-zip, і мені сьогодні потрібна команда. Я зіткнувся з проблемою.

Чи є спосіб вказати шлях всередині архіву при стисненні?

Наприклад, у мене є файл на C:\some_dir\my_file.txt. При стисненні я хочу вказати шлях призначення \other_dir\my_file.txt в архіві.

Це можливо? Це здається досить поширеною справою.

Відповіді:


1

Ні утиліта 7zip, ні будь-який архіватор, якого я знаю, підтримують це безпосередньо. Ви можете, однак, створити структуру каталогів, що відповідає тому, що ви хотіли б в архіві, копіювати файли на місце, і архівувати замість цього ... Досить сумно, в будь-якому випадку, бачачи функціональність, присутню в GUI, але відсутній в командному рядку .


Я зіткнувся з подібною програмою нещодавно і цікавився ... чи дійсно може бути, що CLI не підтримує це? Наскільки я зрозумів, графічний інтерфейс - це просто інтерфейс для CLI ... чи це не так?
Tobias Plutat

GUI може брати той же підхід, просто використовуючи тимчасові файли ... Я знаю для випадку 7zip, GUI може зробити це, в той час як CLI не може. Тобто GUI може безпосередньо перейменовувати та переміщати файли в архіві.
Jeremy Sturdivant

Я вважаю, що як CLI, так і графічний інтерфейс використовують ту саму бібліотеку, а не графічний інтерфейс, який розмовляє з cli.
Kugel

@Kugel, це звучить дуже ймовірно. На жаль, це ганьба.
Tobias Plutat

0

Ви можете використовувати 7zip 'rn' команда в командному рядку:

7z rn archive.7z my_file.txt \other_dir\my_file.txt

Це поставить ваш вже стислий файл в іншу (внутрішню) папку архіву. Це працює тільки на вже створеному архіві.

Якщо вам потрібен "other_dir", щоб бути деяким відносним шляхом (не випадковий каталог), ви можете грати з поточним робочий каталог і пройти відносний імена файлів до цього каталогу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.