Added ex() function to .bashrc - used to ex(tract) any filetype

This commit is contained in:
jon
2020-01-25 17:09:52 -06:00
parent ebfb254391
commit 3cc0bf1f69

View File

@@ -73,3 +73,43 @@ unset command_not_found_handle
if [ -f /usr/share/fzf/shell/key-bindings.bash ]; then
source /usr/share/fzf/shell/key-bindings.bash
fi
ex() {
local c e i
(($#)) || return
for i; do
c=''
e=1
if [ $# -eq 0 ]; then
echo "No file specified"
exit
fi
if [[ ! -r $i ]]; then
echo "$0: file is unreadable: \`$i'" >&2
continue
fi
case $i in
*.tar) c=(tar xf);;
*.7z) c=(7z x);;
*.Z) c=(uncompress);;
*.bz2) c=(bunzip2);;
*.exe) c=(cabextract);;
*.gz) c=(gunzip);;
*.rar) c=(unrar x);;
*.xz) c=(unxz);;
*.zip) c=(unzip);;
*) echo "$0: unrecognized file extension: \`$i'" >&2
continue;;
esac
command "${c[@]}" "$i"
((e = e || $?))
done
return "$e"
}