Retourner au contenu associé (journal : Décompression d'archive intelligente)
Posté par Colin Pitrat (site web personnel) le 21 août 2006 à 12:14. En réponse au journal Décompression d'archive intelligente. Évalué à 2.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: Moi j'utilise ce script ...
Posté par Colin Pitrat (site web personnel) . En réponse au journal Décompression d'archive intelligente. Évalué à 2.
DIRNAME="$(dirname "$@")"
FILENAME="$(basename "$@")"
TYPE=`echo $FILENAME | sed 's/tar\.gz$/tgz/g' | sed 's/tar\.bz2$/tbz2/g' | sed 's/.*\.//g'`
EXTENSION=`echo $FILENAME | sed 's/.*\.//'`
if [ "$EXTENSION" = "bz2" ] || [ "$EXTENSION" = "gz" ]
then
EXTENSION="tar.$EXTENSION"
fi
DESTDIR="$(basename "$@" .$EXTENSION)"
cd "$DIRNAME"
case "$TYPE" in
"zip")
DIRTEST=`unzip -lqq "$FILENAME" | awk '{print 4ドル}' | sed -e 's,\/.*,,' | sort | uniq | wc -l`
if [ $DIRTEST = "1" ]; then
unzip "$FILENAME"
else
unzip -d "$DESTDIR" "$FILENAME"
fi
;;
"tar")
DIRTEST=`tar -tvf "$FILENAME" | awk '{print 6ドル}' | sed -e 's,\/.*,,' | sort | uniq | wc -l`
if [ $DIRTEST = "1" ]; then
tar xf "$FILENAME"
else
mkdir "$DESTDIR"
tar xf "$FILENAME" -C "$DESTDIR"
fi
;;
"tbz2")
DIRTEST=`tar tvjf "$FILENAME" | awk '{print 6ドル}' | sed -e 's,\/.*,,' | sort | uniq | wc -l`
if [ $DIRTEST = "1" ]; then
tar xjf "$FILENAME"
else
mkdir "$DESTDIR"
tar xjf "$FILENAME" -C "$DESTDIR"
fi
;;
"tgz")
DIRTEST=`tar tvzf "$FILENAME" | awk '{print 6ドル}' | sed -e 's,\/.*,,' | sort | uniq | wc -l`
if [ $DIRTEST = "1" ]; then
tar xzf "$FILENAME"
else
mkdir "$DESTDIR"
tar xzf "$FILENAME" -C "$DESTDIR"
fi
;;
"xpi")
mkdir "$DESTDIR"
unzip -d "$DESTDIR" "$FILENAME"
;;
"rar")
DIRTEST=`unrar vb "$FILENAME" | sed -e 's,\/.*,,' | sort | uniq | wc -l`
if [ $DIRTEST = "1" ]; then
unrar "$FILENAME"
else
unrar "$FILENAME" "$DESTDIR"
fi
;;
*)
Xdialog --title "Unpack" --msgbox "Extension inconnue" 7 50
;;
esac