Linux实用指令
Rpm&Yum
一种用于互联网下载包的打包和安装工具,它包含某些Linux分发版中,它生产具有 .rpm 扩展名的文件。RPM 是 RedHat Package Manager(RedHat软件包管理工具)的缩写。
查询指令
rpm -qa 【| grep 名字】 :查询所有/过滤条件
jansson-2.10-1.el7.x86_64
名称:jansson
版本号:2.10-1
适用操作系统:el7.x86_64:centos7
系统位数:x86_64:64位、【i686、i386:32位】、noarch:通用
- rpm -qa
- rpm -qa | more
- rpm -qa | grep X [rpm -qa | grep openssh]
- rpm -q 软件包名:查询软件包是否安装 【rpm -q openssh】
- rpm -qi 软件包名:查询软件包信息
- rpm -ql 软件包名:查询软件包中的文件
- rpm -qf:查询文件所属的软件包 【rpm -qf /etc/passwd】
卸载rpm包
- rpm -e 包名
- rpm -e --nodeps 包名:强制删除,可能导致依赖的软件无法使用
安装rpm包
- rpm -ivh 包全名
-i:install 安装
-v:verbose 提示信息
-h:hash 进度条
YUM
是一个Shell前端软件包管理器,基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以==自动处理依赖性关系==,并且一次性安装所有依赖的软件包。
基本指令
- 查询是否有需要安装的软件
- yum list 【| grep xx软件】
- 安装指定的yum包
- yum install xx名字
Sort
依据不同数据类型进行排序,默认为升序
-b:忽略每行开始的空格
-c:检查文件是否已按顺序排列
-f:排列时忽略大小写字母
-n:按数值大小排序
-o:将排序后的结果存入指定文件中
-r:以相反顺序排序
例如:
sort seq.txt:按ASCII码值进行比较并排序,最后将它们按升序输出
sort -u seq.txt:按ASCII码值进行比较、排序、去重复,最后将它们按升序输出
sort -r seq.txt:前面是升序,加个-r就变成降序了
sort -r number.txt -o number.txt:把number.txt中的内容反向排序后覆盖number.txt,若是别的文件名则直接输出至指定文件中
sort -n number.txt:以数值排序number.txt中的数值,这样就不会出现10<2的情况了
sort -n -k 2 -t ':' fruit.txt:将fruit.txt中的每行内容以':'分隔,并以第2列为基准按数值排序
Wget
用于从网络上下载资源,若不指定目录,则下载资源默认为当前目录。wget支持:
1、断点下载
2、同时支持FTP与HTTP
3、支持代理服务器
4、设置简单
-b:启动后转入后台执行
-o:把记录写到文件中
-a:把记录追加到文件中
-tries=NUMBER:设定最大尝试连接次数,0表示无限制,默认为20次
-timeout=SECOND:设定响应超时的秒数
例如:
wget URL:使用wget从URL下载单个文件,会有进度条
wget -O abc.zip URL:下载一个文件并以abc.zip命名
wget --limit-rate=300k URL:限制下载速率为300K下载某个文件
wget -c URL:断点续传某文件,防止下载大文件时的网络中断
wget -b URL:后台下载某文件,可用tail -f wget-log查看下载进度
wget --user-agent="XXX" URL:使用伪代理名称下载
wget --tries=40 URL:下载一个文件,失败可重试40次
wget --reject=gif URL:下载一个文件,但不下载gif文件,用于过滤指定格式
wget -o download.log URL:将下载日志写入download.log
wget --ftp-user=USERNAME --ftp-password=PASSWORD URL:指定用户名、密码,使用ftp下载某文件
Vi&Vim
运行模式
正常模式:打开一个文件就直接进去了正常模式(默认模式),等待编辑命令输入
插入模式:编辑模式下,输入 i
进入插入模式,插入文本信息
命令模式:在编辑模式下,输入 :
进行命令模式
命令
:q
直接退出vi
:wq
保存后退出vi ,并可以新建文件
:q!
强制退出
:w file
将当前内容保存成某个文件
命令行模式下:
yy
拷贝当前行
5yy
拷贝当前向下的 5 行
p
粘贴
dd
删除当前行
5dd
删除当前向下的 5 行
/关键字
回车进行查找,输入 n 查找下一个
:set number
在编辑文件显示行号
:set nonumber
在编辑文件不显示行号
G
跳转文件末行
gg
跳转文件首行
u
插入模式下 新增字符,命令行模式下 次命令 撤销 新增字符
n shift+g
光标移动到第n行
压缩和解压缩
tar,用来压缩和解压文件,tar本身不具备压缩功能,它是调用压缩功能实现的。
-c:建立新的压缩文件
-d:记录文件差别
-r:添加文件到已压缩的文件中
-x:从压缩的文件中提取文件
-t:显示压缩的文件内容
-z:支持gzip解压文件
-v:显示操作过程
-f:指定压缩文件
例如:
tar -cvf log.tar log1.log:仅把log1.log打包成log.tar,不压缩
tar -zcvf log.tar.gz log1.log:把log1.log打包成log.tar.gz,并指出gzip压缩
tar -ztvf log.tar.gz:查阅log.tar.gz中的内容,因log.tar.gz是以gzip压缩的,所以要加上z
tar -zcvf log30.tar.gz log1.log log2.log:把多个文件打包压缩成一个文件
tar -zxvf log30.tar.gz log2015.log:把log30.tar.gz中的log2015.log解压出来
gzip和gunzip
-d:解压缩
-l:对每个压缩文件,显示压缩文件的大小,未压缩文件的大小,压缩比,未压缩文件的名字
-v:对每一个压缩和解压的文件,显示文件名和压缩比
-num:用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6
示例:
gzip 1.txt :会产生一个1.txt.gz文件、1.txt 原文件会删除。
gunzip 1.txt.gz:产生一个1.txt文件,删除原文件。
说明:压缩文件后缀为 gz。
bzip2
命令 | 语法 | 参数 | 参数说明 |
---|---|---|---|
bzip2 | bzip2 [-cdz] | ||
-d | 解压缩 | ||
-z | 压缩参数 | ||
-num | 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6 |
说明:压缩文件后缀为 bz2。
zip和unzip
zip 【选项】 xxx.zip:压缩文件和目录
-r:递归压缩,压缩目录
zip -r mypackage.zip /home/:对home目录下文件压缩成 mypackage.zip 包。
unzip:
-d 目录:解压后的文件的存放目录
unzip filename.zip
unzip -d /opt/tmp/ mypackage.zip:解压mypackage.zip 到 /opt/tmp/目录下。
开关机命令
Shutdown
-t:单位:s,在 t 秒后关机。
-r:重启机器
-h:关机后停机
-c:取消shutdown指令
说明:不管关机还是重启、首先运行Sync命令,把内存中的数据写到磁盘中。
重启
- reboot 重启
- shutdown -r now 立刻重启
- shutdown -r 10 10分钟后重启(root使用)
- shutdown -r 20:35 在20:35重启
关机
- halt 立刻关机
- poweroff 立刻关机
- shutdown -h now 立刻关机(root使用)
- shutdown -h 10 10分钟后关机
日期时间命令
date,显示当前日期,+ 号不能少
- date:Wed Feb 20 23:08:00 CST 2019
- date "+%Y-%m-%d":年月日
- date "+%Y-%m-%d %H-%M-%S":年月日 时分秒
设置日期
- date -s “2019-02-20 11:11:11”
cal指令,查看日历指令
- cal:查看当前月份日历
- cal 2020:查看2020年所有日历
服务管理命令
服务的本质也是进程,是在后台运行的,通常会监听某个端口,等待其它程序的请求,又称之为--守护进程。
systemctl 【start|stop|restart|reload|status】 服务名
- 查看防火墙状态
- systemctl status firewalld
- 关闭防火墙
- systemctl stop firewalld