一、概述
放假回家,没带电脑,用姐姐的mac临时代替一下,对于一个从来没有用过mac的人来说简直就是折磨,各种不习惯,还是windows好啊!!!一个重要的问题是不能解压rar 文件,app store 里面的解压软件竟然都要钱!!!果然是高科技啊。
最后解压不成想到一个办法:先把文件传到服务器,在服务器上解压好了再下载回来。虽然比较麻烦,但是也是目前唯一能想到的办法了,谁要我不会用呢。。。
linux默认也是没有rar 解压软件的,需要动手来装了。
二、安装步骤
2.1 下载安装包
可以右键复制下载地址,在linux下使用wget命令下载:
wget https://www.rarlab.com/rar/rarlinux-x64-5.5.0.tar.gz
1
wgethttps://www.rarlab.com/rar/rarlinux-x64-5.5.0.tar.gz
2.2 安装
# 解压
tar -zxvf rar*.tar.gz
cd rar
# 安装
sudo make
sudo make install
1
2
3
4
5
6
# 解压
tar-zxvfrar*.tar.gz
cdrar
# 安装
sudomake
sudomakeinstall
然后使用rar 命令测试一下,如果成功会出现该条命令的用法,否则就说明安装出现了问题,我的问题是rar 命令找不到,用which 命令查看一下命令的目录在哪:
[root@blog rar]which rcar
/usr/bin/which: no rar in (/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/go/bin:/data/code/go:/usr/local/leanote/bin/bin:/usr/local/mongodb/bin)
1
2
[root@blograr]whichrcar
/usr/bin/which:norarin(/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/go/bin:/data/code/go:/usr/local/leanote/bin/bin:/usr/local/mongodb/bin)
发现是因为系统并没有在环金变量中找到rar 命令的地址,查看make 和make install 的输出发现命令都存放到/usr/local/bin/ 目录下,而这个目录没有被包含到环境变量中:
[root@blog rar]# make
mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
cp rar unrar /usr/local/bin
cp rarfiles.lst /etc
cp default.sfx /usr/local/lib
[root@blog rar]# make install
mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
cp rar unrar /usr/local/bin
cp rarfiles.lst /etc
cp default.sfx /usr/local/lib
1
2
3
4
5
6
7
8
9
10
11
12
[root@blograr]# make
mkdir-p/usr/local/bin
mkdir-p/usr/local/lib
cprarunrar/usr/local/bin
cprarfiles.lst/etc
cpdefault.sfx/usr/local/lib
[root@blograr]# make install
mkdir-p/usr/local/bin
mkdir-p/usr/local/lib
cprarunrar/usr/local/bin
cprarfiles.lst/etc
cpdefault.sfx/usr/local/lib
所以解决的办法就是添加该目录到环境变量,或者创建软链接到环境变量已有的目录中。
三、用法
3.1 解压
# 方法一
rar x test.rar
# 方法二
unrar e test.rar
1
2
3
4
# 方法一
rarxtest.rar
# 方法二
unraretest.rar
3.2 压缩
rar a test.rar test.txt
1
raratest.rartest.txt
四、练习
创建一个文件和一个文件夹用于打包测试
[root@blog data]# mkdir test && cd test/
[root@blog test]# ll
total 0
[root@blog test]# touch a.txt
[root@blog test]# mkdir b
[root@blog test]# touch b/c.txt
[root@blog test]# tree
.
├── a.txt
└── b
└── c.txt
1 directory, 2 files
1
2
3
4
5
6
7
8
9
10
11
12
13
[root@blogdata]# mkdir test && cd test/
[root@blogtest]# ll
total0
[root@blogtest]# touch a.txt
[root@blogtest]# mkdir b
[root@blogtest]# touch b/c.txt
[root@blogtest]# tree
.
├──a.txt
└──b
└──c.txt
1directory,2files
压缩:
[root@blog test]# rar a a.rar a.txt #压缩文件
RAR 5.50 Copyright (c) 1993-2017 Alexander Roshal 11 Aug 2017
Trial version Type "rar -?" for help
Evaluation copy. Please register.
Creating archive a.rar
Adding a.txt OK
Done
[root@blog test]# ll
total 8
-rw-r--r-- 1 root root 71 Oct 1 14:55 a.rar
-rw-r--r-- 1 root root 0 Oct 1 14:55 a.txt
drwxr-xr-x 2 root root 4096 Oct 1 14:55 b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@blogtest]# rar a a.rar a.txt #压缩文件
RAR5.50Copyright(c)1993-2017AlexanderRoshal11Aug2017
TrialversionType"rar -?"forhelp
Evaluationcopy.Pleaseregister.
Creatingarchivea.rar
Addinga.txtOK
Done
[root@blogtest]# ll
total8
-rw-r--r--1rootroot71Oct114:55a.rar
-rw-r--r--1rootroot0Oct114:55a.txt
drwxr-xr-x2rootroot4096Oct114:55b
[root@blog test]# rar a all.rar b # 压缩文件夹
RAR 5.50 Copyright (c) 1993-2017 Alexander Roshal 11 Aug 2017
Trial version Type "rar -?" for help
Evaluation copy. Please register.
Creating archive all.rar
Adding b/c.txt OK
Adding b OK
Done
[root@blog test]# ll
total 12
-rw-r--r-- 1 root root 108 Oct 1 14:57 all.rar
-rw-r--r-- 1 root root 71 Oct 1 14:55 a.rar
-rw-r--r-- 1 root root 0 Oct 1 14:55 a.txt
drwxr-xr-x 2 root root 4096 Oct 1 14:55 b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@blogtest]# rar a all.rar b # 压缩文件夹
RAR5.50Copyright(c)1993-2017AlexanderRoshal11Aug2017
TrialversionType"rar -?"forhelp
Evaluationcopy.Pleaseregister.
Creatingarchiveall.rar
Addingb/c.txtOK
AddingbOK
Done
[root@blogtest]# ll
total12
-rw-r--r--1rootroot108Oct114:57all.rar
-rw-r--r--1rootroot71Oct114:55a.rar
-rw-r--r--1rootroot0Oct114:55a.txt
drwxr-xr-x2rootroot4096Oct114:55b
[root@blog test]# rar a all2.rar * # 压缩多个文件
RAR 5.50 Copyright (c) 1993-2017 Alexander Roshal 11 Aug 2017
Trial version Type "rar -?" for help
Evaluation copy. Please register.
Creating archive all2.rar
Adding all.rar OK
Adding a.rar OK
Adding a.txt OK
Adding b/c.txt OK
Adding b OK
Done
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@blogtest]# rar a all2.rar * # 压缩多个文件
RAR5.50Copyright(c)1993-2017AlexanderRoshal11Aug2017
TrialversionType"rar -?"forhelp
Evaluationcopy.Pleaseregister.
Creatingarchiveall2.rar
Addingall.rarOK
Addinga.rarOK
Addinga.txtOK
Addingb/c.txtOK
AddingbOK
Done
解压:
[root@blog test]# rm all.rar a.* b/ -rf #删掉原来的文件
[root@blog test]# ll
total 4
-rw-r--r-- 1 root root 409 Oct 1 14:57 all2.rar
[root@blog test]# unrar e all2.rar #解压
UNRAR 5.50 freeware Copyright (c) 1993-2017 Alexander Roshal
Extracting from all2.rar
Extracting all.rar OK
Extracting a.rar OK
Extracting a.txt OK
Extracting c.txt OK
All OK
[root@blog test]# ll
total 12
-rw-r--r-- 1 root root 409 Oct 1 14:57 all2.rar
-rw-r--r-- 1 root root 108 Oct 1 14:57 all.rar
-rw-r--r-- 1 root root 71 Oct 1 14:55 a.rar
-rw-r--r-- 1 root root 0 Oct 1 14:55 a.txt
-rw-r--r-- 1 root root 0 Oct 1 14:55 c.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[root@blogtest]# rm all.rar a.* b/ -rf #删掉原来的文件
[root@blogtest]# ll
total4
-rw-r--r--1rootroot409Oct114:57all2.rar
[root@blogtest]# unrar e all2.rar #解压
UNRAR5.50freewareCopyright(c)1993-2017AlexanderRoshal
Extractingfromall2.rar
Extractingall.rarOK
Extractinga.rarOK
Extractinga.txtOK
Extractingc.txtOK
AllOK
[root@blogtest]# ll
total12
-rw-r--r--1rootroot409Oct114:57all2.rar
-rw-r--r--1rootroot108Oct114:57all.rar
-rw-r--r--1rootroot71Oct114:55a.rar
-rw-r--r--1rootroot0Oct114:55a.txt
-rw-r--r--1rootroot0Oct114:55c.txt
或
[root@blog test]# rm all.rar a.* b/ -rf
[root@blog test]# rar x all2.rar
RAR 5.50 Copyright (c) 1993-2017 Alexander Roshal 11 Aug 2017
Trial version Type "rar -?" for help
Extracting from all2.rar
Extracting all.rar OK
Extracting a.rar OK
Extracting a.txt OK
Creating b OK
Extracting b/c.txt OK
All OK
[root@blog test]# ll
total 16
-rw-r--r-- 1 root root 409 Oct 1 14:57 all2.rar
-rw-r--r-- 1 root root 108 Oct 1 14:57 all.rar
-rw-r--r-- 1 root root 71 Oct 1 14:55 a.rar
-rw-r--r-- 1 root root 0 Oct 1 14:55 a.txt
drwxr-xr-x 2 root root 4096 Oct 1 14:55 b
-rw-r--r-- 1 root root 0 Oct 1 14:55 c.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[root@blogtest]# rm all.rar a.* b/ -rf
[root@blogtest]# rar x all2.rar
RAR5.50Copyright(c)1993-2017AlexanderRoshal11Aug2017
TrialversionType"rar -?"forhelp
Extractingfromall2.rar
Extractingall.rarOK
Extractinga.rarOK
Extractinga.txtOK
CreatingbOK
Extractingb/c.txtOK
AllOK
[root@blogtest]# ll
total16
-rw-r--r--1rootroot409Oct114:57all2.rar
-rw-r--r--1rootroot108Oct114:57all.rar
-rw-r--r--1rootroot71Oct114:55a.rar
-rw-r--r--1rootroot0Oct114:55a.txt
drwxr-xr-x2rootroot4096Oct114:55b
-rw-r--r--1rootroot0Oct114:55c.txt