- 浏览: 4754675 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
bzhao:
你也应该可以这样:(not tested)./rbtunnel ...
在Bash脚本中怎么关闭文件描述符? -
bzhao:
如果有A进程原代码情况下,通过如下调用,把他的子进程继承关闭则 ...
在Bash脚本中怎么关闭文件描述符? -
Master-Gao:
楼主咋没分析下源码呢?
我使用过的Linux命令之dirname - 截取给定路径的目录部分 -
jiedushi:
tail -F 就可以吧
Linux下实时跟踪log4j日志文件的bash脚本 - 增强了tail -f的功能 -
java_is_new:
新手学习了,就是不明白为一个网卡配多个ip有什么用
我使用过的Linux命令之ifconfig - 网络配置命令
我使用过的Linux命令之unrar - 解压rar文件
本文链接:http://codingstandards.iteye.com/blog/792239 (转载请注明出处)
用途说明
现在常用的压缩文件格式是rar格式,使用频率甚至超过了zip格式,WinRAR可以压缩和解压rar文件。根据Google趋势的统计,winrar与winzip的全球平均访问量是1.00比0.43(点此看趋势记录 ),而中国范围的访问量更是1.00比0.14(点此看趋势记录 )。而Linux一般情况下是不能解压rar文件的,有一种变通的方法,就是先用WinRAR将rar格式的压缩包转换成zip包,然后上传至Linux使用unzip解压。如果安装了rarlinux,就使得在Linux下直接解压rar文件成为可能,要注意的是该软件的某个版本可能并不适用于所有Linux版本。可以到WinRAR官方网站去下载rarlinux,当前版本是3.9.3。本文后面也提供了三个版本的rarlinux,一个是3.0,一个是3.6.0,一个是3.9.3。经过我的测试,3.6.0版本可以用于RHEL3.X版本,但3.9.3不行,只能用于更高版本的Linux,而3.0版本可以用于红帽子7.3。而根据rarlinux安装包中的technote.txt中所说“THE ARCHIVE FORMAT DESCRIBED BELOW IS ONLY VALID FOR VERSIONS SINCE 1.50”,其实只要rarlinux版本高于1.50就可解压绝大部分rar文件。因此,如果要在Linux下使用rar,可以试一下本文后面附上的3.0版。
常用参数
rarlinux的安装很简单,只需要解压就可以了。为了使用起来方便,可以将解压后的目录添加到PATH中,方便使用。
首先将rarlinux-3.0.tar.gz上传到Linux的某个目录。
[root@localhost setup]# ls -l rarlinux-3.0.tar.gz
-rw-r--r-- 1 root root 502784 10月 19 09:45 rarlinux-3.0.tar.gz
[root@localhost setup]# tar -C /opt -zxf rarlinux-3.0.tar.gz
[root@localhost setup]# PATH=/opt/rar:$PATH
使用-?参数可以查看帮助信息,x参数用于解压文件, t参数用于测试是否损坏,l参数用于列出文件。
unrar -? <== 获取帮助
unrar x <rar-file> <== 解压文件
unrar t <rar-file> <== 测试文件
unrar l <rar-file> <== 列出文件
下面是完整的使用方式,太复杂了,上面的几种用法基本上就够了。
[root@localhost setup]# unrar -?
UNRAR 3.00 freeware Copyright (c) 1993-2002 Eugene Roshal
Usage: unrar <command> -<switch 1> -<switch N> <archive> <files...>
<@listfiles...> <path_to_extract\>
<Commands>
e Extract files to current directory
l[t] List archive [technical]
p Print file to stdout
t Test archive files
v[t] Verbosely list archive [technical]
x Extract files with full path
<Switches>
- Stop switches scanning
ad Append archive name to destination path
ap<path> Set path inside archive
av- Disable authenticity verification check
c- Disable comments show
cfg- Disable read configuration
cl Convert names to lower case
cu Convert names to upper case
ep Exclude paths from names
f Freshen files
idp Disable percentage display
ierr Send all messages to stderr
inul Disable all messages
kb Keep broken extracted files
o+ Overwrite existing files
o- Do not overwrite existing files
ow Save or restore file owner and group
p[password] Set password
p- Do not query password
r Recurse subdirectories
ta<date> Process files modified after <date> in YYYYMMDDHHMMSS format
tb<date> Process files modified before <date> in YYYYMMDDHHMMSS format
tn<time> Process files newer than <time>
to<time> Process files older than <time>
u Update files
v Create volumes with size autodetection or list all volumes
ver[n] File version control
vp Pause before each volume
x<file> Exclude specified file
x@ Read file names to exclude from stdin
x@<list> Exclude files in specified list file
y Assume Yes on all queries
[root@localhost setup]#
使用示例
示例一 使用unrar检查完整性、列出文件和解压文件
假定你已经安装前面所述的安装方式操作过了。首先把一个rar文件上传到某个目录。比如把add2cvs.rar上传到/root/test/目录中。
[root@localhost test]# ls -l
total 1
-rw-r--r-- 1 root root 944 10月 19 11:20 add2cvs.rar
[root@localhost test]# unrar t add2cvs.rar
UNRAR 3.00 freeware Copyright (c) 1993-2002 Eugene Roshal
Testing archive add2cvs.rar
Testing add2cvs2.sh OK
Testing add2cvs.sh OK
Testing add2cvs0.sh OK
Testing add2cvs1.sh OK
All OK
[root@localhost test]# unrar l add2cvs.rar
UNRAR 3.00 freeware Copyright (c) 1993-2002 Eugene Roshal
Archive add2cvs.rar
Name Size Packed Ratio Date Time Attr CRC Meth Ver
-------------------------------------------------------------------------------
add2cvs2.sh 302 192 63% 22-10-10 11:32 .....A C7EA31AB m3b 2.9
add2cvs.sh 314 204 64% 22-10-10 11:30 .....A 4F875213 m3b 2.9
add2cvs0.sh 236 158 66% 22-10-10 11:32 .....A 0441BC49 m3b 2.9
add2cvs1.sh 281 184 65% 22-10-10 11:32 .....A 13C47824 m3b 2.9
-------------------------------------------------------------------------------
4 1133 738 65%
[root@localhost test]# unrar x add2cvs.rar
UNRAR 3.00 freeware Copyright (c) 1993-2002 Eugene Roshal
Extracting from add2cvs.rar
Extracting add2cvs2.sh OK
Extracting add2cvs.sh OK
Extracting add2cvs0.sh OK
Extracting add2cvs1.sh OK
All OK
[root@localhost test]# ls -l
total 5
-rw-r--r-- 1 root root 236 10月 22 2010 add2cvs0.sh
-rw-r--r-- 1 root root 281 10月 22 2010 add2cvs1.sh
-rw-r--r-- 1 root root 302 10月 22 2010 add2cvs2.sh
-rw-r--r-- 1 root root 944 10月 19 11:20 add2cvs.rar
-rw-r--r-- 1 root root 314 10月 22 2010 add2cvs.sh
[root@localhost test]#
示例二 rarlinux版本3.9.3在RHEL5.5下的安装情况
rarlinux版本3.9.3的rar_static可以用于RHEL 5.5,但rar和unrar缺少相关的so文件,因为libc版本要求高。
[root@rhel55 rar]# lsb_release -a
LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Release: 5.5
Codename: Tikanga
[root@rhel55 tools]# ls -l rarlinux.tar.gz
-rw-r--r-- 1 root root 833828 10-23 15:52 rarlinux.tar.gz
[root@rhel55 tools]# tar zxf rarlinux.tar.gz
[root@rhel55 tools]# cd rar
[root@rhel55 rar]# ls
default.sfx makefile rar rar_static readme.txt unrar
license.txt order.htm rarfiles.lst rar.txt technote.txt whatsnew.txt
[root@rhel55 rar]# ./rar
./rar: /lib/libc.so.6: version `GLIBC_2.7' not found (required by ./rar)
[root@rhel55 rar]# ./unrar
./unrar: /lib/libc.so.6: version `GLIBC_2.7' not found (required by ./unrar)
[root@rhel55 rar]# ./rar_static
RAR 3.93 Copyright (c) 1993-2010 Alexander Roshal 15 Mar 2010
Shareware version Type RAR -? for help
Usage: rar <command> -<switch 1> -<switch N> <archive> <files...>
<@listfiles...> <path_to_extract\>
省略输出
[root@rhel55 rar]#
示例三 rarlinux版本3.9.3在RHEL3.4下的安装情况
rarlinux版本3.9.3在RHEL3.4下出现段错误,根本没法用。
[root@web186 setup]# lsb_release -a
LSB Version: 1.3
Distributor ID: RedHatEnterpriseAS
Description: Red Hat Enterprise Linux AS release 3 (Taroon Update 4)
Release: 3
Codename: TaroonUpdate4
[root@web186 setup]# ls rarlinux.tar.gz -l
-rw-r--r-- 1 root root 833828 10月 23 15:59 rarlinux.tar.gz
[root@web186 setup]# tar zxf rarlinux.tar.gz
[root@web186 setup]# cd rar
[root@web186 rar]# ls
default.sfx makefile rar rar_static readme.txt unrar
license.txt order.htm rarfiles.lst rar.txt technote.txt whatsnew.txt
[root@web186 rar]# ./rar
./rar: /lib/tls/libc.so.6: version `GLIBC_2.4' not found (required by ./rar)
./rar: /lib/tls/libc.so.6: version `GLIBC_2.7' not found (required by ./rar)
./rar: /lib/tls/libc.so.6: version `GLIBC_2.3.4' not found (required by ./rar)
[root@web186 rar]# ./unrar
./unrar: /lib/tls/libc.so.6: version `GLIBC_2.4' not found (required by ./unrar)
./unrar: /lib/tls/libc.so.6: version `GLIBC_2.7' not found (required by ./unrar)
./unrar: /lib/tls/libc.so.6: version `GLIBC_2.3.4' not found (required by ./unrar)
[root@web186 rar]# ./rar_static
FATAL: kernel too old
段错误 (core dumped)
[root@web186 rar]#
博主建议:如果您使用的rarlinux版本报如上的错误信息,请下载本文附件 rarlinux-3.0.tar.gz 尝试一下。
示例四 rarlinux版本3.6.0在RHEL3.4下的安装情况
rarlinux版本3.6.0在RHEL3.4下可以正常使用。
[root@web186 setup]# lsb_release -a
LSB Version: 1.3
Distributor ID: RedHatEnterpriseAS
Description: Red Hat Enterprise Linux AS release 3 (Taroon Update 4)
Release: 3
Codename: TaroonUpdate4
[root@web186 setup]# ls rarlinux-3.6.0.tar.gz -l
-rw-r--r-- 1 root root 752997 10月 23 16:04 rarlinux-3.6.0.tar.gz
[root@web186 setup]# tar zxf rarlinux-3.6.0.tar.gz
[root@web186 setup]# cd rar
[root@web186 rar]# ls
default.sfx license.txt order.htm rarfiles.lst rar.txt technote.txt whatsnew.txt
file_id.diz Makefile rar rar_static readme.txt unrar
[root@web186 rar]# ./rar
RAR 3.60 Copyright (c) 1993-2006 Alexander Roshal 5 Aug 2006
Shareware version Type RAR -? for help
省略输出
[root@web186 rar]#
[root@web186 rar]# ./unrar
UNRAR 3.60 freeware Copyright (c) 1993-2006 Alexander Roshal
省略输出
[root@web186 rar]#
示例五 rarlinux版本3.6.0在RH7.3下的安装情况
rarlinux版本3.6.0的rar_static可以使用,但rar和unrar因为libstdc++版本要求高不能使用。
[root@localhost setup]# cat /etc/redhat-release
Red Hat Linux release 7.3 (Valhalla)
[root@localhost setup]# ls -l rarlinux-3.6.0.tar.gz
-rw-r--r-- 1 root root 752997 10月 19 08:32 rarlinux-3.6.0.tar.gz
[root@localhost setup]# tar zxf rarlinux-3.6.0.tar.gz
[root@localhost setup]# cd rar
[root@localhost rar]# ls
default.sfx license.txt order.htm rarfiles.lst rar.txt technote.txt whatsnew.txt
file_id.diz Makefile rar rar_static readme.txt unrar
[root@localhost rar]# ./rar
./rar: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
[root@localhost rar]# ./unrar
./unrar: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
[root@localhost rar]# ./rar_static
RAR 3.60 Copyright (c) 1993-2006 Alexander Roshal 5 Aug 2006
Shareware version Type RAR -? for help
Usage: rar <command> -<switch 1> -<switch N> <archive> <files...>
<@listfiles...> <path_to_extract\>
省略输出
[root@localhost rar]#
示例六 rarlinux版本3.0在RH7.3下的安装情况
rarlinux版本3.0可以用于红帽子7.3。
[root@localhost setup]# ls -l rarlinux-3.0.tar.gz
-rw-r--r-- 1 root root 502784 10月 19 09:45 rarlinux-3.0.tar.gz
[root@localhost setup]# tar zxf rarlinux-3.0.tar.gz
[root@localhost setup]# cd rar
[root@localhost rar]# ls
default.sfx license.txt order.txt rar_faq.txt rar_site.txt readme.txt rereg.txt unrar
file_id.diz Makefile rar rarfiles.lst rar.txt register.txt technote.txt whatsnew.txt
[root@localhost rar]# ./rar
RAR 3.00 Copyright (c) 1993-2002 Eugene Roshal 14 May 2002
Shareware version Type RAR -? for help
省略输出
[root@localhost rar]#
补充记录:怎样安装rarlinux?(2011.10.31)
将安装文件压缩包rarlinux-x.y.tar.gz解压之后,进入rar目录,执行make命令。执行文件将会安装到 /usr/local/bin 下。
[root@liunx0918 tmp]# cd rar
[root@liunx0918 rar]# ls
default.sfx license.txt order.txt rar_faq.txt rar_site.txt readme.txt rereg.txt unrar
file_id.diz Makefile rar rarfiles.lst rar.txt register.txt technote.txt whatsnew.txt
[root@liunx0918 rar]# cat Makefile
###################################################################
# Installing RAR executables, configuration files and SFX modules #
# to appropriate directories #
###################################################################
PREFIX=/usr/local
install:
cp rar unrar $(PREFIX)/bin
cp rarfiles.lst /etc
cp default.sfx $(PREFIX)/lib
[root@liunx0918 rar]# make
cp rar unrar /usr/local/bin
cp rarfiles.lst /etc
cp default.sfx /usr/local/lib
[root@liunx0918 rar]#
问题思考
1. 怎样使用unrar将文件解压到指定目录?
相关资料
【1】WinRAR官方站点 Welcome to RARLAB, home of WinRAR and RAR archivers
【2】愚人码头 Linux系统中rar、unrar命令安装和使用详解
【3】尛样儿 Linux下使用unrar解压RAR包
- rarlinux-3.6.0.tar.gz (735.3 KB)
- 下载次数: 29
- rarlinux-3.9.3.tar.gz (814.3 KB)
- 下载次数: 60
- rarlinux-3.0.tar.gz (491 KB)
- 下载次数: 108
发表评论
-
在Linux用tar归档压缩文件时忽略某些文件和目录
2013-02-01 10:19 17055在Linux下,常用tar对文 ... -
使用nmap扫描服务器端口的一次操作
2012-11-01 17:00 15143使用nmap扫描服务器端口的一次操作 本文来自:http ... -
我使用过的Linux命令之wget - ooo
2011-09-14 13:10 0我使用过的Linux命令之wg ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:53 9151简明 Vim 练级攻略 http://coolshell.c ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:49 1简明 Vim 练级攻略 http://coolshell.c ... -
我使用过的Linux命令之:(冒号) - 啥也不做(除了……)
2011-08-29 13:18 12104我使用过的Linux命令之: ... -
我使用过的Linux命令之date - 显示、修改系统日期时间
2011-08-25 09:21 41986我使用过的Linux命令之da ... -
我使用过的Linux命令之declare - 声明shell变量(不知道没关系、知道了就更好的内建命令)
2011-08-16 09:22 21836我使用过的Linux命令之declare - 声明shell变 ... -
我使用过的Linux命令之alias - 设置命令的别名,让 Linux 命令更简练
2011-08-11 09:31 28831我使用过的Linux命令之alias - 设置命令的别名,让 ... -
我使用过的Linux命令之ar - 创建静态库.a文件
2011-08-08 10:40 51935我使用过的Linux命令之ar - 创建静态库.a文件 本 ... -
我使用过的Linux命令之crontab - 设置例行任务(类似于Windows中的任务计划)
2011-08-04 22:26 9754我使用过的Linux命令之crontab - 设置例行任务(类 ... -
我使用过的Linux命令之chmod - 改变文件/目录的访问权限
2011-08-03 21:33 10709我使用过的Linux命令之chmod - 改变文件/目录的访问 ... -
我使用过的Linux命令之export - 设置或显示环境变量
2011-08-02 19:55 25442我使用过的Linux命令之export - 设置或显示环境变量 ... -
我使用过的Linux命令之wc - 统计文件行数、单词数或字节数
2011-07-26 10:50 29020我使用过的Linux命令之wc - 统计文件行数、单词数或字节 ... -
我使用过的Linux命令之groupdel - 删除群组
2011-07-22 22:13 9695我使用过的Linux命令之gr ... -
我使用过的Linux命令之ifconfig - 网络配置命令
2011-07-21 20:43 60560我使用过的Linux命令之ifconfig - 网络配置命令 ... -
我使用过的Linux命令之ll - 列出文件/目录的详细信息
2011-07-20 21:22 7210我使用过的Linux命令之ll ... -
我使用过的Linux命令之mkdir - 创建目录
2011-07-20 20:58 13690我使用过的Linux命令之mkdir - 创建目录 本文链 ... -
我使用过的Linux命令之perror - 解释错误代码
2011-07-18 20:29 25084我使用过的Linux命令之perror - 解释错误代码 ... -
我使用过的Linux命令之ping - 测试与目标主机的连通性
2011-07-16 10:46 26617我使用过的Linux命令之ping - 测试与目标主机的连通性 ...
相关推荐
此时,/usr/local/rar下就会有rar命令和unrar命令。可以在/usr/local/bin下创建连接 #ln -s /usr/local/rar/rar /usr/local/bin/rar #ln -s /usr/local/rar/unrar /usr/local/bin/unrar 使用方法: rar 命令...
本篇文章将详细讲解如何在Linux下安装和使用unrar工具来解压RAR文件。 1. **unrar工具介绍** - Unrar是由Pavel Ruzin开发的一个命令行工具,用于在Linux、Unix和其他类Unix系统中创建、查看和提取RAR压缩文件。 -...
linux解压缩包,rpm直接安装,可以用unrar命令解压rar后缀的文件 unrar e test.rar 解压文件到当前目录 unrar x test.rar /path/to/extract unrar l test.rar 查看rar中的文件 unrar v test.rar 更详细 unrar t ...
在 Linux 中解压.zip 和.rar 文件可以使用 unzip 和 unrar 程序,压缩文件到.zip 和.rar 文件可以使用 zip 和 rar 程序。通过这些命令,可以轻松地处理.zip 和.rar 文件,从而提高工作效率和生产力。
总之,使用JNA调用unrar库解压RAR文件是一个涉及到Java本地接口、C库调用和文件操作的综合任务。通过这种方式,我们可以在不离开Java平台的情况下,充分利用底层库的功能,为Java应用提供更丰富的功能。
java-unrar-0.3.jar java写的用来解压rar zip文件的工具类 无需安装解压程序 兼容windows、linux两大系统
为了在Linux中解压RAR文件,我们需要借助第三方工具,本篇将详细介绍如何在Linux中使用"unrar"这个工具来处理RAR压缩包。 "unrar"是专为Linux设计的一个开源命令行工具,用于提取RAR格式的压缩文件。这个工具不仅...
对于开发者来说,研究这些源码有助于理解RAR文件的内部结构和解压过程,包括头文件解析、数据块解码、错误检测与修复等关键步骤。同时,通过查看构建脚本,可以了解如何在不同平台上编译和链接这些源码,这对于想要...
4. **使用RAR**:现在你可以使用`rar`命令来执行各种RAR操作,例如解压RAR文件: ``` ./rar x yourfile.rar ``` 5. **安装到系统路径**:如果你想让`rar`命令在任何目录下都能直接使用,可以将其复制到`/usr/...
为了在Linux上操作RAR文件,我们可以利用名为`rarlinux`的工具,其包含了`rar`和`unrar`命令,用于RAR文件的压缩和解压缩。本文将详细介绍如何在Linux中安装并使用`rarlinux-4.2.0.tar.gz`来处理RAR文件。 一、`...
解压rar文件命令,从rar档案中提取文件。linux下使用unrar命令解压*.rar格式文件。 语法格式:unrar [选项] [参数] 常用参数: -e 将文件解压缩到当前目录 -l 列出存档内容 -p 将文件打印到标准输出...
本文将详细介绍如何使用Java实现这个功能,特别是处理带密码保护的RAR文件,同时支持中文文件名,并能在Windows和Linux平台上运行。 首先,我们需要一个库来处理RAR格式,因为Java标准库并不直接支持RAR解压缩。在...
例如,使用`rar x archive.rar`命令可以解压名为archive.rar的RAR文件。而`rar a newarchive.rar file1 file2`则可以将file1和file2文件打包成新的RAR档案newarchive.rar。 对于rarlinux-x64-5.6.0.tar.gz这个...
使用"unrar"解压RAR文件: 一旦"unrar"安装完毕,你就可以使用它来解压RAR文件了。假设你有一个名为"file.rar"的RAR文件,你可以通过以下命令将其解压到指定目录,例如"Documents": ``` unrar x file.rar /Users/...
- `unrar`:解压RAR格式的压缩文件。 ```bash unrar e file.rar ``` - `unzip`:解压ZIP格式的压缩文件。 ```bash unzip file.zip ``` #### 其他解压命令 除了使用`tar`、`unrar`和`unzip`命令外,还可以...
2. **下载MySQL**:在标题中提到的“mysql-5.7.33-linux-glibc2.12-x86_64.rar”是一个RAR压缩文件,需先将其解压。在Linux上,RAR不是默认支持的格式,所以需要安装rar命令行工具,然后解压: ``` sudo apt-get ...
`tar` 是 Linux 下最常用的归档工具之一,它能够创建、查看、修改归档文件,并且可以与其他工具结合使用来实现压缩或解压功能。 - **压缩命令**: - `tar cvf FileName.tar DirName`: 将指定目录打包成 tar 文件。 ...
可以用于JAVA在 Linux环境下解压.rar文件
安装完成后,你可以在Linux终端使用`unrar`命令来解压缩RAR文件了。 如果你遇到任何问题,比如缺少依赖或权限问题,根据错误提示进行相应的解决。例如,如果`./configure`找不到某些头文件,可能需要安装相关的开发...
安装完成后,你可以使用`unrar`命令来解压RAR文件。基本用法如下: ```bash unrar x file.rar ``` 这里的`x`表示解压,`file.rar`是你需要解压的RAR文件的路径。如果RAR文件包含密码,可以添加`-p`参数后跟密码: ...