Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: tar bzip
- X-seq: zsh-users 5938
- From: Dennis Haney <davh@xxxxxxx>
- To: zsh-users@xxxxxxxxxx
- Subject: Re: tar bzip
- Date: 23 Feb 2003 15:42:25 +0100
- In-reply-to: <1030223015556.ZM11499@xxxxxxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-users-help@xxxxxxxxxx; run by ezmlm
- References: <87lm073h95.fsf@xxxxxxxxxxxx> <1030223015556.ZM11499@xxxxxxxxxxxxxxxxxxxxxxx>
>>>>> "Bart" == Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx> writes:
Bart: On Feb 23, 2:41am, Dennis Haney wrote:
Bart: }
Bart: } xvzf is in my fingers and I keep forgetting it every time I untar a
Bart: } bzip file, so:
Bart: }
Bart: } How is it possible to get tar xvzf something.tbz (or
Bart: } something.tar.bz2) to convert the z (in xvzf) to a j?
Bart: Possibly this:
Bart: function tar {
Bart: integer i=1
Bart: while (( i < ARGC ))
Bart: do
Bart: if [[ $argv[i] == (x*v|v*x)*f && $argv[i] == *z* &&
Bart: $argv[i+1] == *.(t|)bz(|2) ]]
Bart: argv[i]=${argv[i]:s/z/j}
Bart: break
Bart: fi
Bart: done
Bart: command tar $*
Bart: }
Thank you very much. This does the job just fine:
function tar {
if [[ $argv[1] == xvzf && $argv[2] == *.(t|tar.)bz(|2) ]]
argv[1]=${argv[1]:s/z/j/}
command tar $*
}
Bart: The problem of course is that something like xvzbf is followed first by
Bart: a blocksize and then by a file name, so without creating a full-blown
Bart: tar option parser you really can't do a perfect job.
Thats ok, I was just interested in this one specific case.
--
Dennis
use Inline C => qq{void p(char*g){
printf("Just Another %s Hacker\n",g);}};p("Perl");
Messages sorted by:
Reverse Date,
Date,
Thread,
Author