Linux实用操作

惧怕爱情就是惧怕生活,而惧怕生活的人就等于半具僵尸。

                                                       ——罗素

 

1.各种小技巧快捷键

当然啦,先让我们来一起看看有哪一些快捷键把!
 
ctrl+c:终止当前的程序
例如:输入tail命令,不管怎样都退不出来,输入ctrl+c即可
54b6fd6e1ef349e4b9cf64c853a4541f.png

 

ctrl+d:退出当前的登录,或者退出某些特定程序的专属页面
例如:退出root用户,输入exit或者ctrl+d
e70a7f71866e4859acc7e89e0a0e5a0a.png

 

history命令:显示所有的历史指令
!命令前缀 :自动执行上一次匹配前缀的命令
例如:匹配有l前缀的命令,并执行
643bf5ffa403445b9fb4c8a989dfb82a.png

 

ctrl+r:输入内容去匹配历史命令,回车就执行该命令,左右键就得到此命令不执行
例如:输入ctrl+r再输入l,去看有哪些指令
164f5198544443619baeea67040cd1fb.png

 

ctrl+a|e:光标移动到命令的开头或光标移动到命令的结尾
ctrl+左键|右键:向左移动一个单词或向右移动一个单词
ctrl+l 或clear指令:清屏
 

2. Linux软件安装控制等

众所周知,软件的安装有两种方法, 一种是下载安装包自行安装(如windows系统使用exe文件等,mac系统使用dmg文件等),一种是在 软件商定内安装(Windows的Microsoft商店,mac系统的AppStore商店)
Linux两种方式都支持,接下来我们就使用命令行内的“应用商店”来安装软件。
 
当然啦,首先我们要了解一些yum是什么?
Yum(全称为 Yellow dogUpdater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端 软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
 
yum命令
作用:用来安装软件的命令
语法格式:yum [-y] [install | remove | search] 软件名称
选项:-y表示无需确定,自动安装或卸载软件
(注意,yum命令是需要root限权才可以使用的,并且需要连网)
例如:安装wget软件(它会问你是否确认安装,y就可以啦)
b84b953fec494d11a54cdb55adce2ddc.png

 

 
不过我在这里遇到了问题然后上网查了错误: 为仓库 'appstream' 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlist
解决方法:表示没有镜像,解决方法一共五步
第一:使用root用户切换工作目录--- cd /etc/yum.repos.d
第二:创建bak目录--- mkdir bak
第三:把以CentOS-Linux开头的文件移到创建的目录中--- mv CentOS-Linux-* bak
第四:下载新的数据源--- wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
最后:建立缓存--- yum makecache,就可以啦
 
 
systemctl命令
Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动,停止,是否开机自启,
能被systemctl命令管理的软件叫做服务
语法格式:systemctl  start | stop | status | enable | disable 服务名
(拓展:系统内置的服务比较多,比如NetworkManager主网络服务,firewalld防火墙,sshd,ssh等服务)
 
enable:表示开启开机自动启动
disable:表示关闭开机自动启动
例如:停止系统防火墙服务,并查看状态
a78223efb2d6433e939201ba0893736b.png

 

当然,除了内置的服务以外,部分第三方软件也支持systemctl来进行控制,不支持的需要集成到sysytemctl中,我们可以手动添加。
 
 
ln命令
了解:软连接就是将 文件,文件夹链接到其他的地方,就是把这个文件指向到其他的地方,比如Windows的快捷方式就是这样的。
作用:就是创建一个软连接
语法:ln -s 参数1 参数2
-s:表示创建软连接
参数1:表示被连接的文件或文件夹
参数2:连接到哪个地方
 
例如:把根目录下的user目录链接到其他的地方去(我们最好会看到一个指向的符号,很简单的啦)
 
9c83d09a066749dfb68465c18092879d.png

 

 
date命令
作用:与意思一样,用于 查看当前地区的日期时间,并以指定的格式显示出来
语法: date [-d] [+格式化字符串]
-d:表示按给定的字符串显示日期,一般用于日期的计算
格式化字符串:通常以特定的字符串标记来显示时间日期,记得用双引号包起来(如下图)
395c27314db241298a1f9bd72560399f.png

 

例如:以指定的格式来显示日期
8d6819fea8bc4a49a27b07dccc207a24.png

 

 
可能会有人问,-d是干什么用滴,它可以对时间日期进行加减运算,下面写个例子显示明年现在的日期,表示在现在的日期上加了一年
959966de868b46268b1a702e210799ac.png

 

当然也可以计算其他的
c9c7e525dd6144beb056bee3ebcbd88d.png

 

遇到问题:有一些情况时间日期不对,解决方法:root用户修改时区----rm -f /etc/localtime
然后再输入指令---sudo ln -s/usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
 
 
 

3.IP及主机名

可能有很多人与我一样, IP是什么不是很明白?
 
这个要联系计算机历史了,听我简单来讲述:
在现实生活中有一台电脑工作也是可以的,但是为了团队协作与提高效率我们就有可能用多台电脑,电脑与电脑之间是需要分享数据等等的,如果用u盘来那么不能实时进行数据传输,后来就用一根 线来数据传输(所说的网线)
3a9a95159d874500b98167e1b6f5462d.png

 

 
每一个电脑都连一根网线,但是也有一个问题5台就用了10根,如果很多电脑的时候就需要非常多网线,根本不可以想象啊!
63d9d8d22987438db2769842fd73feb2.png

 

 
后来就发明了 交换机,把所有的电脑都连接到一台交换机上面,那么这里就形成了一个局域网,把你要传输的数据发给交换机,然后由交换机给你传输,问题来啦,它怎么知道要给哪台电脑呢,到后面就给每一个电脑一个 虚拟的地址(IP地址,就是网络中的地址啦),传输数据时带上这个地址,交换机拿到这个地址就知道要给谁了(就像现在的快递一样)
a3595e90aaf64203bd712f9ad248c864.png

 

 
当有很多个局域网时,局域网与局域网之间又会通过交换机来连接,随着时间的推移与网线的增多,就会形成一个更大的网络系统,也就是我们的广域网!为每一台电脑连接网络可不是一件轻松的事情,所以就有了ISP互联网服务提供商(移动,电信,联通等)
d9074e7a7faa48219447c6d33e81f4e5.png

 

 
IPV4是由32位二进制的数构成,总共约42亿个地址,为了方便和记忆又将32位分为了 4组,又把他们转换为十进制(如192.168.1.1),虽然看着很多但是全球人口就很大了显然是不够用的,然后这里就出现了一个新的概念—— 网络地址转换(NAT),就是把你当前的这个电脑的ip地址映射为那个路由器(我们说的网关)的ip地址(如下图,五台电脑共享一个ip地址啦)
 
bef93fd4bf674d139c076f5141887da2.png

 

虽然很多电脑可以共享一个IP,但是电脑发送数据到路由器的时候都变成了一样的ip,怎么知道要发生给哪台电脑呢,那么就增加了一个新的概念—— 端口映射再在网关的ip后面加一个端口号,网关会以不同的端口号来跟不同的外界电脑交互。
 
 
公网ip与私网ip,公网ip就是一个在网络上所有地方都可以访问滴(就像全世界只有一个中国一样,别人搜一下就一个,它就是公网ip),私网ip就是在网关以内的ip(就是一个班的学生张三一样,只能在班上清晰使用,别的地方不能用,并且也有一样的名字)
 
现在IPv4用的是最多的,但是ipv6也在逐渐增加,ipv6是由8组4位十六进制数组成,非常非常的多(可以给地球上所有的东西给一个ip地址,哈哈哈哈)
 
 
 
ifconfig命令
作用:查看当机的ip地址(很简单滴)
当然啦,除了标准的ip地址以外,还用几个特殊的ip地址,比如 127.0.0.1 它是代表自己本机的意思; 0.0.0.0也是指本机
 
 
主机名,除了每台电脑有自己的ip,也有自己的名字,比如我自己电脑的主机名;Linux系统也有自己的主机名,可以用 hostname命令来显示主机名,同时也可以用 hostnamectl set-hostname 新名字 命令来修改主机名称。
460a58ca2ac2405599494e54dba737f4.png

 

 
问题:ip地址多又不容易记,如果像主机名这样就好啦,这样代替ip地址就更好啦。
解决问题—— 域名解析,主机名映射,在浏览器上面输入网站, 浏览器会把它解析为ip地址,然后就可以交互了。(原理,当浏览器输入www.baidu.com时,系统会自动的查找指定文件里面是否有该域名与ip地址的映射关系,有就直接访问,没有就会联网去访问公开的DNS服务器——给域名就可以查找ip地址像电话本,看有没有对应的ip地址,有就访问网站)
下图就时自己系统里面ip与名称的映射文件。
 
643bbf48a9794f888f1e154a0097e68e.png

 

 

其实每一次电脑的重启都会产生一个新的ip地址,它是通过 DHCP服务——动态获取ip地址,对于远程连接来说动态ip地址是非常非常的麻烦的。是否可以有固定的ip地址呢,答案是,可以滴!
 
下面介绍怎么 固定ip地址(Windows)
1.打开VM虚拟机,点编辑---然后点虚拟网络编辑器---打开后点更多设置-----点VMnet8-----然后设置子网ip为192.168.88.0(它是一个范围可以自己随机,88.0到88.256)-----然后确认子网掩码为255.255.255.0-----然后点NAT设置-----网关IP设置为192.168.88.2就可以啦
69c8266aa4be4d1ba4c083a30228f124.png

 

 
2.在Linux系统中修改固定IP,使用vim编译 /etc/sysconfig/network-scripts/ifcfg-ens33文件,如下修改后保存
最后在输入命令systemctl stop network停止网关,再打开systemctl start network就欧克啦
 
f1144a6d5b124562ace7847f0d198aa2.png

 

 

ping命令
作用:检查指定的网络服务器是否可以联通的状态
语法:ping [-c num] ip或主机名
选项:-c,检查次数,不使用-c选项,将无限次数持续检查
参数:ip或主机名,被检查的服务器的ip地址或主机名地址
例如:测试网站
 
e328582f5644439c97add0877ba0ab46.png

 

wget命令
作用: 它就是一个文件下载器,可以在命令行内下载网络文件
语法: wget [-b] url
选项:-b,可选,后台下载,不会显示在页面
参数:url ,下载链接
 
 
curl命令
作用:可以发送http请求,用于下载文件,获取信息等
语法:curl [ -0 ] url
选项:-O,下载文件的时候就用它
例如:
a9041651cbb04749af7f0ca2946633ad.png

 

 
 

4.端口

端口,是设备与外界通讯交流的出入口,端口可分为: 物理端口和虚拟端口两类
物理端口:又可称之为接口,是可见的端口,如电脑上面的usb接口,交换机和路由器上面那种可以插空的口,Rj45网口等
虚拟接口:是指计算机内部的端口,是不可见的,是 用来操作系统和外部进行交互使用的
ip只能锁定电脑的地址,端口就可以锁定电脑的程序——就是当电脑接收到数据包的时候,它怎么知道要给哪个程序呢,数据包会带一个目标端口号,而对应的程序会监听指定的端口,如果两个端口号一样,那么就把数据包给接收到啦!
 
Linux系统是一个超大号小区,可以支持65535个端口,这6万多个端口可以分为3类使用:
公认端口:1-1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HHTP服务的443端口,非特殊需要,不要占用这个范围的端口号
注册端口: 1024-49151,通常可以随便使用,用于松散的绑定一些程序,服务
动态端口:49152-65535,通常不会固定绑定程序,而是当程序对外进行网络连接时,用于临时的使用
 
 
nmap指令
作用:可以查看指定ip地址有哪些端口号被占用
语法:nmap ip地址
使用:通过root用户来安装 yum -y install nmap
例如:查看本机的有哪些端口被占用了
407a16d139fa43729bde9288b74a0631.png

 

 
netstat命令
作用:查看指定的端口号的占用情况
语法:netstat -anp | grep 端口号
使用:通过root用户来安装 yum -y install netstat
例如:查看111端口号的占用情况
 
3b8e6b17710e4001a9aa0094a6cc7dfd.png

 

 

5.进程的管理

进程是什么?就是在系统中运行的程序,系统会给每一个进程都分配独有的进程号
 
ps命令
作用:查看Linux中进程的信息
语法:ps [-e -f] 
选项:-e,显示出全部的进程,-f展示全部的进程信息
一般来说两个选项都用上
e8655bac16bc49c4a34b364f9d4ced73.png 
 
kill命令
作用:关闭指定的进程
语法:kill [-9] 进程id
选项:-9表示强制关闭进程
 

6.主机状态查看

top命令用于展示主机的状态,类似于任务管理器,每5秒刷新一次,打开之后可以按q或ctrl+c停止监控。
 
详细介绍如图所示:
916f9444474f4c84aa7765c6c9da7430.png

 4be4048763af40af97ad40c860b1e30e.png

 

当然它也可以支持一些选项:
8b77570408da423e84ddbab883f501da.png

 

可以使用 df -h命令来显示磁盘的占用情况
bc9a6e6035dd4f2aaa8ca74a8a9260fb.png

 

可以使用 iostat -x来显示磁盘读取信息

ef5e29c43d4a4cec840da18f5baedd0a.png

 

7.环境变量

之前在学习的时候,为什么cd命令在哪里使用都可以成功呢,从底层分析也就是说哪都可以找到这个程序呢,,默认的程序只能在当前的工作目录下才可以运行,就很奇怪。
 
什么是环境变量,相信很多人与我一样,查了 半天都不知道的。环境变量就是记录了操作系统 在运行的时候的 一些关键的信息,全局滴,用来辅助系统运行。在Linux系统中可以通过env命令来查看环境变量,它是以键值对存在的。
 
因为有了环境变量,里面有一个path键,它的值是记录了程序指令的搜索路径(就是执行一个指令会在这个下面找),不管在哪执行cd这个命令系统都会在path下进行搜索,搜索到了就执行,所以说不管在哪都能执行cd命令啦。
 
$符:用于取指定环境变量的键来取值 
比如:echo $PATH
4dc7db0230f84c7387e4259da0f77fa7.png

 

export命令
作用:临时记录一个环境变量
语法:export 变量名=变量值
b4e6aa4ead2546aa9859e45c9a09a74e.png

 

当然也可以永久生效:
3da0a8dfd2d340f4a382273b1ef52d18.png

 

例如,基于环境变量,用PATH来自定义一个指令:
1.在home目录下创建一个myenv目录,里面创建一个myenv的文件。文件内容为
153e72883d574462872b0afd267e538f.png

 

2.修改环境变量,在PATH上面加一条路径,这个就是那个文件指令的搜索路径
bdff163ff5d44ee397c481dc4187419d.png

 

3.source 配置文件,然后生效,之后不管在哪里都可以使用myenv命令来打印哈哈哈哈啦

 

8.文件压缩与解压

 

了解,市面上现在有很多的压缩格式
zip格式:Linux,Windows,MacOS常用
7zip格式:Windows系统常用
rar格式:Windows系统常用
tar格式:Linux,MacOS系统
gzip格式:Linux,MacOS系统
 
在Linux系统和MacOS系统中,常见的有2种形式,后缀分别是:
.tar——称为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多的体积减少,就是简单的封装
.gz——也是常见为.tar.gz ,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积
 
 
tar命令
作用:对文件进行压缩和解压操作
语法:tar [-c -v -x -f -z -C ] 参数1,参数2 ,参数n
选项:-c表示创建压缩文件,-v表示显示进度条,-x表示解压模式,-z表示gzip模式,-C表示选择把最终文件解压到哪个地方,-f表示要压缩到哪个文件或要解压到哪个文件,同时它必须在最后面,就是归档文件
 
例如:将myenv压缩到指定的归档文件test.tar
720140cbb309420690901b2ec54ac172.png

 

 
zip命令unzip命令
一个是压缩一个是解压的,
语法:zip [ -r ] 参数
-r表示压缩文件夹的时候用,很简单
语法:unzip [ -d ] 参数
-d表示要解压到哪个个目录去

 


最近有点累,不想用心写,呜呜😭

 

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值