読者です 読者をやめる 読者になる 読者になる

はわわーっ

はわわわわっ

[bash] いろんなファイルを解凍するコマンドを作ってみた

tar.gz形式のファイルをダウンロードしたつもりで

tar -zxvf hogehoge.tar.gz

とかやったら、実はzipでしたって言われてイラッときたので作ってみた。

拡張子をみて、それに合わせて解凍するコマンド

function unpack() {
  if test -z "$1"; then
    echo "usage: $0 file [file...]" >/dev/stderr
    return 1
  fi

  while test -n "$1"; do
    case $1 in
      *.tar.gz | *.tgz) tar -zxvf $1 ;;
      *.tar.bz2 | *.tbz2) tar -jxvf $1 ;;
      *.tar) tar -xvf $1 ;;
      *.zip) unzip $1 ;;
      *.gz) gunzip $1 ;;
      *.bz2) bunzip2 $1 ;;
      *) echo "$0: unknown format: $1" >/dev/stderr ;;
    esac
    shift 1
  done
}

たぶん、うまく動くはず。