linux学习笔记1

发布时间:2023年12月26日

基础命令

常用快捷键

1、Tab? 自动补全
2、Ctrl+c? 终端内强制退出当钱进程
3、Ctrl+d 关闭当前终端
4、Ctrl+l 清空当前终端

常用系统工作命令

man 命令对象 ---------查看某个命令的帮助文档
echo [字符串][$+变量名]-------------在终端窗口输出字符串或变量值
date 命令----------------查看或设置系统时间

date [+格式]?????? 按照格式查看时间

date -s "20201101 8:30:00" 设置时间

参数作用
%S秒(00~59)
%M分钟(00~59)
%H小时(00~23)
%I小时(00~12)
%m月份(1~12)
%p显示出AM或PM
%a缩写的工作日名称(例如:Sun)
%A完整的工作日名称(例如:Sunday)
%b缩写的月份名称(例如:Jan)
%B完整的月份名称(例如:January)
%q季度(1~4)
%y简写年份(例如:20)
%Y完整年份(例如:2020)
%d本月中的第几天
%j今年中的第几天
%n换行符(相当于按下回车键)
%t跳格(相当于按下Tab键)
timedatectl 命令------------------设置系统时间和系统时区
参数作用
status显示状态信息
list-timezones列出已知时区
set-time设置系统时间
set-timezone设置生效时区
reboot 命令----------------------重启系统
poweroff 命令---------------------关机
wget 命令-------------------------在终端中下载网络文件

wget [参数] 网址

status显示状态信息
list-timezones列出已知时区
set-time设置系统时间
set-timezone设置生效时区
ps-----------------------------查看进程信息
参数作用
-a显示所有进程(包括其他用户的进程)
-u用户以及其他详细信息
-x显示没有控制终端的进程
pstree-------------------------以树状图的形式展示进程之间的关系
top------------------------动态的监视进程活动及系统负载等信息

top命令执行结果的前5行为系统整体的统计信息,其所代表的含义如下:

第1行:系统时间、运行时间、登录终端数、系统负载(3个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。

第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。

第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“99.9 id”意味着有99.9%的CPU处理器资源处于空闲。

第4行:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量。

第5行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量。

nice-------------------------调整进程优先级

在top命令输出的结果中,PR和NI值代表的是进程的优先级,数字越低(取值范围是-20~19),优先级越高。

 示例:将bash服务进程优先级设置为最高:nice -n -20 bash
pidof--------------------------查询某个指定服务进程的pid号码
kill-------------------------------根据pid杀死进程

?? kill [-9 强制杀死] 进程pid

killall--------------------------终止某个指定服务名称的所有进程

系统状态检测命令

ifconfig-------------------------获取网卡配置和网络状态等信息

ifconfig命令用于获取网卡配置与网络状态等信息,英文全称为“interface config”,语法格式为“ifconfig [参数] [网络设备]”。

使用ifconfig命令来查看本机当前的网卡配置与网络状态等信息时,其实主要查看的就是网卡名称、inet参数后面的IP地址、ether参数后面的网卡物理地址(又称为MAC地址),以及RX、TX的接收数据包与发送数据包的个数及累计流量

uname--------------------查看系统内核版本与系统架构等信息

使用uname命令时,一般要固定搭配上-a参数来完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、压制时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息

uptime------------------------查看系统负载信息

显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息。平均负载值指的是系统在最近1分钟、5分钟、15分钟内的压力情况(下面加粗的信息部分),负载值越低越好

free--------------------------显示当前系统中内存的使用信息

在使用free命令时,可以结合使用-h参数以更人性化的方式输出当前内存的实时使用量信息。

如果不使用-h(易读模式)查看内存使用量情况,则默认以KB为单位。

who------------------------------查看当前登入主机的用户终端信息
last------------------------------调取主机的被访记录
ping-----------------------------测试主机之间的网络连通性

语法格式为“ping [参数]?主机地址”

参数作用
-c总共发送次数
-l指定网卡名称
-i每次间隔时间(秒)
-W最长等待时间(秒)
tracepath------------------------------显示数据包到达目的主机时途中经过的所有路由信息
netstat----------------------------------显示如网络连接、路由表、接口状态等的网络相关信息】

语法格式为“netstat [参数]”

-a显示所有连接中的Socket
-p显示正在使用的Socket信息
-t显示TCP协议的连接状态
-u显示UDP协议的连接状态
-n使用IP地址,不使用域名
-l仅列出正在监听的服务状态
-i显示网卡列表信息
-r显示路由表信息
history-------------------------------显示执行过的命令历史

可以使用-c参数清空所有的命令历史记录。还可以使用“!编码数字”的方式来重复执行某一次的命令。历史命令会被保存到用户家目录中的.bash_history文件中。

sosreport----------------------------------收集系统配置及架构信息并输出诊断文档

查找定位文件命令

pwd--------------------------------显示用户当前所处的工作目录
cd----------------------------切换当前的工作路径

除了常见的切换目录方式,还可以使用“cd -”命令返回到上一次所处的目录,使用“cd ..”命令进入上级目录,以及使用“cd ~”命令切换到当前用户的家目录,抑或使用“cd ~username”命令切换到其他用户的家目录

ls------------------------显示目录中的文件信息

语法格式为“ls [参数] [文件名称]”。使用ls命令的-a参数可以看到全部文件(包括隐藏文件),使用-l参数可以查看文件的属性、大小等详细信息。

tree------------------------------以树状图的形式列出目录内容及结构

-a参数可以看到全部文件(包括隐藏文件)

find-----------------------------按照指定条件来查找文件所对应的位置

语法格式为“find [查找范围]?寻找条件”

参数作用
-name匹配名称
-perm匹配权限(mode为完全匹配,-mode为包含即可)
-user匹配所有者
-group匹配所有组
-mtime -n +n匹配修改内容的时间(-n指n天以内,+n指n天以前)
-atime -n +n匹配访问文件的时间(-n指n天以内,+n指n天以前)
-ctime -n +n匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
-nouser匹配无所有者的文件
-nogroup匹配无所有组的文件
-newer f1 !f2匹配比文件f1新但比f2旧的文件
-type b/d/c/p/l/f匹配文件类型(后面的字幕字母依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)
-prune忽略某个目录
-exec …… {}\;后面可跟用于进一步处理搜索结果的命令(下文会有演示)
locate、whereis、which -------------------按照指定名称快速搜索

使用find命令进行全盘搜索虽然更准确,但是效率有点低。如果仅仅是想找一些常见的且又知道大概名称的文件,不如试试locate命令。在使用locate命令时,先使用updatedb命令生成一个索引库文件,这个库文件的名字是/var/lib/mlocate/mlocate.db,后续在使用locate命令搜索文件时就是在该库中进行查找操作,速度会快很多。

locate命令用于按照名称快速搜索文件所对应的位置,语法格式为“locate文件名称”。

whereis命令用于按照名称快速搜索二进制程序(命令)、源代码以及帮助文件所对应的位置,语法格式为“whereis命令名称”。

whereis命令也是基于updatedb命令所生成的索引库文件进行搜索,它与locate命令的区别是不关心那些相同名称的文件,仅仅是快速找到对应的命令文件及其帮助文件所在的位置。

which命令用于按照指定名称快速搜索二进制程序(命令)所对应的位置,语法格式为“which命令名称”。which命令是在PATH变量所指定的路径中,按照指定条件搜索命令所在的路径。既不关心同名文件(find与locate),也不关心命令所对应的源代码和帮助文件(whereis),仅仅是想找到命令本身所在的路径

文章来源:https://blog.csdn.net/2302_79363960/article/details/135202412
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。