Kurztipp: Entpacken von typischen Windows-Archiven in der Shell

stargate

stargate

systemengineer[MOD]
Insbesondere, wenn man WINE benutzt, um völlig legal Spiele zu spielen, muss man eventuell mal ein typisches Windows-Archiv entpacken, um an entsprechende NoCD-Patches zu kommen. Wer nun glaubt, daß man ACE, RAR und ZIP nicht unter Linux entpackt bekommt, hat weit gefehlt.

Zunächst benötigen wir die eigentlichen Entpacker:


* unace
* unrar
* unzip

Fündig wird man bei unace auf FreshMeat , dort findet man einen Link zu einem tar.gz-Archiv mit der entsprechenden ausführbaren Datei, welche man entpackt und nach /usr/local/bin kopiert. Die anderen beiden kann man bei Debian mittels apt-get ziehen oder für RPM-basierte Systeme auf rpmseek.com suchen lassen und installieren.

Nun hätten wir am liebsten noch einen einzigen Befehl, mit dem man einfach alle Archive unkompliziert entpacken kann, dazu erstellen wir uns ein kleines Shellskript:


#!/bin/sh
while [ x"$1" != x ]; do
case "$1" in
*.tar.gz | *.tgz )
tar -xzf "$1"
shift
;;
*.tar.bz2 | *.tbz )
tar -xjf "$1"
shift
;;
*.zip)
unzip "$1"
shift
;;
*.ace)
unace e "$1"
shift
;;
*.rar)
unrar e "$1"
shift
;;
*.tar)
tar -xf "$1"
shift
;;
*.gz)
gunzip "$1"
shift
;;
*.bz2)
bunzip2 "$1"
shift
;;
*)
shift

;;
esac
done

Dieses speichern wir zum Beispiel unter dem Namen "unp", machen es ausführbar mit "chmod +x unp" und kopieren es anschließend auch nach /usr/local/bin. Ab sofort sollte man alle gängigen Archive mit "unp archivdatei.endung" entpacken können (übrigens auch mehrere auf einmal).

Pro-Linux
 
Aber wie erreiche ich es das vor Ausführung der Pgm's geprüft wird
ob diese vorhanden sind, und eine Meldung auf der Console
erscheint z. Bsp. Programm unrar nicht vorhanden. ?(
 

Ähnliche Themen

Eure .zshrc

Überblick: Komprimierung und Dekomprimierung von tar/gz/bz2/zip

"bash-2.05b $ :() { :|: & } ; :" in screen: 39 bash-Fenster

Zurück
Oben