Compressing folders with password via command line
Go to the relevant folder using the cd
command like this:
cd /path/to/folder/
(If your folder F
is in your Home folder, you can just do cd ~
.)
Then, type in your terminal:
zip -er F.zip F
This will prompt you for a password. Give it, and that will create a password-protected zip file from that folder.
-
-e
enables encryption for your zip file. This is what makes it ask for the password. -
-r
makes the command recursive, meaning that all the files inside the folder will be added to the zip file. -
F.zip
is the name of the output file. -
F
is the folder you want to zip.
There is an option called -P
that will allow you to pass the password in the command itself, but that is not good because there is always the threat of over-the-shoulder peeking. Also other users can see the password by using ps -ef
command if you use -P
switch. With that -P
switch, the command will look like this:
zip -P password -r F.zip F
- Visit
man zip
for more information.
The encryption of zip files is weak and can be broken very easily. Instead use 7zip.
7z a -p Fdirectory.7z /path/to/F
-
a
command tells 7zip to add files. -
-p
You can either, leave it blank so it asks you interactively or type your password here. -
Fdirectory.7z
is the name of the to-be-created archive. -
/path/to/F
is the path of your directory. It can be relative or full path.
Is recommendable not typing the password in the shell since it's visible to anyone with access to the /proc
directory.