J'utilise moi aussi un script pour décompresser les archives depuis Rox. C'est pas super car ça se base sur l'extension, pas sur le type MIME, mais ça marche bien en général.
#!/bin/bash
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")
unzip -d "$DESTDIR" "$FILENAME"
;;
"tar")
mkdir "$DESTDIR"
tar xf "$FILENAME" -C "$DESTDIR"
;;
"tbz2")
mkdir "$DESTDIR"
tar xjf "$FILENAME" -C "$DESTDIR"
;;
"tgz")
mkdir "$DESTDIR"
tar xzf "$FILENAME" -C "$DESTDIR"
;;
"xpi")
mkdir "$DESTDIR"
unzip -d "$DESTDIR" "$FILENAME"
;;
*)
Xdialog --title "Unpack" --msgbox "Extension inconnue" 7 50
;;
esac
# Moi j'utilise ce script ...
Posté par Colin Pitrat (site web personnel) . En réponse au journal Décompression d'archive intelligente. Évalué à 2.
#!/bin/bash
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")
unzip -d "$DESTDIR" "$FILENAME"
;;
"tar")
mkdir "$DESTDIR"
tar xf "$FILENAME" -C "$DESTDIR"
;;
"tbz2")
mkdir "$DESTDIR"
tar xjf "$FILENAME" -C "$DESTDIR"
;;
"tgz")
mkdir "$DESTDIR"
tar xzf "$FILENAME" -C "$DESTDIR"
;;
"xpi")
mkdir "$DESTDIR"
unzip -d "$DESTDIR" "$FILENAME"
;;
*)
Xdialog --title "Unpack" --msgbox "Extension inconnue" 7 50
;;
esac