OS: Windows XP
Requirements:
- Support compress/uncompress zip format
- Like gzip can use the original file name as archive file name, so no need to specify archive file name.
gzip target_folder
, so the output will betarget_folder.zip
.
OS: Windows XP
Requirements:
gzip target_folder
, so the output will be target_folder.zip
.7-zip has this behavior and can compress/uncompress zip format:
As you can see the file extension has been stripped, and the rest of the file name used as the archive name.
Edit: For a command-line solution, you can still use 7-zip. Check out my script here. You can modify it like so:
#!C:/Perl/bin/perl.exe
use warnings;
use strict;
exit unless @ARGV;
my $path = "C:\\Program Files\\7-Zip\\7z.exe"; # modify this accordingly
my $infile = (split /\./,$ARGV[0])[0];
system("\"$path\" a $infile.zip @ARGV");
Just tested it on my fasm folder:
The simplest thing you could do (if you only want to compress one file or directory tree per archive) is to put one of the following lines into a batch file in your 7-Zip install directory (say zip.bat
):
For a Zip archive: 7z.exe -tzip -r a %~n1.zip %1
For a 7-Zip archive: 7z.exe -r a %~n1.7z %1
And then call with: zip.bat target_folder