Browse Source

Add rar command to archive module

This addition tries to use the rar command if unrar is not found.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
master
nasenatmer 11 years ago committed by Sorin Ionescu
parent
commit
88408e8bc2
  1. 2
      modules/archive/README.md
  2. 4
      modules/archive/functions/extract
  3. 4
      modules/archive/functions/ls-archive

2
modules/archive/README.md

@ -26,7 +26,7 @@ installed: @@ -26,7 +26,7 @@ installed:
- *.lzma* requires `unlzma`.
- *.Z* requires `uncompress`.
- *.zip* requires `unzip`.
- *.rar* requires `unrar`.
- *.rar* requires `unrar` or `rar`.
- *.7z* requires `7za`.
- *.deb* requires `ar`, `tar`.

4
modules/archive/functions/extract

@ -53,7 +53,9 @@ while (( $# > 0 )); do @@ -53,7 +53,9 @@ while (( $# > 0 )); do
(*.lzma) unlzma "$1" ;;
(*.Z) uncompress "$1" ;;
(*.zip) unzip "$1" -d $extract_dir ;;
(*.rar) unrar e -ad "$1" ;;
(*.rar) unrar &> /dev/null \
&& unrar e -ad "$1" \
|| rar e -ad "$1" ;;
(*.7z) 7za x "$1" ;;
(*.deb)
mkdir -p "$extract_dir/control"

4
modules/archive/functions/ls-archive

@ -41,7 +41,9 @@ while (( $# > 0 )); do @@ -41,7 +41,9 @@ while (( $# > 0 )); do
|| lzcat "$1" | tar x${verbose:+v}f - ;;
(*.tar) tar t${verbose:+v}f "$1" ;;
(*.zip) unzip -l${verbose:+v} "$1" ;;
(*.rar) unrar ${${verbose:+v}:-l} "$1" ;;
(*.rar) unrar &> /dev/null \
&& unrar ${${verbose:+v}:-l} "$1" \
|| rar ${${verbose:+v}:-l} "$1" ;;
(*.7z) 7za l "$1" ;;
(*)
print "$0: cannot list: $1" >&2

Loading…
Cancel
Save