# 02.Linux-基本指令

# 1.vi和vim

# 1.介绍

Linux 系统会内置 vi 文本编辑器

Vim可以看作是Vi的增强版本,Vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富。

# 2.模式

1.正常模式

以 vim 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用『上下左右』按键来移动光标,可以使用『删除字符』或『删除整行』来处理档案内容,也可以使用『复制、粘贴』来处理你的文件数据。

2.插入模式

按下 i, I, o, O, a, A, r, R 等任何一个字母之后才会进入编辑模式, 一般来说按 i 即可. 可以写东西了。

3.命令行模式

在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开 vim,显示行号等动作

# 3.基本应用

案例:使用 vim 开发一个 hello.java 程序

首先输入:vi Hello.java 或者 vim Hello.java (使用vim编辑器编写java程序)
输入i等字母,进入插入模式(编辑模式)
    然后是写代码:
        public class Hello{
            public static void main(String[] args){
                System.out.println("Hello World");
            }
        }
    然后保存
        先 按 Esc 回到正常模式
        然后输入冒号:  接着输入wq (代表写入并退出write quit)
        回车
    结束

    输入ls命令,就可以看到hello.java文件
    还想修该文件:再输入 vim hello.java (按Tab键 代码补全) 就有回到了上面
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 4.vim快捷键

1.拷贝当前行 yy,拷贝当前行向下的5行 5yy,并粘贴(输入p)。

2.删除当前行 dd,删除当前行向下的5行5dd

3.在文件中查找某个单词【命令行下/关键字,回车查找,输入n就是查找下一个】

4设置文件的行号,取消文件的行号.[命令行下:set nu和:set nonu]

5.编辑/etc/profile文件,在一般模式下,使用快捷键到该文档的最末行[G]和最首行[gg]

6.在一个文件中输入“hello”,在一般模式下,然后又撤销这个动作u

7.编辑/etc/profile文件,在一般模式下,并将光标移动到,输入20,再输入shift+g


# 2.开机和重启

命令 介绍
shutdown -h now 立即关机(h → halt,停止系统)
halt 立即关机,效果与 shutdown -h now 一致
shutdown 默认 1 分钟后关机
shutdown -h 1 1 分钟后关机,并向所有已登录用户发送通知消息:“1 分钟后关机”
shutdown -h 2 2 分钟后关机
shutdown -r now 立即重启(r → reboot,重启系统)(注:原表中拼写为 shutdonw,正确为 shutdown
reboot 立即重启,效果与 shutdown -r now 一致
sync 将内存中的数据同步写入磁盘,防止数据丢失
注意 无论重启还是关机,建议先手动执行 sync 命令;现代 shutdown/reboot/halt 已内置 sync,但手动执行更保险

# 3.用户管理

# 1.添加用户

语法:useradd 用户名
比如:useradd milan 注册新用户milan

注意:当创建用户成功后,会自动创建和用户同名的家目录,该用户的家目录默认在home目录下

也可以给新用户指定家目录:useradd -d 指定目录 新用户名
比如:useradd -d /home/test king 创建一个新用户king,其家目录test
1
2
3
4
5
6
7

# 2.指定/修改密码

语法:passwd 用户名  给某个用户设置/更改密码
注意:要写用户名。不写用户名默认设置当前用户,如果当前用户是root就麻烦了。
比如:给milan设置密码 

命令:pwd --->显示当前用户所在目录 Print Working Directory
1
2
3
4
5

# 3.删除用户

语法: userdel 用户名

普通用户不能删除别的用户,只有root用户可以;并且不能自己删除自己

1.删掉用户,但是保留其家目录:
    userdel 用户名
2.将用户和其家目录一起删除(这个操作要谨慎):
    user -r 用户名

一般情况,建议保留家目录(不删除)
1
2
3
4
5
6
7
8
9
10

# 4.查看用户信息

语法:id 用户名
id root:
uid=0(root) gid=0(root) 组=0(root)  userid是0 gruopid组id是0 所在组0
当用户不存在:返回无此用户 no such user 

语法:who am i 或者 who am I
who am i --->第一个登录该系统的用户信息
假设A用户登录系统,切换到B用户,B输入命令who am i,输出的还是A用户的信息    
1
2
3
4
5
6
7
8

# 5.用户组

介绍:类似于角色,系统可以对有共性/有相同的权限的多个用户进行统一的管理

新增组:groupadd 组名
    假如A用户和B用户有相同的权限,一个一个赋权限太麻烦了;
    可以把A用户和B用户放在一个组里,然后给这个组赋权限,组里的用户有相同的权限。

    新增一个用户,其实会默认生成一个跟用户名相同的组,然后把用户放到该组里。
    就像是 id root:uid=0(root) gid=0(root) 组=0(root)--->root组

    例子:增加一个用户zwj,把他直接放到组wudang中
    命令:
        groupadd wudang
        useradd -g wudang zwj
        id zwj:uid=1001(zwj) gid=1001(wudang) 组=1001(wudang)



修改用户的组:usermod -g 用户组 用户名
    例子:把zwj 放到组 mojiao 中
    命令:
        groupadd mojiao
        usermod -g mojiao zwj
        id zwj:uid=1001(zwj) gid=1002(mojiao) 组=1002(mojiao)


删除组:groupdel 组名
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

# 6.用户和组相关文件

1./etc/passwd 文件

用户(user)的配置文件,记录用户的各种信息

每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

shell:命令解释程序,将发布的指令通过shell解析,再传给Linux内核,shell有很多种,中国一般用的是bash

2./etc/shadow 文件

口令的配置文件

每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

3./etc/group 文件

组(group)的配置文件,记录 Linux 包含的组的信息

每行含义:组名:口令:组标识号:组内用户列表


# 4.实用指令

# 1.运行级别

Linux系统运行级别:
0:关机
1:单用户【可以找回丢失密码】
2:多用户状态没有网络服务(一般不用,没网络)
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别是 3 和 5

切换运行级别命令:init 选0-6

指定默认运行级别:
    CentOS7之前是在文件/etc/inittab文件中设置
    CentOS7之后对设置进行了简化:
        用 multi-user.target 代表3运行级别
        用 graphical.target 代表5运行级别
        7版本之后主要用3和5运行级别。

    用命令:systemctl get-default 查看当前系统运行级别
    用命令:systemctl set-default multi-user.target /graphical.target  设置默认运行级别
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

# 2.如何找回root密码

Linux学习笔记-B站韩顺平_韩顺平linux笔记-CSDN博客 (opens new window)

# 3.帮助指令

法:man 命令或配置文件
是manual的简写,manual是手册的意思

功能:获得帮助信息
例子:查看ls命令的帮助信息

输入 man ls 之后,会看到ls的具体信息(输入q退出)
注意:可能不止一页,使用空格或下键,可以往下看

---------------------------------------------------------------------
ls命令:列出目录内容
格式:ls [选项] [文件名...]     
     ls  -a  --->列出所有文件,包括隐藏文件(隐藏文件以 . 开头)
     ls  -l  --->单列输出 

选项以 - 开始
选项可以组合使用,没有顺序:
    比如: ls -al  也可以 ls -a -l  表示列出所有的文件 并 单列输出

ls默认是对当前目录下的文件
也可以指定某个目录:
    如: ls -al /root  把root目录下的所有文件单列输出
---------------------------------------------------------------------

语法:help 命令
功能:获得 shell 内置命令的帮助信息
例子:查看 cd 命令的帮助信息
help cd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

# 4.文件目录指令

绝对路径和相对路径

假如当前目录是/home,要找到/home/tom/a.txt

绝对路径:/home/tom/a.txt

相对路径:tom/a.txt

pwd

基本语法:pwd    (print working directory)
功能:显示当前目录的绝对路径
1
2

ls

基本语法:ls [选项] [目录或是文件]
常用选项:
    -a:显示当前目录所有的文件和目录,包括隐藏的。
    -l:以列表的方式显示信息
1
2
3
4

cd

基本语法:cd [参数]    
功能:切换到指定目录

cd ~ 或者 cd --->回到当前用户的家目录 
cd ..   --->回到当前目录的上一级目录

案例 1:使用绝对路径切换到 root 目录
    cd /root

案例 2:使用相对路径到 root 目录
    比如当前在 /home/tom 
        cd ../../root    ../..回到了根目录,再/root
1
2
3
4
5
6
7
8
9
10
11
12

mkdir,rmdir

基本语法:mkdir [选项] 要创建的目录路径
功能:创建目录
常用选项:
    -p:创建多级目录

案例1:在home下创建一个目录dog
    mkdir /home/dog

案例2:在home下创建多级目录 /home/animal/tiger 
    mkdir -p /home/animal/tiger

---------------------------------------------------------------------

基本语法:rmdir [选项] 要删除的空目录路径
功能:删除一个空目录

案例:删除一个目录 /home/dog
    rmdir /home/dog

注意:
    rmdir 删除的是空目录,如果目录下有内容是无法删除的。
    如果需要删除非空目录,需要使用命令:rm -rf 要删除的目录
    比如: 删除animal目录
        rm -rf /home/animal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

touch

基本语法:touch 文件名称
功能:创建空文件

案例::在/home 目录下,创建一个空文件 hello.txt
    touch /home/hello.txt
    或者当前目录是home:touch hello.text
1
2
3
4
5
6

cp

基本语法:cp [选项] 被拷贝的文件 拷贝到哪个地方
功能:拷贝文件到指定目录
常用选项:
    -r:递归复制整个文件夹

案例1:将 /home/hello.txt  拷贝到    /home/bbb  目录下
    若在根目录下操作:
    先创建 bbb目录
        mkdir /home/bbb
    然后复制
        cp /home/hello.txt /home/bbb

案例2:递归复制整个文件夹,比如将 /home/bbb 整个目录,拷贝到 /opt 
    cp -r /home/bbb /opt

注意:强制覆盖不提示的方法:\cp    
    \cp -r /home/bbb /opt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

rm

基本语法:rm    [选项] 要删除的文件或目录
功能:移除文件或目录
常用选项:
    -r:递归删除整个文件夹
    -f:强制删除不提示

案例1:将 /home/hello.txt 删除 
    rm    /home/hello.txt

案例2:递归删除整个文件夹 /home/bbb ,并不提示
    rm -rf /home/bbb 

注意:强制删除不提示的方法:带上 -f 参数即可
1
2
3
4
5
6
7
8
9
10
11
12
13

mv

功能:移动文件与目录或重命名
基本语法:
    mv    原文件名 新文件名          (功能描述:重命名)
    mv  被移动的文件 移动到哪   (功能描述:移动文件)

案例 1: 将 /home/cat.txt 文件 重新命名为 pig.txt
    [root@hspEdu01 ~]# cd /home
    [root@hspEdu01 home]# touch cat.txt
    [root@hspEdu01 home]# ls
    cat.txt  jack  king  milan  zwj
    [root@hspEdu01 home]# mv cat.txt pig.txt
    [root@hspEdu01 home]# ls
    jack  king  milan  pig.txt  zwj

案例 2:将 /home/pig.txt    文件 移动到 /root 目录下
    [root@hspEdu01 home]# mv pig.txt /root
    [root@hspEdu01 home]# ls
    jack  king  milan  zwj
    [root@hspEdu01 home]# cd /root
    [root@hspEdu01 ~]# ls    
    Hello.java  pig.txt 

移动并重名:mv pig.txt /root/cow.txt

案例 3: 移动整个目录,比如将 /opt/bbb  移动到 /home 下
     mv /opt/bbb /home/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

cat

前面学过一个查看:vim
cat也可以查看,cat只能查看不能修改,cat更安全。

基本语法:cat    [选项] 要查看的文件
功能:查看文件内容
常用选项:
    -n:显示行号

案例1:查看 /etc/profile 文件内容,并显示行号。
    cat    -n /etc/profile 
注意:
    cat 只能浏览文件,而不能修改文件;为了浏览方便再加上管道命令 | more 
    管道命令:把前面的结果再交给下一个指令进行处理。
        语法:| 其他指令

    cat    -n /etc/profile | more 
        意思:先执行cat -n /etc/profile 然后,按回车键输出一行,按空格翻页等。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

more指令

基本语法:more 要查看的文件
功能:
more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。
more 指令中内置了若干快捷键(交互的指令),详见操作说明:
1
2
3
4
操作 功能说明
空格键 (space) 代表向下翻一页;
Enter 代表向下翻「一行」;
q 代表立刻离开 more,不再显示该文件内容。
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号

less指令

基本语法:less 要查看的文件
功能:
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。
less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。

有一个文件是100M,用vim查看会将其全部加载再显示出来,这样会很慢。
使用less,会先加载一部分显示出来,再根据指令显示剩下的,这样更快。

所以要查找一些大的文件,建议用less。

下面操作中:
 想要找某个字或词
 输入:/要找的字或词 然后按n向下找 按N向上找
操作说明:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
操作 功能说明
空白键 向下翻动一页;
[pagedown] 向下翻动一页
[pageup] 向上翻动一页;
/ 字串 向下搜寻「字串」的功能;n:向下查找;N:向上查找;
q 离开 less 这个程序;

echo

基本语法:echo [选项]    [输出内容]
功能:输出内容到控制台

案例: 使用 echo  指令输出环境变量
比如输出 $PATH $HOSTNAME
    输入:echo $HOSTNAME (环境变量一般加$)

案例: 使用 echo 指令输出 hello,world!
    输入:echo hello,world!
         echo "hello,world!"  加不加引号都可以
1
2
3
4
5
6
7
8
9
10

head,tail

功能:head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容。
基本语法:
    head  文件        (功能描述:查看文件头 10 行内容)
    head -n 5 文件    (功能描述:查看文件头 5 行内容,5 可以是任意行数)

案例: 查看/etc/profile 的前面 5 行代码
    head -n 5 /etc/profile

功能:tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的前 10 行内容。
基本语法:
    tail 文件        (功能描述:查看文件尾 10 行内容)
    tail -n 5 文件    (功能描述:查看文件尾 5 行内容,5 可以是任意行数)
    tail -f    文件        (功能描述:实时追踪该文档的所有更新,只要该文件改动了什么内容就可实时看到)
1
2
3
4
5
6
7
8
9
10
11
12
13

输入覆盖 >,重定向>>

>指令和>>指令:
    > 输出重定向(覆盖)
    >> 追加
基本语法:
    ls -l >文件1             (功能描述:将列表的内容写入文件1中(覆盖写))
    ls -al >>文件1        (功能描述:将列表的内容追加到文件1的末尾)
    cat 文件 1 > 文件 2      (功能描述:将文件 1 的内容覆盖到文件 2)
    echo "内容">> 文件1     (将内容追加到文件1的末尾)

案例 1: 将 /home 目录下的文件列表 写入到 /home/info.txt 中,覆盖写入。
    ls -l /home > /home/info.txt    [如果 info.txt 没有,则会自动创建] 

案例 2: 将当前日历信息 追加到    /home/mycal 文件中
    cal >> /home/mycal
1
2
3
4
5
6
7
8
9
10
11
12
13
14

软链接

功能:给原文件创建一个软链接
     软链接也称为符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径
基本语法:
    ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)
    ln是link

案例1:在/home 目录下创建一个软连接 myroot,连接到 /root 目录
(这样 切换到myroot 其实就是切换到root)
    ln -s /root    /home/myroot

案例2: 删除软连接 myroot 
    rm    /home/myroot

当我们使用 pwd 指令查看目录时,仍然看到的是软链接所在目录。
1
2
3
4
5
6
7
8
9
10
11
12
13
14

history

功能:查看已经执行过历史命令,也可以执行历史指令
基本语法:
    history (功能描述:查看已经执行过历史命令)
    可以看其他登录的用户做了什么操作。

案例 1: 显示所有的历史命令
history
案例 2: 显示最近使用过的 10 个指令。
history 10
案例 3:执行历史编号为 5 的指令
!5
1
2
3
4
5
6
7
8
9
10
11

# 5.日期指令

date和cal

date指令:
    1.显示当前日期
        基本语法:
            date      (功能描述:显示当前时间)
            date +%Y  (功能描述:显示当前年份)
            date +%m  (功能描述:显示当前月份)
            date +%d  (功能描述:显示当前是哪一天)
            date "+%Y-%m-%d %H:%M:%S"(功能描述:显示年月日时分秒)

            Y year
            m month
            d day
            H hour
            M minute
            S second

        案例 1: 显示当前时间信息
        date
        案例 2: 显示当前时间年月日
        date "+%Y-%m-%d"
        案例 3: 显示当前时间年月日时分秒
        date "+%Y-%m-%d %H:%M:%S"

    2.设置日期
        基本语法:
            date -s    字符串时间

        案例 1: 设置系统当前时间
        date -s "2020-11-03 20:02:10"


cal指令:
    查看日历指令 cal

    基本语法:
    cal [选项]    (功能描述:不加选项,显示本月日历)

    案例 1: 显示当前日历 
    cal
    案例 2: 显示 2020 年日历 
    cal 2020
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

# 6.查找指令

find,locate,grep

find 指令
 从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。

基本语法:
find [搜索范围] [选项]

选项说明:
    -name 匹配名字
    -size 匹配文件大小
    -user 匹配指定用户相关文件


案例 1: 按文件名:根据名称查找 /home 目录下的 hello.txt 文件
find /home -name hello.txt

案例 2:按拥有者:查找 /opt 目录下,用户名称为 nobody 的文件
find /opt -user nobody

案例 3:查找整个 linux 系统下大于 200M 的文件
    +n 大于 -n 小于 n 等于
    单位有 k,M,G 
find / -size +200M

[root@hspEdu01 opt]# find / -size +200M
/proc/kcore
/run/media/root/CentOS 7 x86_64/LiveOS/squashfs.img (这个文件大于200M)
[root@hspEdu01 LiveOS]# ls -lh  (上面的总用量大小看不懂,加上h human 能看懂的内容)
总用量 433M 
-rw-r--r--. 1 root root 433M 11月 26 2026 squashfs.img
-r--r--r--. 1 root root  224 11月 26 2026 TRANS.TBL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

locate,which

locate 指令
    可以快速定位文件路径。
    利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给定的文件。
    Locate 指令无需遍历整个文件系统,查询速度较快。
    为了保证查询结果的准确度,管理员必须定期更新 locate 时刻

    基本语法:
    locate 搜索文件

    注意:
    由于 locate 指令基于数据库进行查询,
    所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。

    案例 1: 请使用 locate 指令快速定位 hello.txt 文件所在目录
    updatedb
    locate hello.txt


which 指令
    可以查看某个指令在哪个目录下
    案例:ls 指令在哪个目录
    which ls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

grep

grep 指令和 管道符号 |  
    grep指令往往和管道符号 | 结合使用
    grep:过滤查找
    管道符:“|”
    表示将前一个命令的处理结果输出传递给后面的命令处理。
    比如:先 cat a.txt,然后又想看a.txt文件中有没有hello这个词
    那么就 cat a.txt | grep "hello" --->先找到a.txt,然后再在a.txt中找hello

    基本语法:
    grep [选项] 查找内容 源文件

    常用选项:
        -n  显示匹配行及行号
        -i   忽略字母大小写

    案例 1: 请在 hello.txt 文件中,查找"yes"所在行,并且显示行号
        写法 1:  cat /home/hello.txt    | grep "yes"  引号写不写都行
                cat /home/hello.txt    | grep -n "yes"   显示行号                
        写法 2:  grep -n "yes" /home/hello.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# 7.解压和压缩

gzip和gunzip

gzip/gunzip 指令
    gzip    用于压缩文件
    gunzip  用于解压的

    基本语法:
    gzip 文件      (功能描述:压缩文件,只能将文件压缩为*.gz 文件)
    gunzip 文件.gz (功能描述:解压缩文件命令)


    案例 1: gzip 压缩,将 /home 下的 hello.txt 文件进行压缩
    gzip /home/hello.txt

    案例 2: gunzip 解缩,将 /home 下的 hello.txt.gz 文件进行解压
    gunzip /home/hello.txt.gz
1
2
3
4
5
6
7
8
9
10
11
12
13
14

zip和unzip

zip/unzip 指令
 zip 用于压缩文件
 unzip 用于解压的 
(这个在项目打包发布中很有用的)

基本语法:
zip    [选项] XXX.zip 将要压缩的内容    (功能描述:压缩文件和目录的命令)
unzip [选项] XXX.zip                  (功能描述:解压文件)

zip 常用选项
    -r:递归压缩,即压缩目录

unzip 的常用选项
    -d<目录> :指定解压后文件的存放目录


案例 1:将 /home 下的所有文件/文件夹压缩成 myhome.zip
zip -r myhome.zip /home/    [将 home 目录及其包含的文件和子文件夹都压缩] 

案例 2:将 myhome.zip 解压到 /opt/tmp 目录下
mkdir /opt/tmp
unzip -d /opt/tmp /home/myhome.zip
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

tar

tar 指令
    tar 指令是打包指令,最后打包后的文件是 .tar.gz 的文件。
    把一个或者多个文件(夹)用压缩软件进行压缩的过程,一般可称之为打包。

    tar指令可以压缩也可以解压。
    根据选项来 压缩还是解压。

    基本语法:
    tar    [选项] XXX.tar.gz 打包的内容      (功能描述:打包目录,压缩后的文件格式.tar.gz)

    选项说明:
            -c 产生.tar打包文件
            -v 显示详细信息
            -f  指定打包的文件名
            -z 打包同时压缩
            -x 解包.tar文件

案例 1:压缩多个文件,将 /home/pig.txt 和 /home/cat.txt 压缩成 pc.tar.gz 
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
    使用了选项:-z -c -v -f
    多个文件就 空格直接写在后面就好了

案例 2:将 /home 的文件夹压缩成 myhome.tar.gz 
tar -zcvf myhome.tar.gz /home/

案例 3:将 pc.tar.gz 解压到当前目录
tar -zxvf pc.tar.gz

案例 4:将 myhome.tar.gz 解压到 /opt/tmp2 目录下    
(1)    mkdir /opt/tmp2 
(2) tar -zxvf /home/myhome.tar.gz -C /opt/tmp2
注意:-C 后写要解压到的位置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

最近更新: 9/19/2026, 1:27:08 PM
编程NOTE   |