In order to be able to zip file and ignore directory structure that gets created with it, we first must understand what the zip command on Linux actually means and how we can make use of it.
The zip command that Linux provides us with allows us to specify a compression level with a number prefixed with dash and that number is usually in between 0 and 9. In simple terms, it is used to reduce the size of files with the help of compression and sometimes also used as a file package facility.
The compression of files actually involves one or more compressed filed and it compresses them into a single zip archive, along with some information about those files.
zip [OPTIONS] zipfile files
Consider a case where you want to convert a single file into a zip file, then the command shown below will allow you to do just the same.
zip file.zip sample.txt
-rw-r--r-- 1 immukul staff 661 Jul 14 09:00 file.zip
You can also unzip the zip file to get the files back with the help of the command shown below −
-rw-r--r-- 1 immukul staff 661 Jul 14 09:02 sample.txt
In order to make sure that you don’t get a directory structure mimicking the files, you can make use of the command shown below
zip -j zipContent d1/file.txt d2/2.txt d2/3.txt
In the above command, we can notice the -j option which stands for “junk the path”, that will help you in ignoring the directory structure.
-rw-r--r-- 1 immukul staff 2201512 Jul 14 09:19 zipContent.zip