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

46

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

У меня есть папка F , которая содержит несколько подпапок и некоторые файлы. Я хочу сжать папку F в файл .zip с помощью «password-only-extract».

    
задан UnderDog 08.09.2013 в 13:57
источник

2 ответа

46

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

cd /path/to/folder/

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

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

zip -er F.zip F

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

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

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

zip -P password -r F.zip F
  • Для получения дополнительной информации посетите man zip .
ответ дан dedunumax 08.09.2013 в 14:09
источник
33

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

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

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

    
ответ дан Braiam 09.09.2013 в 13:54