#alias:new archiver e:archiver fn archiver [@_args]{ help = { echo "Usage : archiver [(-zlxgb)] " return } if (or (== (count $_args) 0) (eq $_args[0] -h)) { $help } local:format = zst local:o = $_args[0] if (and (has-prefix $o -) (> (count $o) 1)) { o = $o[1] local:m = [ &z=zst &l=lz4 &x=xz &g=gzip &b=bz2 ] if (not (has-key $m $o)) { $help } format = $m[$o] _args = $_args[1:] } if (== (count $_args) 0) { $help } peach [f]{ local:f = $f if (eq $f[-1] /) { f = $f[:-1] } e:arc archive $f'.tar.'$format $f echo "'"$f"'" archivé } $_args }