mirror of
https://github.com/foo-dogsquared/dotfiles.git
synced 2025-01-31 04:57:57 +00:00
27 lines
876 B
Bash
Executable File
27 lines
876 B
Bash
Executable File
#!/usr/bin/env sh
|
|
|
|
# Extracts the archive.
|
|
# The process can vary depending on the file extension.
|
|
|
|
# Dependencies:
|
|
# * tar (GNU tar) 1.32
|
|
|
|
# Extract each given filename.
|
|
for f in $@; do
|
|
if [ -n "$(file "$f" | grep -i '7-zip archive data')" ]; then
|
|
7z x "$f"
|
|
elif [ -n "$(file "$f" | grep -i 'zip archive data')" ]; then
|
|
unzip "$f"
|
|
elif [ -n "$(file "$f" | grep -i 'POSIX tar archive')" ]; then
|
|
tar --extract --file $f # or 'tar xf $f'
|
|
elif [ -n "$(file "$f" | grep -i 'gzip compressed data')" ]; then
|
|
tar --extract --gzip --file "$f" # or 'tar xzf $f'
|
|
elif [ -n "$(file "$f" | grep -i 'bzip2 compressed data')" ]; then
|
|
tar --extract --bzip2 --file "$f" # or 'tar xjf $f'
|
|
elif [ -n "$(file "$f" | grep -i 'RAR archive data')" ]; then
|
|
unrar x "$f"
|
|
else
|
|
echo "unrecognized format."
|
|
fi
|
|
done
|