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

2013-12-26 18:53:17 +08:00
 oldcai
8180 次点击
所在节点    Linux
29 条回复
Ever
2013-12-26 18:56:12 +08:00
file-roller用libarchive
aunpack也可以
RagnarokStack
2013-12-26 19:07:58 +08:00
unar,不过压缩包内的软连有时候解压出来会有错误
foru17
2013-12-26 19:51:08 +08:00
自己写个 function 不就行了,shell 还是很强大的。
9hills
2013-12-26 19:52:47 +08:00
GNOME自带的file-roller就可以
ensonmj
2013-12-26 19:56:25 +08:00
tar -xf
wenLiangcan
2013-12-26 21:02:44 +08:00
file-roller
Ansen
2013-12-26 21:05:25 +08:00
同3楼
自己写个脚本就行了
momo5269
2013-12-26 21:45:55 +08:00
我是用peazip - -
xdeng
2013-12-26 21:48:43 +08:00
扩展名假的。前四个字节 会比较准
strak47
2013-12-26 22:19:17 +08:00
yxjxx
2013-12-26 22:31:40 +08:00
难道没有人在用zsh强大的alias么?
示例:

alias -s gz='tar -xzvf'
alias -s tgz='tar -xzvf'
alias -s zip='unzip'
alias -s bz2='tar -xjvf'
ivenvd
2013-12-26 23:25:57 +08:00
tar 本身就能自动识别文件类型啊: tar xf
leecade
2013-12-26 23:35:32 +08:00
# 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
2013-12-26 23:47:53 +08:00
zsh plugin: extract
shakoon
2013-12-26 23:58:00 +08:00
@leecade 建议用file来判断文件类型。比如war就可能是tar也可能是zip
Sin
2013-12-27 00:09:12 +08:00
7z x
tinytub
2013-12-27 00:11:39 +08:00
tar -xf 足够了
LazyZhu
2013-12-27 00:23:50 +08:00
@leecade 不全啊, 下面这两个也很常见
*.tar.lz
*.tar.xz
VYSE
2013-12-27 01:21:05 +08:00
一个SHELL,判断MAGIC,然后调相应解压程序即可.
现成的:dtrx atool
Jake
2013-12-27 02:20:50 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/94678

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX