diff options
Diffstat (limited to 'functions/uz.fish')
| -rw-r--r-- | functions/uz.fish | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/functions/uz.fish b/functions/uz.fish new file mode 100644 index 0000000..b23780f --- /dev/null +++ b/functions/uz.fish @@ -0,0 +1,26 @@ +function uz --description "Decompress an archive without making a mess" + +if test (count $argv) -lt 1 + echo "Missing argument." + return 1 +end + +if not command -sq bsdtar + echo "Can't fint bsdtar." + return 1 +end + +for archive in $argv + set -l dir (string split '.' "$archive")[1] + if not test -d "$dir" + mkdir "$dir" + pushd "$dir" + command bsdtar -xf ../"$archive" + popd + else + echo "Can't overwrite existing directory." + end +end + +end + |
