1、命令
1.1、什么是命令、命令行
- 命令:Linux操作指令、系统内置的程序、可以以字符化的形式使用
- 命令行:Linux终端、可以提供字符化的操作页面供命令执行
1.2、Linux命令的通用格式
command [-options] [parameter]
- command:命令本体
- options:可选选项,控制命令行为细节,选项可以组合使用
- parameter:可选参数,控制命令的指向目标
2、Linux基础命令
2.1、ls命令
ls [-options] [parameter(Linux路径)],当不使用选项和参数时,直接执行ls命令本体表示:以平铺的方式,列出当前工作目录下的内容
ls命令的作用:
在命令行中展示指定目录下的内容(文件或文件夹)
ls命令的可用选项:
- -a:显示所有文件和目录,包括隐藏文件(以
.
开头的文件或文件夹)- -l:以列表形式显示文件和目录的详细信息,包括权限、所有者、大小等
- -h:以人类可读的格式(如KB、MB、GB)显示文件大小
-------------------------------------------------------------------------------------------------------------------------
- -R:递归列出指定目录及其所有子目录中的文件和目录
- -Q:把输出的文件名用双引号括起来
- -1:每行只输出一个文件
- --color=no:不显示五颜六色的文件名
- --help:显示帮助信息
- --version:显示版本信息并退出
2.2、cd命令
cd [parameter(Linux路径)],cd命令无需选项,只有参数,直接执行cd命令本体表示:回到用户的home目录
cd命令的作用:
切换当前的工作目录,Linux终端在启动时默认为用户的home目录
2.3、pwd命令
pwd, pwd命令无选项、无参数
pwd命令的作用:
查看当前的工作目录
2.4、mkdir命令
mkdir [-options] [parameter(Linux路径)],路径参数必填
mkdir命令的作用:
创建新的目录(文件夹)
mkdir的可用选项:
- -p:递归创建目录,如果上级目录不存在也会一并创建。
- -m:设置权限模式,如mkdir -m 755 dir会创建一个权限为755的目录
2.5、touch命令
touch [-options] [parameter(Linux路径)],路径参数必填,选项可不填,默认创建一个文件
touch命令的作用:
创建文件
touch命令的可用选项:
- -a:仅修改文件的访问时间
- -c:如果文件不存在则不创建文件
- -d:设置文件的时间戳为指定的时间
- -m:仅修改文件的修改时间
- -r:设置目标文件的时间戳与目标文件的目录的时间戳一致
- -t:设置文件的访问时间与修改时间
2.6、cat命令
cat [-options] [parameter(Linux路径)],路径参数必填,选项可不填,默认正常打开文件
cat命令的作用:
查看文件内容
cat命令的可用选项:
- -n:从1开始对所有输出的行数编号
- -b:和-n相似,对于空白行不编号
-------------------------------------------------------------------------------------------------------------------------
- -s:当遇到有连续两行以上的空白行,代换为一行的空白行
- -v:使用 ^ 和 M- 符号显示非打印字符,除 LFD 和 TAB 之外
- -E :在每行结束处显示$
- -T :将制表符显示为^T
2.7、more命令
more [-options] [parameter(Linux路径)],路径参数必填,选项可不填,默认以可翻页形式打开文件
more命令的作用:
以可翻页形式查看文件内容
more命令的可用选项:
- -d:在每屏的底部显示更友好的提示信息,如“-- More -- (XX%)[Press space to continue, ‘q’ to quit . ]”,并且在尝试滚动超过文件内容时显示错误消息
- -l:忽略换页符(Ctrl+l)。如果没有给出这个选项,则more命令在显示了包含换页符的行后会暂停显示,并等待接收命令
- -f:使滚动按照实际行数而不是屏幕行数进行
- -p:通过清除窗口而不是滚动窗口来显示文件
- -c:通过从屏幕顶部清除而不是滚动窗口来显示文件。这与-p选项相似,都是为了清屏后显示新内容
- -s:将连续的多个空行压缩为一个空行显示
- -u:禁止下划线
- +num:从第num行开始显示文件内容
- -num:指定屏幕大小为num行
- +/pattern:在每个文件中搜索pattern并从该处开始显示
2.8、cp命令
cp [-options] [parameter1(Linux路径)] [parameter2(Linux路径)]
cp命令的作用:
复制文件或文件夹(从parameter1复制到parameter2)
cp命令的可用选项:
- -r:递归复制目录及其下的所有子目录和文件
-------------------------------------------------------------------------------------------------------------------------
- -a:归档模式,用于递归复制目录并保留文件的所有属性,包括权限、所有者、时间戳等。这个选项相当于dpR选项的组合
- -d:如果源文件是软链接,则复制出的目标文件也为软链接
- -f:强制复制,不提示是否覆盖目标文件
- -i:交互模式,如果目标文件已经存在,则会询问是否覆盖
- -p:保留原有文件或目录属性,包括修改时间和访问权限
- -l:创建硬链接而不是复制文件
- -s:创建符号链接(软链接)而不是复制文件
- --sparse=auto/always/never:控制是否创建稀疏文件
- --strip-trailing-slashes:删除源文件路径末尾的斜杠
- --suffix=后缀:自行指定备份文件的后缀
- --target-directory=目录:将所有源参数复制到指定目录
- --no-target-directory:将目标视为普通文件而非目录
- --update:只在源文件比目标文件新或目标文件不存在时才进行复制
- --verbose:显示详细步骤
- --one-file-system:不跨越文件系统进行操作
- --context[=CTX]:设置SELinux或SMACK安全上下文
2.9、mv命令
mv [parameter1(Linux路径)] [parameter2(Linux路径)]
mv命令的作用:
移动文件或文件夹(从parameter1移动到parameter2)
mv命令的可用选项:
- -i:进行交互式操作。如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否覆盖。用户可以输入'y'进行覆盖,输入'n'则不覆盖,以避免误覆盖文件
- -f:禁止交互式操作。在mv操作要覆盖某已有的目标文件或目录时不给任何指示,默认覆盖
- -b:覆盖文件前先对其进行备份
- -S:不理会通常的备份后缀
- -u:移动或覆盖目的文件时,若日期比目的文件旧,且目的文件已经存在,则不执行覆盖文件命令
2.10、rm命令
rm [-options] [parameter1(Linux路径)] [parameter2(Linux路径)]…… ,路径参数可有多个,至少有一个,多个表示多个文件,选项可不填,默认删除文件
rm命令的作用:
删除文件、文件夹
rm命令的可用选项:
- -f:强制删除,忽略不存在的文件,不提示。使用此选项可以强制删除文件,即使文件不存在也不会显示错误消息
- -r:递归删除,用于删除目录及其内容。当需要删除一个目录及其所有子目录和文件时,可以使用此选项
-------------------------------------------------------------------------------------------------------------------------
- -i:交互式删除,每个文件删除前都会询问用户。此选项使得删除操作更加安全,因为会在删除每个文件前提示用户确认
- -v:显示详细信息,列出被删除的文件。使用此选项可以在删除文件时查看详细的输出,了解哪些文件被删除
注:该命令为删除Linux系统的根目录(不要轻易尝试)
rm -rf /
2.11、which命令
which [-options] [command],选项可不填,默认为查找命令的目录
which命令的作用:
查看Linux命令的程序文件存放的位置
which命令的可用选项:
- -a:列出所有与给定命令或文件名匹配的可执行文件的位置
- -n:指定文件名长度,必须大于或等于文件中最长的文件名
- -p:显示所有符合条件的路径名
- -s:静默模式,只返回退出状态
2.12、find命令
1、find 起始路径 -name “搜索文件名”以文件名方式查找
2、find 起始路径 -size +|-n[kMG]以大小方式查找
- +、-表示大于和小于
- n表示大小值
- kMG表示单位大小,k(小写)表示kb,M表示Mb,G表示Gb
find命令的作用:
查找文件
find命令的可用选项:
- -name pattern:根据文件名进行匹配搜索
- -size [+|-]size:根据文件大小进行搜索,可以使用
+
表示大于,-
表示小于-------------------------------------------------------------------------------------------------------------------------
- -type type:按照文件类型进行搜索,如f表示普通文件,d表示目录等
- `-user name`:搜索指定所有者的文件
- -exec command {} \\;:对搜索结果执行指定的命令
2.13、grep命令
grep [-options] 关键字 文件路径,选项可不填,默认筛选关键字
grep命令的作用:
筛选出文件中的关键字
grep命令的可用选项:
- -n:显示匹配行及行号
-------------------------------------------------------------------------------------------------------------------------
- -c:只输出匹配行的计数
- -I:不区分大 小写(只适用于单字符)
- -h:查询多文件时不显示文件名
- -l:查询多文件时只输出包含匹配字符的文件名
- -s:不显示不存在或无匹配文本的错误信息
- -v:显示不包含匹配文本的所有行
2.14、wc命令
wc [-options] 文件路径,选项可不填,默认为-cmlw
wc命令的作用:
统计文本内各参数
wc命令的可用选项:
- -l:用于统计文件的行数
- -w:用于统计文件的字数
- -m:用于统计文件的字符数
- -c:用于统计文件的字节数
-------------------------------------------------------------------------------------------------------------------------
- -L:用于输出最长行的内容
- -C:用于输出以字节为单位的文件大小,但这个选项在某些版本的wc命令中可能不可用
2.15、echo命令
echo [-n] 输出内容,选项可不填.,默认输出内容
echo命令的作用:
输出
echo的可用选项:
- -n:输出内容后不换行
2.16、tail命令
tail [-options] Linux路径
tail命令的作用:
查看文件尾部的内容
tail命令的可用选项:
- -n:用于指定显示文件的最后n行,默认为10行
- -f:实时追踪文件的变化并输出新增的内容,这在查看日志文件时特别有用
-------------------------------------------------------------------------------------------------------------------------
- -q:不显示文件名
- -s:设置输出的间隔时间(秒)
- -c:以字节为单位显示指定范围的内容
2.17、vi/vim命令(编辑器)
vi/vim Linux路径
vi/vim命令的作用:
命令行下对文本文件进行编辑,vim是vi的加强版本,兼容所以vi指令,不仅能编辑文本,还具有Shell程序编辑的功能,可以以不同颜色的字体辨别语法的正确性
- vi/vim的文件路径若不存在,则此命令会用于编辑新文件
- 如果文件存在,则此命令用于编辑已有文件
vi/vim命令的模式:
- 命令模式(command mode):在此模式下所有的按键编辑器都理解为命令,以命令驱动执行不同的功能
- 输入模式(insert mode):在此模式下可以对文件内容进行自由编辑
- 底线命令模式(last line mode):通常用于对文件的保存和退出
命令模式:
- i :在当前光标位置进入输入模式
- a :在当前光标位置之后进入输入模式
- I :在当前行的开头进入输入模式
- A :在当前行的结尾进入输入模式
- o :在当前光标下一行进入输入模式
- O :在当前光标上一行进入输入模式
- ESC :在任何情况下都可以通过ESC回到命令模式
输入模式: 此模式下进行文本的编辑
底线命令模式:
- :wq 保存并退出
- :q 仅退出
- :q! 强制退出
- :w 仅保存
- :set nu 显示行号
- :set paste 设置粘贴模式
2.18、chmod命令
chmod [-options] 权限 文件,选项可不选,默认为修改文件权限
chmod命令的作用:
修改文件/文件夹的权限
chmod命令的可用选项:
- -R:递归处理,将指令目录下的所有文件及子目录一并处理
-------------------------------------------------------------------------------------------------------------------------
- -c:当文件权限确实已经更改时,才显示其更改动作
- -f :抑制大多数错误消息
- -v:显示权限变更的详细资料
例:将文件test权限修改为rwxr-x--x
chmod u=rwx,g=rx,o=x test
权限与数字对应关系为:r=4,w=2,x=1
chmod 751 test
注:chmod命令只有文件/文件夹的所属用户和root用户可以执行,因此一般在root用户下修改权限
2.19、chown命令
chown [-options] [用户][:][用户组] 文件或文件夹,选项可不填,默认修改文件的所属用户、用户组
chown命令的作用:
修改文件或文件夹的所属用户或用户组
chown命令的可用选项:
- -R:递归地更改目录及其下面的所有文件和子目录的所有权。
-------------------------------------------------------------------------------------------------------------------------
- -v:显示详细的操作信息,例如成功更改的文件或目录。
- -c:只在更改了的情况下输出提示信息。
- -f:静默模式,不显示错误信息。
注:chown命令只适用于root用户执行
2.20、用户及用户组相关命令
注:以下命令均在root用户下执行
创建用户组:groupadd 用户组名
删除用户组:groupdel 用户组名
创建用户:group [-g/-d] 用户名
- -g:指定用户的组,不添加-g则创建同名组并自动加入,指定-g需要已经存在,如已存在同名组,则必须使用-g
- -d:指定用户的home路径,不指定则默认为:/home/(username)
删除用户:user得了 [-r] 用户名,若不指定-r,则在删除用户时会保留home目录
查看用户所属组:id [用户名],若不指定用户,则默认查询当前用户
修改用户所属组:username -aG 用户组 用户名
3、Linux常用符号及其含义
符号 | 含义 |
. | 当前目录 |
.. | 上一级目录 |
~ | 表示home目录 |
* | 通配符 *test:表示匹配以test开头的内容 test*:表示匹配以test结尾的内容 *test*:表示匹配任何包含test的内容 |
| | 管道符:将左边的结果作为右边命令的输入 |
`` | 反引号:将内部内容作为指令执行 |
> | 重定向符:覆写 |
>> | 重定向符:追加 |
$ | 取变量的值 |
4、Linux常用快捷键/快捷命令
快捷键/命令 | 含义 |
Ctrl + c | 强制停止:用于命令输入错误或运行时强制停止 |
Ctrl + d | 退出当前账户的登录或退出特定程序的专属页面 |
history | 查看历史输入过的命令 |
!(前缀) | 自动执行上一次匹配前缀的命令 |
Ctrl + r | 输入内容以匹配历史命令,回车以直接执行,键盘左右键以修改历史命令 |
Ctrl + a | 光标移动至命令开头 |
Ctrl + e | 光标移动至命令结尾 |
Ctrl + 键盘左键 | 光标向左跳一个单词 |
Ctrl + 键盘右键 | 光标向右跳一个单词 |
Ctrl + l | 清空终端内容 |
clear | 清空终端内容 |
5、软件应用
5.1、软件安装
5.1.1、在CentOS中安装软件
yum [-y] [install | remove | search] 软件名称,yum命令需要root权限,需要联网
- 选项:-y,自动确认,无需手动确认安装或卸载过程
- install:安装
- remove:卸载
- search:搜索
注:目前官方不再支持维护CentOS7,yum源需要替换为国内的yum源
换源具体操作:https://blog.csdn.net/2301_77416380/article/details/140686229?spm=1001.2014.3001.5501
5.1.2、在Ubuntu中安装软件
apt [-y] [install | remove | search] 软件名称,apt命令需要root权限,需要联网
- 选项:-y,自动确认,无需手动确认安装或卸载过程
- install:安装
- remove:卸载
- search:搜索
5.2、软件的启动和关闭
5.2.1使用systemctl命令进行软件(服务)的启动和关闭
systemctl start | stop | status | enable | disable 服务名
- start:启动
- stop:关闭
- status:查看运行状态
- enable:开启开机自启动
- disable:关闭开机自启动
常见的系统服务:
- NetworkManager,主网络服务
- network,副网络服务
- firewalld,防火墙服务
- sshd,ssh服务,远程登录服务
注:部分第三方软件也可以通过systemctl进行控制,systemctl一般在root权限下执行
6、Linux系统基础设置
6.1、软链接
ln -s 参数1 参数2,将文件/文件夹链接在其他位置,类似于Windows系统中的快捷方式
- -s:创建软链接
- 参数1:被链接的文件或文件夹
- 参数2:要链接去的目的地
6.2、日期和时区
6.2.1、使用data命令查看时间日期
date [-d] [+格式化字符串] ,选项可不填默认以系统当前时区显示时间
- -d:按照给定的字符串显示日期,一般用于日期计算
格式化字符串:
- %Y:年份
- %y:年份(显示后两位)
- %m:月份
- %d:日
- %H:小时
- %M:分钟
- %S:秒
- %s:时间戳(1970-01-01-0:00:00到现在经过的秒数)
选项-d用于日期计算,例如:计算7天后的时间
date -d "+7 day" "+%Y %m %d"
6.2.2、修改Linux时区
修改时区需要使用root权限,执行如下命令
sudo rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
6.2.3、通过ntp程序校准Linux系统时间
1、通过ntp程序自动校准时间(需要安装并自启动ntpd服务)
yum -y install ntp
systemctl start ntpd
systemctl enable ntpd
2、通过阿里云手动校准时间
ntpdate -u ntp.aliyun.com
6.3、IP地址与主机名
6.3.1、IP地址
- IP地址一般有IPV4和IPV6两个版本
- IPV4的地址格式为a.b.c.d,其中abcd均为0~255的数字
- 可以通过ifconfig查看电脑的IP地址
- 127.0.0.1,该IP一般用于指代本机
- 0.0.0.0可以用于指代本机,可以在端口中用于确定绑定关系,在部分IP地址限制中,表示所有IP的意思
6.3.2、主机名
- 通过hostname命令查看当前主机名
- 通过hostnamectl set-hostname 主机名,修改主机名(需要root权限)
6.3.3、域名解析
-
域名对应IP地址(映射关系)
-
访问流程:
-
先查看本机记录
-
再联网在DNS服务器中查找
-
- 可在本机记录中自行配置域名与IP的映射
6.3.4、虚拟机配置固定IP
1、在VMware中选中需要配置的虚拟机,进入虚拟网络编辑器
2、更改网络为VMnet8,并配置子网、子网掩码、网关
3、打开虚拟机进行网卡配置:进入终端用vim编辑器打开配置文件
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33
4、将文件中BOOTPROTO=“dhcp”改为BOOTPROTO=“static”
5、在文件末尾添加以下内容:
ZONE=public #此行有则不添加
IPADDR="192.168.88.xxx" #xxx为0~254之间的数,即配置完成后的IP地址
NETMASK="255.255.255.0"
GATWAY="192.168.88.2"
DNS1="192.168.88.2"
6.4、网络传输
6.4.1、下载和网络请求
ping [-c num] IP或主机名,用于检查网络服务器是否可联通选项“-c num”为检查的次数,如果不填,则默认无限次持续检查
wget [-b] url,wget为非交互式的文件下载器,选项“-b”为后台下载,将日志写入到当前工作目录的wget-log文件中,URL为下载链接
curl [-O] url,用于下载文件或获取信息,选项“-O”为下载,URL为要发起请求的网址
6.4.2、端口
端口是指计算机与外部交互的出入口,一般分为物理端口和虚拟端口,IP只能确定计算机,通过端口才能锁定需要交互的程序
- 物理端口:HDMI、USB、VGA、DP等
- 虚拟端口:操作系统和外部交互的出入口
端口的划分:
- 公认端口:1~1023,一般用于系统内置或者知名的软件绑定使用
- 注册端口:1024~49151,用于松散绑定使用,即用户可自定义
- 动态端口:49151~65535,用于临时使用,用于多出口
端口占用情况查看:
- nmap IP,查看指定IP的对外暴露端口
- netstat -anp |grep 端口号,查看本机指定端口的占用情况
6.5、进程管理
程序运行在操作系统中,被操作系统管理,为管理运行的程序,每个程序在运行时会被操作系统注册为系统中的一个进程,每个进程会被分配一个独有的进程ID(进程号)
6.5.1、查看进程
ps [-e -f],选项“-e”为显示全部进程,“-f”为以完全格式化的形式展示信息,一般固定用法为ps -ef,若查看指定进程,可以配合管道符使用ps -ef |grep 进程信息
- UID:进程所属的用户ID
- PID:进程的进程号ID
- PPID:进程的父ID(启动次进程的其他进程的进程)
- C:此进程的CPU占用率(百分比)
- STIME:进程的启动时间
- TTY:启动此进程的终端序号,“?”为非终端启动
- CMD:进程对应的名称或启动路径或启动命令
6.5.2、关闭进程
kill [-9] 进程ID,选项“-9”表示强制关闭,不会向进程发送信号要求关闭
6.6、主机状态监控
6.6.1、产看系统资源占用
可以通过top命令查看CPU、内存等的使用情况,类似于Windows的任务管理器,top命令默认每五秒刷新一次,top命令分为交互式与非交互式,交互式以-b选项启动,h键调出帮助页面
内容解析:
- top:命令名称
- 20:35:37:当前系统时间
- up 10:16:启动了10小时16分钟
- 3users:3个用户登录
- load average:0.00,0.01,0.05:在1、5、15分钟的负载为0.00、0.01、0.05
- Tasks:215 total:215个进程
- 1running:1个进程正在运行
- 214sleeping:214个进程睡眠
- 0stopped:0个进程停止
- 0zombie:0个僵尸进程
本行为CPU使用率(百分比):
- 1.3us:用户CPU使用率为1.3%
- 2.7sy:系统CPU使用率为2.7%
- 0.0ni:高优先级进程占用CPU时间为0.0%
- 95.8id:空闲CPU率为95.8%
- 0.0wa:IO等待CPU占用率为0.0%
- 0.0hi:CPU硬件中断率为0.0%
- 0.2si:CPU软件中断率为0.2%
- 0.0st:强制等待占用CPU率为0.0%
- KiB Mem:物理内存
- KiB Swap:虚拟内存
- total:总量
- free:空闲
- used:使用
- buff/cache:buff和cache占用
- avail Mem:剩余可用
- PID:进程ID
- RES:进程使用物理内存,单位KB
- %CPU:进程占用CPU率
- %MEM:进程占用内存率
-------------------------------------------------------------------------------------------------------------------------
- USER:进程所属用户
- PR:进程优先级,越小优先级越高
- NI:负值表示高优先级,正值表示低优先级
- VIRT:进程使用虚拟内存,单位KB
- SHR:进程使用共享内存,单位KB
- S:进程状态(S休眠、R运行、Z僵尸进程、N负数优先级、I空闲状态)
- COMMAND:进程的命令或名称或程序文件路径
6.6.2、磁盘信息监控
- df [-h],查看磁盘使用情况,选项“-h”以更加人性化的单位显示信息
- iostat [-x] [num1] [num2],查看CPU、磁盘相关信息,选项“-x”为显示更多信息,num1为刷新间隔,num2为刷新次数
6.6.3、网络状态监控
sar -n DEV num1 num2,查看网络的相关统计,选项“-n”查看网络,DEV表示查看网络接口,num1为刷新间隔,num2为刷新次数(不填则为无限)
信息解读:
- IFACE:本地网卡接口的名称
- rxpck/s:每秒钟接受的数据包
- txpck/s:每秒钟发送的数据包
- rxKB/S:每秒钟接受的数据包大小,单位KB
- tpKB/S:每秒钟发送的数据包大小,单位KB
- rxcmp/s:每秒钟接受的压缩数据包
- txcmp/s:每秒钟发送的压缩包
- rxmcst/s:每秒钟接收的多播数据包
注:sar命令非常复杂,此处仅做网络统计使用的介绍
6.7、环境变量
环境变量是一种键值型结构,在操作系统运行时,记录一些关键信息,以辅助系统运行。在Linux中可以用env命令查看当前系统中记录的环境变量
6.7.1、环境变量PATH
PATH记录了系统执行任何命令的搜索路径,借助PATH,无论当前工作目录是什么,都可以执行命令
6.7.2、自设环境变量
- 临时设置:export 变量名=变量值
- 永久生效
- 针对当前用户生效,在当前用户的“~/.bashrc”中进行配置
- 针对所有用户生效,在系统的“/etc/profile”中进行配置
- 通过命令source 配置文件,使配置立即生效,或重启系统生效
- 配置文件时在文件末尾添加export 变量名=变量值即可
6.7.3、自定义环境变量PATH
示例:
- 在当前HOME目录内创建文件夹myenv在文件夹内创建文件xxx
- 通过vim编辑xxx:echo 这是一个自定义PATH
- 修改PATH的值:通过vim /etc/profile,在文件末尾添加export PATH=$PATH:/home/用户名/myenv
- 通过source /etc/profile使变量生效
6.8、上传、下载、压缩与解压缩
6.8.1、虚拟机的上传和下载
- UI操作:从Windows系统直接拖动文件至FinalShell或从FinalShell中选中文件右键列表下载至Windows
- 命令操作: 使用yum -y install lrzsz安装服务
- rz,直接选中上传
- sz 文件路径,下载文件(文件自动下载到桌面的fsdownload中)
6.8.2、使用tar命令压缩或解压tar和gzip
在Linux中有三种常见压缩格式:tar、gzip、zip,其中tar只起到封装作用,并不能有效减少文件大小
tar [-option] parameter1 [......] [parameter*n]
- -c:创建压缩文件,用于压缩模式
- -v:显示压缩、解压过程,用于查看进度
- -x:解压模式
- -f:要创建或要解压的文件,-f必须在所有选项中位于最后一个
- -z:gzip模式,不选则为普通的tarball模式
- -C:选择解压的目的地,用于解压模式
tar的常用组合:
tar -cvf test.tar 1.txt 2.txt #将1.txt和2.txt压缩到test.tar文件内
tar -zcvf test.tar.gz 1.txt 2.txt #将1.txt和2.txt使用gzip模式压缩到test.tar.gz文件内
tar -xvf test.tar #将test.tar文件解压到当前目录
tar -xvf test.tar -C /home/xxx #将test.tar文件解压到指定的/home/xxx目录内
tar -zxvf test.tar.gz -C /home/xxx #将test.tar.gz文件解压到指定的/home/xxx目录内
注:-z选项一般位于选项第一个,-f位于最后一个,-C与其他选项分开,后接目录位置,选项-c与-x为压缩模式和解压模式,为冲突选项,不可同时使用
6.8.3、使用zip命令压缩或解压zip
zip [-r] parameter1 parameter2 ... parameter*n,将parameter2到parameter*n的文件压缩到parameter1内,选项-r为被压缩的文件包含文件夹时使用
zip test.zip 1.txt 2.txt #将1.txt和2.txt压缩到test.zip文件内
zip -r test.zip test 1.txt #将test文件夹和1.txt压缩到test.zip文件内
unzip [-d] parameter,解压缩文件,选项-d为解压缩到指定目录内
unzip test.zip #将test.zip解压到当前目录
unzip test.zip -d /home/xxx #将test.zip解压到指定的/home/xxx目录内
注:以上所有解压命令在指定目录时一定要确定目录是否冲突,若冲突则会发生覆写,容易产生误操作
标签:选项,文件,基础,命令,Linux,test,目录 From: https://blog.csdn.net/2301_77416380/article/details/140502127