Сжатие папок с паролем через командную строку

Я хотел бы знать, можно ли сделать следующее с помощью CLI.

У меня есть Папка F который содержит несколько вложенных папок и некоторые файлы. Я хочу сжать папку F в .zip файл с "извлечением только по паролю".

Перейдите в соответствующую папку, используя cd команда, подобная этой:

cd /path/to/folder/

(Если ваша папка F находится в вашей домашней папке, вы можете просто сделать cd ~.)

Затем введите в свой терминал:

zip -er F.zip F

После этого вам будет предложено ввести пароль. Дайте его, и это создаст защищенный паролем zip-файл из этой папки.

  • -e включает шифрование вашего zip-файла. Это то, что заставляет его запрашивать пароль.
  • -r делает команду рекурсивной, что означает, что все файлы внутри папки будут добавлены в zip-файл.
  • F.zip это имя выходного файла.
  • F это папка, которую вы хотите заархивировать.

Существует опция, называемая -P это позволит вам передать пароль в самой команде, но это не очень хорошо, потому что всегда есть угроза подглядывания через плечо. Также другие пользователи могут увидеть пароль, используя ps -ef команда, если вы используете -P переключатель. С этим -P переключитесь, команда будет выглядеть следующим образом:

zip -P password -r F.zip F
  • Посещать man zip для получения дополнительной информации.

Шифрование zip-файлов является слабым и может быть очень легко нарушено. Вместо этого используйте 7zip.

7z a -p Fdirectory.7z /path/to/F
  • a команда сообщает 7zip о добавлении файлов.
  • -p Вы можете либо оставить его пустым, чтобы он запрашивал вас в интерактивном режиме, либо ввести свой пароль здесь.
  • Fdirectory.7z это имя создаваемого архива.
  • /path/to/F это путь к вашему каталогу. Это может быть относительный или полный путь.

Рекомендуется не вводить пароль в командной оболочке, поскольку он виден любому, у кого есть доступ к /proc каталог.

гуглеры… →пожалуйста, перестаньте доверять any „защите“ паролем zip – см. ответ ниже

По теме: Создать зашифрованный (защищенный паролем) zip-файл