Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
oldcai
0.01D
V2EX  ›  Linux

Linux下有没有万能的解压方法,会自动分析拓展名,然后用不同的命令进行解压

  •  
  •   oldcai ·
    PRO
    ·
    oldcai · Dec 26, 2013 · 9559 views
    This topic created in 4697 days ago, the information mentioned may be changed or developed.
    29 replies  •  2016-12-26 15:58:13 +08:00
    Ever
    Ever
    Dec 26, 2013❤️1
    1
    file-roller用libarchive
    aunpack也可以
    RagnarokStack
    RagnarokStack
    Dec 26, 2013
    2
    unar,不过压缩包内的软连有时候解压出来会有错误
    foru17
    foru17
    Dec 26, 2013
    3
    自己写个 function 不就行了,shell 还是很强大的。
    9hills
    9hills
    Dec 26, 2013
    4
    GNOME自带的file-roller就可以
    ensonmj
    ensonmj
    Dec 26, 2013 via iPhone❤️1
    5
    tar -xf
    wenLiangcan
    wenLiangcan
    Dec 26, 2013
    6
    file-roller
    Ansen
    Ansen
    Dec 26, 2013
    7
    同3楼
    自己写个脚本就行了
    momo5269
    momo5269
    Dec 26, 2013
    8
    我是用peazip - -
    46fo
    46fo
    Dec 26, 2013 via iPhone
    9
    扩展名假的。前四个字节 会比较准
    yxjxx
    yxjxx
    Dec 26, 2013❤️1
    11
    难道没有人在用zsh强大的alias么?
    示例:

    alias -s gz='tar -xzvf'
    alias -s tgz='tar -xzvf'
    alias -s zip='unzip'
    alias -s bz2='tar -xjvf'
    ivenvd
    ivenvd
    Dec 26, 2013
    12
    tar 本身就能自动识别文件类型啊: tar xf
    leecade
    leecade
    Dec 26, 2013❤️3
    13
    # Extract archives - use: extract <file>
    # Credits to http://dotfiles.org/~pseup/.bashrc
    function extract () {
    if [ -f $1 ] ; then
    case $1 in
    *.tar.bz2) tar xjf $1 ;;
    *.tar.gz) tar xzf $1 ;;
    *.bz2) bunzip2 $1 ;;
    *.rar) unrar e $1 ;;
    *.gz) gunzip $1 ;;
    *.tar) tar xf $1 ;;
    *.tbz2) tar xjf $1 ;;
    *.tgz) tar xzf $1 ;;
    *.zip) unzip $1 ;;
    *.Z) uncompress $1 ;;
    *.7z) 7z x $1 ;;
    *) echo "'$1' cannot be extracted via extract()" ;;
    esac
    else
    echo "'$1' is not a valid file"
    fi
    }
    loggerhead
    loggerhead
    Dec 26, 2013
    14
    zsh plugin: extract
    shakoon
    shakoon
    Dec 26, 2013
    15
    @leecade 建议用file来判断文件类型。比如war就可能是tar也可能是zip
    Sin
    Sin
    Dec 27, 2013
    16
    7z x
    tinytub
    tinytub
    Dec 27, 2013
    17
    tar -xf 足够了
    LazyZhu
    LazyZhu
    Dec 27, 2013
    18
    @leecade 不全啊, 下面这两个也很常见
    *.tar.lz
    *.tar.xz
    VYSE
    VYSE
    Dec 27, 2013
    19
    一个SHELL,判断MAGIC,然后调相应解压程序即可.
    现成的:dtrx atool
    efi
    efi
    Dec 27, 2013
    21
    aunpack专门设计来做这个。不宜自己写脚本造轮子。
    likuku
    likuku
    Dec 27, 2013❤️1
    22
    @yxjxx 现代的 tar 已经可以直接 tar xvf 就支持自动 gz,bz2,等了。
    oldcai
    oldcai
    OP
    PRO
    Dec 27, 2013
    23
    @Ever 感谢!
    aunpack试了下,很好很强大,本来还在想要是压缩也能按扩展名来压缩就好了,apack也满足了需求;

    @Jake 试了下e,也很好用,支持的格式也很全了,需要ruby环境。
    oldcai
    oldcai
    OP
    PRO
    Dec 27, 2013
    24
    @wenLiangcan
    @9hills
    file-roller得有GUI吧,使用面窄了点。
    @ensonmj
    @tinytub
    @ivenvd
    tar xf一般的带tar的都是可以解的,但是zip什么的就不行了,不够高大全 ^__^
    ltzliwe
    ltzliwe
    Dec 27, 2013
    25
    7z 不错的
    dant
    dant
    Dec 27, 2013 via iPhone
    26
    bsdtar或者7z
    mckelvin
    mckelvin
    Dec 28, 2013
    27
    Fuxiang
    Fuxiang
    Dec 29, 2013
    28
    7zip
    Damon
    Damon
    Dec 26, 2016
    29
    unp
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2721 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 77ms · UTC 13:17 · PVG 21:17 · LAX 05:17 · JFK 08:17
    ♥ Do have faith in what you're doing.