Linux实用指令

时间:2021-06-30 14:23:06

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行

Linux实用指令

压缩和解压缩

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