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.