一、软件安装与服务管理命令
1. RPM 红帽软件包管理器
RPM:即红帽软件包管理器,是一种用于互联网下载包的打包和安装工具,生成具有 .RPM扩展文的后缀。主要功能:安装、卸载、升级、管理、组建查询、验证、软件包GPG和MD5数字签名的导入、验证和发布,软件包依赖管理、网络远程安装。
(1)安装软件命令格式:rpm -ivh filename.rpm
(2)升级软件的命令格式:rpm -Uvh filename.rpm
(3)卸载软件的命令格式:rpm -e filename.rpm
(4)查询软件描述信息的命令格式:rpm -qpi filename.rpm
(5)列出软件文件信息的命令格式:rpm -qpl filename.rpm
(6)查询文件属于那个RPM的命令格式:rmp -qf filename
2. Yum 软件仓库
Yum软件仓库:它可以根据用户的要求分析出所需软件包及其相关的依赖关系,然后自动从服务器下载软件包并安装到系统。
(1)列出所有仓库:yum repolist all
(2)列出仓库中所有的软件包:yum list all
(3)产看软件包信息: yum info 软件包名称
(4)安装软件包:yum install 软件包名称
(5)重新安装软件包:yum reinstall 软件包名称
(6)升级软件包:yum update 软件包名称
(7)移除软件包名称:yum remove 软件包名称
(8)清除所有仓库缓存:yum clean all
(9)检查可更新的软件包:yum check-update
(10)查看系统中已经安装的软件包组:yum grouplist
(11)安装指定的软件包组:yum groupinstall 软件包组
(12)移除指定的软件包组:yum groupremove 软件包组
(13)查询指定的软件包组信息:yum groupinfo 软件包组信息
3. Systemd 初始化
Linux操作系统的开机过程为:从BIOS开始,然后进入Boot Loader,再加载系统内核,然后内核进行初始化,最后启动初始化进程(初始化工作:挂载系统文件、交换分区、启动各类进程服务),此过程由system V init 替换为了全新的systemd 初始化进程服务,其采用了并发启动机制,开机速度得到了不小的提升。
(1)启动服务:systemctl start foo.service
(2)重启服务:systenctl restart foo.service
(3)停止服务:systemctl stop foo.service
(4)重新加载配置文件(不终止服务):ststemctl reload foo.service
(5)查看服务器状态:systemctl status foo.service
(6)开机自动启动:systemctl enable foo.service
(7)开机不自动启动:systemctl disable foo.service
(8)查看特定服务是否为开机自动启动:systemctl is-enabled foo.service
(9)查看各个级别下服务的启动和禁用情况:systemctl list-unit-file – type=service
二、常用系统工作命令
- echo 命令:用于在终端输出字符串或变量提取后的值(格式:echo[字符串|$变量])
- date 命令:用于显示和设置系统时间和日期(格式:date [选项] [指定的格式])
(1)%t:跳格
(2)%H:小时(0 - 23)
(3)%I:小时(0 - 12)
(4)%M:分钟(00 - 59)
(5)%S:秒(00 - 59)
(6)%j:今年的第几天
- reboot 命令:用于重启系统
- poweroff 命令:用于关闭系统
- wget 命令:用于在网络中下载文加(格式:wget [参数] 下载地址)
(1)-b:后台下载模式
(2)-P:下载到指定目录
(3)-t:最大尝试次数
(4)-c:断点续传
(5)-p:下载页面中所有资源,包括图片文字
- ps 命令:用于查看系统中线程的状态(格式:ps [参数])后面都是进程相关命令
(1)-a:显示所有用户的进程
(2)-u:用户及其他详细信息
(3)-x:显示没有控制终端的进程
- top 命令:用于动态的监视进程活动和系统负载等信息,类似于强化版的Windows任务管理器。退出时按Ctrl + C。(格式:top)
Ctrl + C 可以推出此模式
- pidof 命令:用于查看某个指定服务进程的PID值(格式:pidof [参数] [服务名称]),每个进程的进程号码值(PID)是唯一的,因此可以通过PID来区分不同的进程
- kill 命令:用于终止指定PID的进程(格式:kill [参数] [进程PID])
- killall 命令:用于终止指定进程服务锁对应的全部进程(格式:killall [参数] [服务名称])
三、系统状态检测命令
- ifconfig命令:用于获取网卡配置与网络状态等信息(格式:ifconfig [网络设备] [参数])
(1)inet:IP地址
(2)ether:网卡物理地址(MAC地址)
(3)RX:接收数据包个数及累计流量
(4)TX:发送数据包个数及累计流量
- uname 命令:用于查看系统内核和系统版本等信息(格式:uname [-a]),一般搭配 -a 来完整的查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件平台、处理器类型、以及操作系统名称等信息。
查看当前系统版本的详细信息(需要查看redhat-release文件):
- uptime 命令:用于查看系统的负载信息(格式:uptime),他会显示当前系统时间、系统运行时间、启用终端数量以及平均负载值(系统在最近1分钟、5分钟、15分钟内的压力情况,越低越好,长期不要超过1,生产环境不要超过5)等信息
- free 命令:用于显示当前系统中内存的使用量信息(格式:free [-h])!](https://img-blog.csdnimg.cn/20210329130611858.png)
- who 命令:用于产看当前登录主机的用于终端信息(格式:who [参数])
- last 命令:用于查看所有系统的登录记录
- history 命令:用于显示历史执行过的命令(格式:history [-c])
历史命令会被保存到.bash_history文件(隐藏文件)中,可用cat命令查看。
清空命令历史记录信息:
- sosreport 命令:用于收集系统配置架构信息并输出诊断文档(格式:sosreport)
四、工作目录切换命令
- pwd 命令:用于显示当前所处的工作目录(格式:pwd [选项])
- cd 命令:用于切换目录(格式:cd [目录名称])
切换到上一级目录:cd … (应该是两个点,不知道为啥打出来就只能是三个)
- ls 命令:用于显示目录中的文件信息(格式:ls [选项] [文件])
参数 -a
参数 -l
参数 -a -l 合并:查看当前目录中的所有文件并输出文件的属性信息
五、文本编辑命令
- cat 命令:用于查看纯文本文件(适用于内容较小的文件,大文件的话会来不及看就会翻滚到下一页)(格式:cat [选项] [文件])(参数 -n:显示行号)
- more 命令:用于查看纯文本文件(适合看内容比较多的)(格式:more [选项] [文件])
- head 命令:用于查看纯文本文件的前N行(格式:head [选项] [文件])
- tail 命令:用于查看出文本文件的后N行,会持续刷新文件内容,适合查看最新日志文件(格式:tail [选项] [文件])
- tr 命令:用于替换文本文件中的字符(格式:tr [原始字符] [目标字符]),先使用cat命令读取待处理的文本,然后通过管道符把这些文本内容传递给tr命令进行替换操作即可
- wc 命令:用于计数指定文件的行号、字数、字节数(格式:wc [参数] [文件])
(1)-l:只显示行数
(2)-w:只显示字数
(3)-c:只显示字节数
- stat 命令:用于查看文件的具体储存信息和时间等信息(格式:stat [文件])
- cut 命令:用于按“列”提取文本字符(格式:cut [参数] 文本),使用-f参数设置需要看的列数,使用-d参数设置间隔符号。(f后面的参数为一(1))
- diff 命令:用于比较多个文本文件的差异(格式:diff [参数] [文件]),-c参数:详细比较出多个文件的差异,-brief参数:比较两个文件是否相同,都需要先使用cat查看文件内容。
六、文件目录管理命令
- touch 命令:用于创建文件或修改文件时间(格式:touch [选项] [文件])
(1)-a:仅修改读取时间
(2)-m:仅修改修改时间
(3)-d:同时修改读取和修改时间
- mkdir 命令:用于创建空白目录(格式:mdkdir [选项] [目录]),参数-p来递归创建具有嵌套层次关系的目录文件目录
- cp 命令:用于复制目录和文件(格式:cp [选项] [源文件] [目标文件])
(1)如果目标文件是目录,则会把源文件复制到该目录下
(2)如果目标文件是文件,则会询问是否要覆盖它
(3)如果目标文件不存在,则会正常操作(复制到该目录下)
参数:
(1)-p:保留源文件属性
(2)-d:如果文加为“链接文件”,则保留该“连接文件”的属性
(3)-r:递归持续复制(用于复制目录)
(4)-i:若文加存在则询问是否覆盖
(5)-a:相当于-pdr(参数同上)
- mv 命令:用于剪切文件(复制后会删除源文件,相当于移动文件)和重命名文件(在同一个目录剪切文件,相当与是对其进行重命名)。(格式:mv [选项] [源文件] [目标路径/目标文件])
- rm 命令:删除文件或目录(格式:rm [选项] [文件/目录]),删除时系统会提醒是否删除,-f参数会强制删除不会提醒,-r参数用来删除目录
- dd 命令:用于按照指定大小和个数的数据块来复制文件和转换文件(格式:dd [参数]),还可以用力啊压制出光盘镜像文件,将它编程一个可以立即使用的ios镜像。
参数:
(1)If:输入文件的名称
(2)of:输出文件的名称
(3)bs:设置每个“块”的大小
(4)count:设置要复制“块”的个数
- file 命令:查看文件类型(格式:file [文件]),文本、目录、设备都是文件无法直到具体的文件类型
七、打包压缩与搜索命令
- tar 命令:用于打包和压缩文件(格式:tar [选项] [文件]),常见的压缩包文件格式:.tar、.tar.gz、.tar.bz2等等,
打包压缩:tar -czvf 压缩包名称.tar.gz 要打包的目录
解压:tar -xzvf 压缩包名称.tar.gz
参数:
(1)-c:创建压缩文件
(2)-x:解开压缩文件
(3)-t:查看压缩包有哪些文件
(4)-z:用gzip压缩或解压
(5)-j:用bzip压缩或解压
(6)-v:显示解压或压缩过程
(7)-f:要压缩或解压的目标文件(必须放到参数的最后一位)
(8)-p:保留原始的权限与属性
(9)-P:使用绝对路径来压缩
(10)-C:指定压缩到的目录、
- grep 命令:用于在文本中执行关键词搜索,并显示匹配结果(格式:grep [选项] [文件])
参数:
(1)-b:将可执行文件(binary)当作文本文件(text)来搜索
(2)-c:仅显示找到的行数
(3)-i:忽略大小写
(4)-n:显示搜索到信息的行号(常用)
(5)-v:反向选择(仅列出没有关键词的行)(常用)
- find 命令:用于按照指定条件来查找文件(格式:find [查找路径] [寻找条件:文件名、大小、修改时间、权限信息等等])
参数:
(1)-name:匹配名称
(2)-perm:匹配权限
(3)-user:匹配所有者
(4)-group:匹配所有组
(5)-mtime -n +n:匹配修改内容的时间(-n指n天以内,+n指n天以前)
(6)-atime -n +n:匹配访问文件的时间(-n指n天以内,+n指n天以前)
(7)-ctime -n +n:匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
(8)-nouser:匹配无所有者的文件
(9)-nogroup:匹配无所有组的文件
(10)-newer f1 !f2:匹配比f1新但比f2旧的文件
(11)–type b/d/c/p/l/f:匹配文件类型(参数依次为:块设备、目录、字符设备、管道、链接文件、文本文件)
(12)-size:匹配文件的大小(+:超过 - :小于)
(13)-prune:忽略某个目录
(14)-exec …{}; :后面可跟用于进一步处理搜索结果的命令