【Linux】基础学习篇四:实用操作(持续更新)

 个人主页:godspeed_lucip
 系列专栏:Linux学习


 目录

Linux实用操作

1. 各类小技巧

1.1  ctrl + c 强制停止

1.2  ctrl + d 退出或登出

1.3  历史命令搜索

1.3.1  history查看历史输入的命令

1.3.2  !+命令前缀,执行匹配的命令

1.3.3  ctrl + r,匹配命令

1.4  光标移动快捷键

1.5  清屏

2. 软件安装

2.1  首先确认自己的linux可以联网

2.2  yum命令

2.2.1  CentOS通过yum命令安装wget

2.2.2  Ubuntu系统通过apt安装

3. systemctl

3.1  控制系统服务

3.2  控制第三方服务

4. 软链接

5. 日期、时区

5.1  使用date命令查看时间

5.2  date命令进行日期加减

5.3  修改Linux时区

5.4  ntp程序自动校准时间

6. IP地址、主机名

6.1  几个特殊的IP地址

6.2  在linux中修改主机名

6.3  域名解析

6.4  配制主机名映射

6.5  配置linux固定IP地址

7. 网络传输

7.1  ping命令

7.2  wget命令

7.3  curl命令

7.4  端口

7.4.1  端口概述

7.4.2  查看端口占用

8. 进程管理

8.1  查看进程

8.2  查看指定进程

8.3  关闭进程

9. 主机状态

9.1  查看系统资源占用

9.2  top命令内容详解

9.3  top命令选项

9.4  top交互式设置

9.5  磁盘信息监控

9.5.1  DF命令

9.5.2  iostat命令

9.6  网络状态监控

10. 环境变量

10.1  概述

10.2  $命令

10.3  自行设置环境变量

10.3.1  临时有效

10.3.2  永久有效

10.4  自定义环境变量PATH

11. 上传、下载

11.1  通过finalShell工具

11.2  通过rz、sz命令

12. 压缩、解压

12.1  tar命令

12.2  tar命令压缩

12.3  tar解压

12.4  zip命令压缩文件

12.5  zip命令解压缩文件

13. 总结


Linux实用操作

1. 各类小技巧

1.1  ctrl + c 强制停止

Linux某些程序的运行,如果想要强制停止它,可以使用快捷键ctrl + c

命令输入错误,也可以通过快捷键ctrl + c,退出当前输入,重新输入

1.2  ctrl + d 退出或登出

可以通过快捷键:ctrl + d,退出账户的登录

【Linux】基础学习篇四:实用操作(持续更新)_第1张图片

或者退出某些特定程序的专属页面

【Linux】基础学习篇四:实用操作(持续更新)_第2张图片

1.3  历史命令搜索

1.3.1  history查看历史输入的命令

【Linux】基础学习篇四:实用操作(持续更新)_第3张图片

 搭配grep命令可以实现查找某一类命令

1.3.2  !+命令前缀,执行匹配的命令

例如:最近的以p开头的命令是python,那么直接输入!p就会执行python。

则:

【Linux】基础学习篇四:实用操作(持续更新)_第4张图片

1.3.3  ctrl + r,匹配命令

例如,输入test,匹配与test有关的命令如下。左右键移动可以修改匹配的命令

1.4  光标移动快捷键

  • ctrl + a,跳到命令开头
  • ctrl + e,跳到命令结尾
  • ctrl + 键盘左键,向左跳一个单词
  • ctrl + 键盘右键,向右跳一个单词

1.5  清屏

  • 通过快捷键ctrl + l,可以清空终端内容
  • 或通过命令clear得到同样效果

2. 软件安装

2.1  首先确认自己的linux可以联网

输入命令:

ping www.baidu.com

假如出现以下结果,则不可以联网。

假如出现以下结果,则可以联网。

【Linux】基础学习篇四:实用操作(持续更新)_第5张图片

假如不可以联网,参考以下博客:
虚拟机中的Linux系统如何联网?_虚拟机linux怎么联网-CSDN博客

注意:使用无线网,不要使用有线网。并在”服务“中把VMWare NAT打开,如图

【Linux】基础学习篇四:实用操作(持续更新)_第6张图片

2.2  yum命令

yumRPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。

yum [-y] [install | remove | search ]  软件名称

  • 选项:-y,自动确认,无需手动确认安装或卸载过程
  • install:安装
  • remove:卸载
  • search:搜索
2.2.1  CentOS通过yum命令安装wget
yum install wget

结果:

【Linux】基础学习篇四:实用操作(持续更新)_第7张图片

2.2.2  Ubuntu系统通过apt安装

前面的各类Linux命令,都是通用的。 但是软件安装,CentOS系统和Ubuntu是使用不同的包管理器。CentOS使用yum管理器,Ubuntu使用apt管理器

3. systemctl

3.1  控制系统服务

Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动、停止、开机自启

能够被systemctl管理的软件,一般也称之为:服务

语法:

systemctl start | stop | status | enable | disable 服务名
//start 启动
//stop 关闭
//status 查看状态
//enable 开启开机自启
//disable 关闭开机自启

系统内置的服务比较多,比如:

  • NetworkManager,主网络服务
  • network,副网络服务
  • firewalld,防火墙服务
  • sshdssh服务(FinalShell远程登录Linux使用的就是这个服务)

3.2  控制第三方服务

除了内置的服务以外,部分第三方软件安装后也可以以systemctl进行控制。

yum install -y ntp //安装ntp软件
//这个软件会同步系统时间

ntp会自动注册为ntpd服务,可以通过ntpd服务名,配合systemctl进行控制

yum install -y httpd //安装apache服务器软件

可以通过httpd服务名,配合systemctl进行控制

部分软件安装后没有自动集成到systemctl中,我们可以手动添加。

这部分内容在后续详细讲解。

4. 软链接

在系统中创建软链接,可以将文件、文件夹链接到其它位置。

类似Windows系统中的《快捷方式》

语法:

ln -s 参数1 参数2
-s 选项,创建软连接
参数 1 :被链接的文件或文件夹
参数 2 :要链接去的目的地

注意:软链接不需要提前创建文件或者文件夹

例如:

ln -s /etc/yum.conf ~/yum.conf
// 将/etc/yum.conf的文件链接到home目录下的yum.conf快捷方式

例如:

ln -s /etc/yum ~/yum
// 将/etc/yum文件夹链接到 ~/yum的文件夹

【Linux】基础学习篇四:实用操作(持续更新)_第8张图片

【Linux】基础学习篇四:实用操作(持续更新)_第9张图片

5. 日期、时区

5.1  使用date命令查看时间

通过date命令可以在命令行中查看系统的时间

语法:

date [-d] [+格式化字符串]
  • d 按照给定的字符串显示日期,一般用于日期计算
  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式
  1. %Y   年
  2. %y   年份后两位数字 (00..99)
  3. %m   月份 (01..12)
  4. %d   日 (01..31)
  5. %H   小时 (00..23)
  6. %M   分钟 (00..59)
  7. %S   秒 (00..60)​​​​​​​
  8. %s   自 1970-01-01 00:00:00 UTC 到现在的秒数

 例如:

1、直接输入date,就可以看到时间

【Linux】基础学习篇四:实用操作(持续更新)_第10张图片

2、使用格式化字符串

【Linux】基础学习篇四:实用操作(持续更新)_第11张图片

3、显示小时和秒

5.2  date命令进行日期加减

  • -d选项,可以按照给定的字符串显示日期,一般用于日期计算
  • 其中支持的时间标记为:
  1. year
  2. month
  3. day
  4. hour小时
  5. minute分钟
  6. second
  • ​​​​​​​-d选项可以和 格式化字符串配合一起使用

 例如:

date -d "+1 day" +%Y%m%d 显示后一天的日期
date -d "-1 day" +Y%m%d 显示前一天的日期
date -d "-1 month" +%Y%m%d 显示上一月的日期
date -d "+1 month" +%Y%m%d 显示下一月的日期
date -d "-1 year" +%Y%m%d 显示前一年的日期
date -d "+l year" +%YXm%d 显示下一年的日期

【Linux】基础学习篇四:实用操作(持续更新)_第12张图片

5.3  修改Linux时区

系统默认时区非中国的东八区。于是显示的时间不是北京时间。

使用root权限,执行如下命令,修改时区为东八区时区。并将/usr/share/zoneinfo/Asia/Shanghai文件链接为localtime文件即可

rm -f /etc/localtime
//将系统自带的localtime文件删除

ln -s /usr/etc/share/zoneinfo/Asia/Shanghai /etc/localtime
//将/usr/share/zoneinfo/Asia/Shanghai文件链接为localtime文件

5.4  ntp程序自动校准时间

我们可以通过ntp程序自动校准系统时间

ntpd启动后会定期的帮助我们联网校准系统的时间

//安装ntp
yum -y install ntp

//启动并设置开机自启
//ntp会自动注册成为系统服务:ntpd
systemctl start ntpd
systemctl enable ntpd

也可以手动校准(root权限):

ntpdate -u ntp.aliyun.com
//通过阿里云提供的服务网址配合ntpdate(安装ntp后会附带这个命令)命令自动校准

6. IP地址、主机名

每一台联网的电脑都会有一个地址,用于和其它计算机进行通讯

IP地址主要有2个版本,V4版本和V6版本(V6很少用,课程暂不涉及)

IPv4版本的地址格式是:a.b.c.d,其中abcd表示0~255的数字,如192.168.88.101就是一个标准的IP地址

可以通过命令:ifconfig,查看本机的ip地址,如无法使用ifconfig命令,可以安装:yum -y install net-tools。例如:

【Linux】基础学习篇四:实用操作(持续更新)_第13张图片

6.1  几个特殊的IP地址

除了标准的IP地址以外,还有几个特殊的IP地址需要我们了解:

  • 127.0.0.1,这个IP地址用于指代本机​​​​​​
  • 0.0.0.0,特殊IP地址
  1. 可以用于指代本机
  2. 可以在端口绑定中用来确定绑定关系​​​​​​​
  3. 在一些IP地址限制中,表示所有IP的意思,如放行规则设置为0.0.0.0,表示允许任意IP访问

6.2  在linux中修改主机名

//可以使用命令:hostname查看主机名
hostname

//可以使用命令:hostnamectl set-hostname 主机名,修改主机名(需root)​​​​​​​
hostnamectl set-hostname godspeed

//即可看到主机名已经正确显示

 【Linux】基础学习篇四:实用操作(持续更新)_第14张图片

重新登录即可看到修改

6.3  域名解析

根据域名访问IP地址的流程如下:

【Linux】基础学习篇四:实用操作(持续更新)_第15张图片

也就是:

先查看本机的记录(私人地址本)
Windows 看:C:\Windows\System32\drivers\etc \hosts
Linux 看: / etc /hosts
再联网去DNS服务器(如 114.114.114.114 8.8.8.8 等)询问

6.4  配制主机名映射

1、记录ifconfig命令下显示的linuxIP地址:

【Linux】基础学习篇四:实用操作(持续更新)_第16张图片

2、以管理员模式运行记事本

【Linux】基础学习篇四:实用操作(持续更新)_第17张图片

3、打开window下的文件:C:\Windows\System32\drivers\etc\host。添加一行:192.168.221.129 godspeed

【Linux】基础学习篇四:实用操作(持续更新)_第18张图片

【Linux】基础学习篇四:实用操作(持续更新)_第19张图片

4、打开finalshell,如下配置:

【Linux】基础学习篇四:实用操作(持续更新)_第20张图片

 可以看到连接成功:

【Linux】基础学习篇四:实用操作(持续更新)_第21张图片

6.5  配置linux固定IP地址

如果不配置固定IP,可能会使虚拟机IP在每次重启之后都变化,进而可能导致不便。

1、打开VMWare,点击编辑,进入虚拟网络编辑器。选择VWNet8.

【Linux】基础学习篇四:实用操作(持续更新)_第22张图片

 【Linux】基础学习篇四:实用操作(持续更新)_第23张图片

2、打开Linux中的这个文件,添加以下内容

vim /etc/sysconfig/network-scripts/ifcfg-ens33

【Linux】基础学习篇四:实用操作(持续更新)_第24张图片

3、记得同步修改前面介绍的windows中host文件

4、重启网卡

systemctl restart network 

5、重启虚拟机,输入ifconfig查看

【Linux】基础学习篇四:实用操作(持续更新)_第25张图片

7. 网络传输

7.1  ping命令

可以通过ping命令,检查指定的网络服务器是否是可联通状态

语法:

ping [-c num] IP或主机名
  • 选项:-c,检查的次数,不使用-c选项,将无限次数持续检查
  • 参数:ip或主机名,被检查的服务器的ip地址或主机名地址

示例1:

//检查到baidu.com是否联通
ping baidu.com

不使用-c参数,则会一直无限检查下去。

结果表示联通,延迟50ms左右

【Linux】基础学习篇四:实用操作(持续更新)_第26张图片

示例2:检查到39.156.66.10是否联通,并检查3

//检查到39.156.66.10是否联通,并检查3次
ping -c 3 39.156.66.10

【Linux】基础学习篇四:实用操作(持续更新)_第27张图片

7.2  wget命令

wget是非交互式的文件下载器,可以在命令行内下载网络文件

语法:

wget [-b] url
  • 选项:-b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件
  • 参数:url,下载链接

示例1:​​​​​

//下载apache-hadoop 3.3.0版本:wget 
wget http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

【Linux】基础学习篇四:实用操作(持续更新)_第28张图片

示例2:

//在后台下载
wget -b http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

//通过tail命令可以监控后台下载进度
tail -f wget-log

注意:无论下载是否完成,都会生成要下载的文件,如果下载未完成,请及时清理未完成的不可用文件。

7.3  curl命令

curl可以发送http网络请求,可用于:下载文件、获取信息等

语法:

curl [-0] url

  • 选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件
  • 参数:url,要发起请求的网络地址

示例:

//向cip.cc发起网络请求,可以获得我们的IP地址
curl cip.cc
//通过curl下载hadoop-3.3.0安装包:
curl http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
//通过curl下载hadoop-3.3.0安装包
curl -O http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz 

7.4  端口

7.4.1  端口概述

Linux系统可以支持65535个端口,这6万多个端口分为3类进行使用:

  • 公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HTTPS服务的443端口非特殊需要,不要占用这个范围的端口
  • 注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序\服务
  • 动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用。

【Linux】基础学习篇四:实用操作(持续更新)_第29张图片

如图中,计算机A的微信连接计算机B的微信,A使用的50001即动态端口,临时找一个端口作为出口

计算机B的微信使用端口5678,即注册端口,长期绑定此端口等待别人连接

PS:上述微信的端口仅为演示,具体微信的端口使用非图中示意

7.4.2  查看端口占用

可以通过nmap命令去查看端口的占用情况。首先安装nmapyum -y install nmap

语法:

nmap 被查看的IP地址

【Linux】基础学习篇四:实用操作(持续更新)_第30张图片

可以看到,有5个端口被使用

也可以通过netstat命令,查看指定端口的占用情况。首先安装netstat:yum -y install net-tools

语法:

netstat -anp | grep 端口号

8. 进程管理

8.1  查看进程

可以通过ps命令查看Linux系统中的进程信息

语法:

ps [-e -f]

选项:-e,显示出全部的进程

选项:-f,以完全格式化的形式展示信息(展示全部信息)

一般来说,固定用法就是: ps -ef 列出全部进程的全部信息

【Linux】基础学习篇四:实用操作(持续更新)_第31张图片

从左到右分别是:

UID:进程所属的用户ID
PID:进程的进程号ID
PPID:进程的父ID(启动此进程的其它进程)
C:此进程的CPU占用率(百分比)
STIME:进程的启动时间
TTY:启动此进程的终端序号,如显示?,表示非终端启动
TIME:进程占用CPU的时间
CMD:进程对应的名称或启动路径或启动命令

8.2  查看指定进程

使用grep命令即可。

例如:

//找到tail进程的信息
ps -ef | grep tail

8.3  关闭进程

Windows系统中,可以通过任务管理器选择进程后,点击结束进程从而关闭它。

同样,在Linux中,可以通过kill命令关闭进程。

语法:

kill [-9] 进程ID

选项:

-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。

例如,杀死一个正在运行的tail进程:

【Linux】基础学习篇四:实用操作(持续更新)_第32张图片

9. 主机状态

9.1  查看系统资源占用

可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器

默认5秒刷新一次,语法:直接输入top即可,按qctrl + c退出

【Linux】基础学习篇四:实用操作(持续更新)_第33张图片

ctrl+C退出

9.2  top命令内容详解

【Linux】基础学习篇四:实用操作(持续更新)_第34张图片

PID :进程 id
USER :进程所属用户
PR :进程优先级,越小越高
NI :负值表示高优先级,正表示低优先级
VIRT :进程使用虚拟内存,单位 KB
RES :进程使用物理内存,单位 KB
SHR :进程使用共享内存,单位 KB
S :进程状态( S 休眠, R 运行, Z 僵死状态, N 负数优先级, I 空闲状态)
%CPU :进程占用 CPU
%MEM :进程占用内存率
TIME+ :进程使用 CPU 时间总计,单位 10 毫秒
COMMAND :进程的命令或名称或程序文件路径

9.3  top命令选项

-р:只显示某个进程的信息

-d:设置刷新时间,默认是5s

-c:显示产生进程的完整命令,默认是进程名

-n:指定刷新次数,比如 top —n 3,刷新输出3次后退出

-b:以非交互非全屏模式运行,以批次的方式执行top,一般配合—n指定输出几次统计信息,将输出重定向到指定文件,比如 top -b -n 3 > /tmp/top.tmp

-i:不显示任何闲置(idle)或无用(zombie) 的进程

-u:查找特定用户启动的进程

例如:

//只显示13715进程的信息
top -p 13715

//设置top最多刷新3次,默认无限刷新
top -n 3

【Linux】基础学习篇四:实用操作(持续更新)_第35张图片

9.4  top交互式设置

运行top命令,按下以下按键可以交互:

按下h键,会显示帮助画面c键

按下c键,会显示产生进程的完整命令,等同于—c参数,再次按下c键,变为默认显示f键

按下f键,可以选择需要展示的项目M键

按下M键,根据驻留内存大小(RES)排序P键

按下P键,根据CPU使用百分比大小进行排序T键

按下T键,根据时间/累计时间进行排序E键

按下E键,切换顶部内存显示单位e键

按下e键,切换进程内存显示单位1键

按下1键,切换显示平均负载和启动时间信息。i键

按下i键,不显示闲置或无用的进程,等同于—i参数,再次按下,变为默认显示t键

按下t键,切换显示CPU状态信息m键

按下m键,切换显示内存信息

9.5  磁盘信息监控

9.5.1  DF命令

使用df命令,可以查看硬盘的使用情况

语法:

df [-h]
选项:-h,以更加人性化的单位显示

【Linux】基础学习篇四:实用操作(持续更新)_第36张图片

9.5.2  iostat命令

可以使用iostat查看CPU、磁盘的相关信息

语法:

iostat [-x] [num1] [num2]
  • 选项:-x,显示更多信息
  • num1:数字,刷新间隔,num2:数字,刷新几次

使用iostat-x选项,可以显示更多信息

【Linux】基础学习篇四:实用操作(持续更新)_第37张图片

  • ​​​​​​​rrqm/s:  每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge, 提高IO利用率, 避免重复调用);
  • wrqm/s:  每秒这个设备相关的写入请求有多少被Merge了。
  • rsec/s:  每秒读取的扇区数;sectors
  • wsec/:  每秒写入的扇区数。
  • rKB/s:  每秒发送到设备的读取请求数
  • wKB/s:  每秒发送到设备的写入请求数
  • avgrq-sz   平均请求扇区的大小
  • avgqu-sz   平均请求队列的长度。毫无疑问,队列长度越短越好。   
  • await:    每一个IO请求的处理的平均时间(单位是微秒毫秒)。
  • svctm      表示平均每次设备I/O操作的服务时间(以毫秒为单位)
  • %util:   磁盘利用率

tps:该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。"一次传输"意思是"一次I/O请求"。多个逻辑请求可能会被合并为"一次I/O请求"。"一次传输"请求的大小是未知的。

9.6  网络状态监控

可以使用sar命令查看网络的相关统计(sar命令非常复杂,这里仅简单用于统计网络)

语法:

sar -n DEV num1 num2

选项:

-n,查看网络,DEV表示查看网络接口

num1:刷新间隔(不填就查看一次结束),num2:查看次数(不填无限次数)

如图,查看2次,隔3秒刷新一次,并最终汇总平均记录

【Linux】基础学习篇四:实用操作(持续更新)_第38张图片

说明:

信息解读:

IFACE 本地网卡接口的名称
rxpck/s 每秒钟接受的数据包
txpck/s 每秒钟发送的数据包
rxKB/S 每秒钟接受的数据包大小,单位为KB
txKB/S 每秒钟发送的数据包大小,单位为KB
rxcmp/s 每秒钟接受的压缩数据包
txcmp/s 每秒钟发送的压缩包
rxmcst/s 每秒钟接收的多播数据包 

10. 环境变量

10.1  概述

环境变量是操作系统(WindowsLinuxMac)在运行的时候,记录的一些关键性信息,用以辅助系统运行。

Linux系统中执行:env命令即可查看当前系统中记录的环境变量

环境变量是一种KeyValue型结构,即名称和值,如下图:

【Linux】基础学习篇四:实用操作(持续更新)_第39张图片

如图,图中记录了:

•HOME:/home/itheima,用户的HOME路径
•USER:itheima,当前的操作用户
•PWD:当前工作路径
•......

等等一系列信息,用于辅助系统在运行的时候,从环境变量中获取关键信息

无论当前工作目录是什么,都能执行/usr/bin/cd这个程序,这个就是借助环境变量中:PATH这个项目的值来做到的。

PATH记录了系统执行任何命令的搜索路径,如上图记录了(路径之间以:隔开):

/usr/local/bin

/usr/bin

/usr/local/sbin

/usr/sbin

/home/godspeed/.local/bin

/home/godspeed/bin

当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的本体

比如执行cd命令,就从第二个目录/usr/bin中搜索到了cd命令,并执行

10.2  $命令

Linux系统中,$符号被用于取变量的值。环境变量记录的信息,除了给操作系统自己使用外,如果我们想要取用,也可以使用。

取得环境变量的值就可以通过语法:$环境变量名  来取得

比如: echo $PATH

就可以取得PATH这个环境变量的值,并通过echo语句输出出来。

又或者:

//在PATH后加上ABC并输出
echo ${PATH}ABC

当和其它内容混合在一起的时候,可以通过{}来标注取的变量是谁

10.3  自行设置环境变量

10.3.1  临时有效

Linux环境变量可以用户自行设置,其中分为:

  • 临时设置,语法:export 变量名=变量值

例如:

【Linux】基础学习篇四:实用操作(持续更新)_第40张图片

10.3.2  永久有效
  • 永久生效​​​​​​​
  1. 针对当前用户生效,配置在当前用户的:  ~/.bashrc文件中
  2. 针对所有用户生效,配置在系统的:  /etc/profile文件中
  3. 并通过语法:source 配置文件,进行立刻生效,或重新登录FinalShell生效

1、针对当前用户生效

输入命令:

vim ~/.bashrc

添加一行

【Linux】基础学习篇四:实用操作(持续更新)_第41张图片

再输入命令,使命令生效:

source ~/.bashrc

接着输入:

echo $MYNAME

可以得到:

【Linux】基础学习篇四:实用操作(持续更新)_第42张图片

2、针对所有用户生效

输入命令:

vim /etc/profile

 加入这一行:

【Linux】基础学习篇四:实用操作(持续更新)_第43张图片

3、输入命令:source /etc/profile

4、验证:

【Linux】基础学习篇四:实用操作(持续更新)_第44张图片

10.4  自定义环境变量PATH

环境变量PATH这个项目里面记录了系统执行命令的搜索路径。

这些搜索路径我们也可以自行添加到PATH中去。

例如:

  • 在当前HOME目录内创建文件夹,myenv,在文件夹内创建文件godspeed_test。赋予其执行权限
  • 通过vim编辑器,在godspeed_test文件内填入:echo "godspeed's test info"

完成上述操作后,随意切换工作目录,执行mkhaha命令尝试一下,会发现无法执行

之后,我们修改PATH的值

  • export PATH=$PATH:/root/myenv,再次执行godspeed_test,无论在哪里都能执行了(相当于添加了一行内容到PATH变量中)
  • 或将export PATH=$PATH:/rooot/myenv,填入用户环境变量文件或系统环境变量文件中去

TIP:加入想把添加的路径删除,那么可以运行echo $PATH, 获得PATH的内容后复制其余路径,执行命令:

export PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/godspeed/.local/bin:/home/godspeed/bin

切换到其他目录,执行godspeed_test。可以看到正常输出

【Linux】基础学习篇四:实用操作(持续更新)_第45张图片

11. 上传、下载

11.1  通过finalShell工具

我们可以通过FinalShell工具,方便的和虚拟机进行数据交换。

FinalShell软件的下方窗体中,提供了Linux的文件系统视图,可以方便的:

•浏 览文件系统,找到合适的文件,右键点击下载,即可传输到本地电脑
浏览文件系统,找到合适的目录,将本地电脑的文件拓展进入,即可方便的上传数据到 Linux

【Linux】基础学习篇四:实用操作(持续更新)_第46张图片

从window系统中上传文件到虚拟机中,也只需要将文件拖入finalShell中即可。

11.2  通过rz、sz命令

当然,除了通过FinalShell的下方窗体进行文件的传输以外,也可以通过rzsz命令进行文件传输。

rzsz命令需要安装,可以通过:yum -y install lrzsz,即可安装。

rz命令,进行上传,

语法:

直接输入rz即可,会弹出文件选择框选择文件

sz命令进行下载,

​​​​​​​语法:

sz 要下载的文件

文件会自动下载到桌面的:fsdownload文件夹中。

注意,rzsz命令需要终端软件支持才可正常运行。FinalShell、SecureCRTXShell等常用终端软件均支持此操作

注意:通过finalShell进行上传下载的速度很快,但是rz和sz的速度就较慢了

12. 压缩、解压

12.1  tar命令

LinuxMac系统常用有2种压缩格式,后缀名分别是:

  • .tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装
  • .gz,也常见为.tar.gzgzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积

针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作

语法:

tar [-c -v -x -f -z -C] 参数1 参数2 ...  参数N

选项:

  • -c,创建压缩文件,用于压缩模式
  • -v,显示压缩、解压过程,用于查看进度
  • -x,解压模式
  • -f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
  • -zgzip模式,不使用-z就是普通的tarball格式
  • -C,选择解压的目的地,用于解压模式

12.2  tar命令压缩

tar的常用组合为:

//将1.txt 2.txt 3.txt 压缩到test.tar文件内
tar -cvf test.tar 1.txt 2.txt 3.txt
//将1.txt 2.txt 3.txt 压缩到test.tar.gz文件内,使用gzip模式
tar -zcvf test.tar.gz 1.txt 2.txt 3.txt

注意:

  • -z选项如果使用的话,一般处于选项位第一个
  • -f选项,必须在选项位最后一个

12.3  tar解压

常用的tar解压组合:(默认解压到当前目录)

//解压test.tar,将文件解压至当前目录
tar -xvf test.tar


//解压test.tar,将文件解压至指定目录(/home/godspeed)
tar -xvf test.tar -C /home/godspeed


//以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/godspeed)
tar -zxvf test.tar.gz -C /home/godspeed

注意:​​​​​​​

  • -f选项,必须在选项组合体的最后一位
  • -z选项,建议在开头位置
  • -C选项单独使用,和解压所需的其它参数分开

12.4  zip命令压缩文件

可以使用zip命令,压缩文件为zip压缩包

语法:

zip [-r] 参数1 参数2 ... 参数N

选项:

  • -r,被压缩的包含文件夹的时候,需要使用-r选项,和rmcp等命令的-r效果一致

示例:

//将a.txt b.txt c.txt 压缩到test.zip文件内
zip test.zip a.txt b.txt c.txt


//将test、itheima两个文件夹和a.txt文件,压缩到test.zip文件内
zip -r test.zip test itheima a.txt

12.5  zip命令解压缩文件

使用unzip命令,可以方便的解压zip压缩包

语法:

unzip [-d] 参数

选项:

  • -d,指定要解压去的位置,同tar-C选项
  • 参数,被解压的zip压缩包文件

示例:

//将test.zip解压到当前目录
unzip test.zip

//将test.zip解压到指定文件夹内(/home/godspeed)
unzip test.zip -d /home/godspeed

13. 总结

在代码的舞台上,Linux翩翩起舞。

纵观代码的山川大地,无边的可能在眼前延展, Linux,是智慧的风,吹动着科技的帆船。

用韵律的二进制,谱写着自由的交响曲, Linux,是数字艺术的荣光,闪烁在信息的星空。

愿Linux永远如诗,激励创造者的灵感。

渴望挑战Linux操作系统的学习路径和掌握系统管理技术?不妨点击下方链接,一同探讨更多Linux操作系统的奇迹吧。我们推出了引领趋势的linux专栏:《Linux基础学习》 ,旨在深度探索Linux的实际应用和创新。

你可能感兴趣的:(Linux基础,学习,linux,unix,c++)