Create zip of folder with same name

I want to create zip of a folder from command-line. I can do something like
zip -r folder.zip folder. I want to give the zipped folder same name as the original folder. I can simulate this by writing a script:

#!/bin/bash
zip -r $1 $1  

And then doing ./script folder.

Is it possible to do this without writing any script?


Solution 1:

This is how you do it straight with the shell:

zip -r folder{.zip,}

Solution 2:

You can add a bash function that does this to your .bashrc file:

function fzip {
    zip -r $1 $1
}

Then in the shell you can do:

user@host:~$ fzip my_folder
# creates my_folder.zip