(De-)komprimieren von Dateien

saddy

Aktiver NGBler
Registriert
16 Juli 2013
Beiträge
2.688
Ort
*.*
Da ich öfter was entpacke als packe, aber das Thema auch allgemein gerne diskutieren möchte hier mal ein Thread um eure Gewohnheiten beim Packen und Entpacken abzufragen.

Zum entpacken bin ich momentan bei unp gelandet.
Kann wenn die entsprechenden Abhängigkeiten installiert sind gefühlt alles entpacken, einfach
Code:
Expand Collapse Copy
unp dateiname.endung
eintippen und fertig.
Egal ob .zip, .rar, .tar, .tar.gz, .rpm, etc.


Mit grafischer Oberfläche kenne ich noch xarchiver, das ist bei mir aber bei allen Installationen (Arch und Manjaro) ziemlich langsam und unzuverlässig (stürzt gerne mal ab).

Benutzt ihr auch so Tools oder entpackt ihr alles mit (uh aus dem Kopf jetzt :D) tar -xvjf oder unzip/unrar usw.?

Oder nutzt ihr auch unp oder Vergleichbares und wenn ja aber kein unp warum ein anders Tool?
Und wenn nein, warum nicht?

Als nächste Option fallen mir noch selbst erstellte aliase ein, könnt ich mich eigtl auch mal dran setzen.. Da hab ich den Befehl dahinter aber genau so schnell vergessen wie bei unp.

Hat schon ein bisschen gedauert bis ich z.b. youtube-dl -x --audio-format mp3 (so wars doch? ^^) drin hatte. Heißt bei mir jetzt ytmp3 als Beispiel.
 
Wenn ich über eine grafische Oberfläche entpacke, nutze ich file-roller.

Als Alternative zu unp ist mir noch dtrx ( ) bekannt.

Selbst nutze ich die ZSH als Shell und habe mir hier einen Alias angelegt, der so ziemlich alle Archive abdeckt und die Archive bei Bedarf nach dem entpacken löscht. Wenn Interesse besteht, kann ich den Alias hier mal veröffentlichen.

Bis auf [kw]rar x[/kw] merke ich mir die Befehle ehrlich gesagt auch nicht.
 
Ich nutze als GUI Engrampa, das ist der FileRoller-GTK2-Fork von MATE.

Auf der Konsole dann je nach Lust und Laune atool oder die extract-Funktion aus dem Arch Wiki:


[src=bash]extract() {
local c e i

(($#)) || return

for i; do
c=''
e=1

if [[ ! -r $i ]]; then
echo "$0: file is unreadable: \`$i'" >&2
continue
fi

case $i in
*.t@(gz|lz|xz|b@(2|z?(2))|a@(z|r?(.@(Z|bz?(2)|gz|lzma|xz)))))
c=(bsdtar xvf);;
*.7z) c=(7z x);;
*.Z) c=(uncompress);;
*.bz2) c=(bunzip2);;
*.exe) c=(cabextract);;
*.gz) c=(gunzip);;
*.rar) c=(unrar x);;
*.xz) c=(unxz);;
*.zip) c=(unzip);;
*) echo "$0: unrecognized file extension: \`$i'" >&2
continue;;
esac

command "${c[@]}" "$i"
((e = e || $?))
done
return "$e"
}[/src]
 
Ich nutze den Standardpacker unter Lubuntu "Archive Manager". Zusätzlich installiert habe ich nur [kw]rar[/kw], das ist auch das Format was ich zu 80% entpacke/packe
 
  • Thread Starter Thread Starter
  • #9
Cool hier kommt ja gut was bei zusammen :)

An dem Alias hab ich Interesse, warum erwähnst du die ZSH explizit geht der nicht mit der bash?
Wobei die ZSH Sichtung bei mir auch lange überfällig ist. Hatte nur mal ein bisschen damit rumgespielt aber noch nicht mehr.

Beim file-roller hat mich gleich das UI abgeschreckt, vielen Dank an phre4k für den Tipp mit Engrampa, das sieht bei mir mit XFCE gleich viel besser aus.
Hab das Programm gleich mal als Standard gesetzt und hoffe, dass es bei mir stabiler als xarchiver läuft.
 
@phre4k: Das ist veraltet und gilt nicht mehr für JD2 und was anderes als den aktuellen JD2 will man nicht mehr verwenden, da der alte seit mehr als einem Jahr gar keine Updates mehr bekommt, wobei der davor so und so nur noch Plugins-Updates bekommen hatte.

--- [2016-10-21 16:19 CEST] Automatisch zusammengeführter Beitrag ---

@Laui: JD2 entpackt damit alles was er unterstützt. Also mindestens ZIP, RAR ( ), 7z.
 
An dem Alias hab ich Interesse, warum erwähnst du die ZSH explizit geht der nicht mit der bash?

Die ZSH ist in ein paar Fällen nicht kompatibel mit der Bash. Nehmen wir mal als Beispiel an, in einem Verzeichnis sind 4 Unterverzeichnisse vorhanden. In zwei sind Daten gespeichert und zwei sind leer. Unter der ZSH kann ich die leeren mit [kw]rmdir *(/^F)[/kw] löschen. Versuche ich nun den gleichen Befehl unter der Bash, bekomme ich die Fehlermeldung, dass die Datei bzw. das Verzeichnis *(/^F) nicht gefunden werden konnte. Da ich privat wirklich nur die ZSH nutze, kann ich somit nicht garantieren, dass meine Scripte usw. auch unter der Bash laufen. Daher die Anmerkung wegen der ZSH.

Der Alias:

[src=bash]alias x=extract

extract() {
local remove_archive
local success
local extract_dir

if (( $# == 0 )); then
cat <<-'EOF' >&2
Usage: extract [-option] [file ...]
Options:
-r, --remove Remove archive.
EOF
fi

remove_archive=1
if [[ "$1" == "-r" ]] || [[ "$1" == "--remove" ]]; then
remove_archive=0
shift
fi

while (( $# > 0 )); do
if [[ ! -f "$1" ]]; then
echo "extract: '$1' is not a valid file" >&2
shift
continue
fi

success=0
extract_dir="${1:t:r}"
case "$1" in
(*.tar.gz|*.tgz) (( $+commands[pigz] )) && { pigz -dc "$1" | tar xv } || tar zxvf "$1" ;;
(*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$1" ;;
(*.tar.xz|*.txz)
tar --xz --help &> /dev/null \
&& tar --xz -xvf "$1" \
|| xzcat "$1" | tar xvf - ;;
(*.tar.zma|*.tlz)
tar --lzma --help &> /dev/null \
&& tar --lzma -xvf "$1" \
|| lzcat "$1" | tar xvf - ;;
(*.tar) tar xvf "$1" ;;
(*.gz) (( $+commands[pigz] )) && pigz -d "$1" || gunzip "$1" ;;
(*.bz2) bunzip2 "$1" ;;
(*.xz) unxz "$1" ;;
(*.lzma) unlzma "$1" ;;
(*.Z) uncompress "$1" ;;
(*.zip|*.war|*.jar|*.sublime-package|*.ipsw|*.xpi|*.apk) unzip "$1" -d $extract_dir ;;
(*.rar) unrar x -ad "$1" ;;
(*.7z) 7za x "$1" ;;
(*.deb)
mkdir -p "$extract_dir/control"
mkdir -p "$extract_dir/data"
cd "$extract_dir"; ar vx "../${1}" > /dev/null
cd control; tar xzvf ../control.tar.gz
cd ../data; extract ../data.tar.*
cd ..; rm *.tar.* debian-binary
cd ..
;;
(*)
echo "extract: '$1' cannot be extracted" >&2
success=1
;;
esac

(( success = $success > 0 ? $success : $? ))
(( $success == 0 )) && (( $remove_archive == 0 )) && rm "$1"
shift
done
}
[/src]
 
d.h mit anderen worten windows bräuchte eigtl. kein winrar mehr, kann rar mit boardmitteln entpacken/packen?7-zip alles klar
 
d.h mit anderen worten windows bräuchte eigtl. kein winrar mehr, kann rar mit boardmitteln entpacken/packen?7-zip alles klar
Nein das heißt es nicht. JD2 kann ohne externe Programme ZIP, RAR, 7z-Archive entpacken. Es werden dabei keine Windows-Board-Mittel benutzt.
 
ja windows kann auch kein rar ohne winrar o.a., bin in sachen windows 10 noch nicht so bewandert, vllt. hat sich ja da mittlerweile was getan, aber wohl eher nicht, linux ja ebenfalls nicht ohne zusatz
 
Zurück
Oben