各类小技巧
ctrl+c 强制停止
ctrl+d 退出或登出
history 查看历史输入过的命令
历史命令搜索
1.可以通过:!命令前缀,自动执行上一次匹配前缀的命令 (垃圾东西)
2.可以通过快捷键:ctrl + r,输入内容去匹配历史命令
如果搜索到的内容是你需要的,那么: 回车键可以直接执行
键盘左右键,可以得到此命令(不执行)
清屏
ctrl + l 或者 命令clear
yum命令(软件安装)
yum:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题(安装时如果需要其他前置依赖,会一并下载这些依赖)。
语法:
选项:
-y,自动确认,无需手动确认安装或卸载过程
install:安装
remove:卸载
search:搜索
yum命令需要root权限,可以su切换到root,或使用sudo临时提供权限。 yum命令需要联网
*********************
安装wget
查看是否有wget的安装包
移除wget
systemctl(控制软件的启动和关闭)
案例
安装httpd
httpd注册的服务名为httpd,查看httpd的状态
启动服务
设置开机时自启动
软连接
在系统中创建软链接,可以将文件、文件夹链接到其它位置。
类似Windows系统中的快捷方式
语法:
-s选项,创建软连接
参数1:被链接的文件或文件夹
参数2:要链接去的目的地(即快捷方式)
案例
尝试打印linkHello,出来的时hello.txt里面的内容,符合预期。
日期,时区
Date命令
格式化输出时间
日期计算
修改Linux时区
ntp程序(用于校准时间,CentOS8后弃用ntp)
IP地址、主机名
IP地址
特殊的IP地址
主机名
可以使用命令:hostname查看主机名
可以使用命令:hostnamectl set-hostname 主机名 来修改主机名(需root)
重启一下
@左边是当前登录的用户的名字
@右边是主机名
域名解析
IP地址实在是难以记忆,有没有什么办法可以通过主机名或替代的字符地址去代替数字化的IP地址呢?
实际上,我们一直都是通过字符化的地址去访问服务器,很少指定IP地址 。比如,我们在浏览器内打开:www.baidu.com,会打开百度的网址。
其中,www.baidu.com,是百度的网址,我们称之为------域名
域名解析的流程
114.114.114.114 和8.8.8.8 是网上公开的DNS服务器的IP地址
配置主机名映射
管理员身份运行记事本,打开 windows下记录域名映射的文件,配置域名映射
finalshell中用主机名代替IP地址连接虚拟机
网络传输
ping命令
wget命令
不加 -b
加 -b 后台下载
取消后台下载
curl命令
cip.cc网站帮助我们获取公网的ip地址
通过curl下载hadoop-3.3.0安装包
curl -O http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
进程管理
端口
查看端口占用
nmap命令
安装nmap:yum -y install nmap
语法:nmap 被查看的IP地址
本机(127.0.0.1)上有3个端口现在被程序占用了。
22端口,一般是SSH服务使用,即Shell远程连接Linux所使用的端口
80端口,http服务的默认端口
3306端口,mysql的默认端口
netstat命令
安装netstat:yum -y install net-tools
语法:netstat -anp | grep 端口号
-a
(all)显示所有选项,默认不显示监听服务端口。-n
(numeric)以数字形式显示地址和端口号。-p
(program)显示哪个进程正在使用套接字。
进程
可以通过ps -ef命令查看Linux系统中的进程信息
ps:time表示进程累计占用cpu的总时间
查看指定进程
关闭进程
语法:
测试:
开两个终端,一个终端执行tail命令,他会一直卡在这里执行
另一个终端执行kill -9 杀死这个进程
回到第一个终端,可以看到进程被杀死的信息
主机状态
查看系统资源占用
top命令
可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器
默认每5秒刷新一次
语法:直接输入top即可,按q或ctrl + c退出
执行top命令
top命令详解
top命令的选项
top命令的交互式选项
磁盘信息监控
df命令
使用df命令,可以查看硬盘的使用情况
语法:df [-h]
选项:-h,以更加人性化的单位显示
iostat命令
需要安装sysstat
可以使用iostat查看CPU、磁盘的相关信息
语法:iostat [-x] [num1] [num2]
选项:-x,显示更多信息 num1:数字,刷新间隔,num2:数字,刷新几次
网络状态监控
可以使用sar命令查看网络的相关统计(sar命令非常复杂,这里仅简单用于统计网络)
语法:sar -n DEV num1 num2
选项:
-n,查看网络,DEV表示查看网络接口
num1:刷新间隔(不填就查看一次结束)
num2:查看次数(不填无限次数)
环境变量
什么是环境变量?
环境变量是操作系统(Windows、Linux、Mac)在运行的时候,记录的一些关键性信息,用以辅助系统运行。
在Linux系统中执行:env命令即可查看当前系统中记录的环境变量
环境变量是一种KeyValue型结构,即名称和值,如下图:
HOME:/home,用户的HOME路径
USER:root,当前的操作用户
PWD:当前工作路径
......
*******************************************************************************************
我们知道使用的一系列命令其实本质上就是一个个的可执行程序。 比如,cd命令的本体就是:/usr/bin/cd 这个程序文件。
为什么无论当前工作目录在哪里,都能执行:/usr/bin/cd这个程序呢? 这就是环境变量的作用啦。
输入 env |grep env
PATH记录了系统执行任何命令的搜索路径,用 :隔开。
当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的本体。
比如执行cd命令,就从目录/usr/bin中搜索到了cd命令,并执行
$符号
在Linux系统中,$符号被用于取"变量"的值。
环境变量记录的信息,除了给操作系统自己使用外,如果我们想要取用,也可以使用。
取得环境变量的值就可以通过语法:$环境变量名
当和其它内容混合在一起的时候,可以通过{}来标注取的变量是谁
设置环境变量
Linux环境变量可以用户自行设置,其中分为:
临时设置
语法:export 变量名=变量值
永久生效
针对当前用户生效
配置在当前用户的: ~/.bashrc文件中
**************************
切换到用户chen
针对所有用户生效
配置在系统的:/etc/profile文件中
通过语法:source 配置文件,进行立刻生效
切换到root用户,访问不到MY_NAME 因为是局部生效
设置环境变量
现在重新切回chen,能访问到MY_AGE,因为我们修改了 /etc/profile 是全局变量
自定义环境变量PATH
PATH变量记录了程序的搜索路径, 可以自定义可执行文件加入PATH中,就能起到执行自己写的命令的效果
创建文件夹myenv
写一个saygoodbye文件
修改PATH变量
修改权限后,执行自己写的saygoodbye命令
上传、下载
注意,rz、sz命令需要终端软件支持才可正常运行 (cmd不行)
rz、sz命令需要安装,可以通过:yum -y install lrzsz,即可安装。
rz命令
进行上传,语法:直接输入rz即可
sz命令
进行下载,语法:sz 要下载的文件
文件会自动下载到桌面的:fsdownload文件夹中。
压缩、解压
市面上有非常多的压缩格式
zip:Linux、Windows、MacOS,常用
7zip:Windows系统常用
rar:Windows系统常用
tar:Linux、MacOS常用
gzip:Linux、MacOS常用
下面介绍如何在Linux系统中操作:tar、gzip、zip这三种压缩格式
tar与gzip
.tar ,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装
.gz(.tar.tz) ,它是gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积
针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作
命令格式
-c,创建压缩文件,用于压缩模式
-x,解压模式
-f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
-v,显示压缩、解压过程,用于查看进度
-z,gzip模式,不使用-z就是普通的tarball(.tar)格式
-C,选择解压的目的地,用于解压模式
压缩文件
压缩的命令一般比较固定
tar -cvf .....
tar -zcvf ....
压缩为tar文件
压缩为gz文件(gizp模式)
比较压缩文件的大小,.gz文件极大地压缩了文件的体积,符合我们的预期(注:z1.tar的大小为10KB z2.tz的大小为230B)
解压文件
常用的tar解压组合有
tar -xvf test.tar 解压test.tar,将文件解压至当前目录
tar -xvf test.tar -C /test 解压test.tar,将文件解压至指定目录(/test)
tar -zxvf test.tar.gz -C /test 以Gzip模式解压test.tar.gz,将文件解压至指定目录(/test)
注意:
-f选项,必须在选项组合体的最后一位
-z选项,建议在开头位置(如果要用的话)
-C选项,单独使用,和解压所需的其它参数分开
**************************************************
解压tar文件到当前目录
解压gz文件到/test
zip
zip压缩
可以使用zip命令,压缩文件为zip压缩包
命令格式
-r,被压缩的包含文件夹的时候,需要使用-r选项
*******************************************
zip test.zip a.txt b.txt c.txt
将a.txt b.txt c.txt 压缩到test.zip文件内
zip -r test.zip test abc a.txt
将test、abc两个文件夹和a.txt文件,压缩到test.zip文件内
*********************************************************************
unzip解压
使用unzip命令,可以方便的解压zip压缩包
命令格式
-d,指定要解压去的位置,同tar的-C选项
参数,被解压的zip压缩包文件
****************************************************
unzip test.zip
将test.zip解压到当前目录
unzip test.zip -d /home/abc
将test.zip解压到指定文件夹内(/home/abc)
******************************************************************