2021年Linux就该这么学第3课-第2章节2.3-2.8

2021年Linux就该这么学第3课-第2章节2.3-2.8

第二章节

2.3常用系统命令
1.echo命令

echo命令用于在终端输出字符串或变量提取后的值,格式为
echo 字符串
echo $变量
在这里插入图片描述

2.date命令

date命令用于显示及设置系统的时间或日期,格式为
date 选项 “+指定的格式”
*tips:常用格式代表字符
date命令中的参数以及作用

参数作用
%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键)

%Y-年 %m-月 %d-日 %H-时 %M-分 %S-秒
在这里插入图片描述

3.reboot命令

reboot命令用于立即重启系统,格式为
reboot

*tips其他重启命令作用
shutdown -r now立即重启
shutdown -r 1010分钟后重启
shutdown -r 20:1020:10分的时候重启
4.poweroff命令

poweroff命令用于关闭系统,格式为
poweroff

*tips其他关机命令
halt
init 0
5.wget命令

wget命令用于在终端中下载网络文件,格式为
wget 参数 下载地址

参数作用
-b后台下载模式
-P下载到指定目录
-t最大尝试次数
-c断点续传
-p下载页面内所有资源,包括图片、视频等
-r递归下载
wget https://www.linuxprobe.com/docs/LinuxProbe.pdf
(下载Linuxprobe指定路径的PDF文件)

在这里插入图片描述

wget -r -p https://www.linuxprobe.com
(递归下载linuxprobe网站的所有内容)

在这里插入图片描述

6.ps命令

ps命令用于查看系统中的进程状态,格式为
ps 参数

参数作用
-a显示所有进程(包括其他用户的进程)
-u用户以及其他详细信息
-x显示没有控制终端的进程

在Linux系统中,有5种常见的进程状态,分别为运行、中断、不可中断、僵死与停止,其各自含义如下所示。

status状态含义
R(运行)进程正在运行或在运行队列中等待。
S(中断)进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该 状态。
D(不可中断)进程不响应系统异步信号,即便用kill命令也不能将其中断。
Z(僵死)进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。
T(停止)进程收到停止信号后停止运行。

在这里插入图片描述
tips:
1.除了上面的五种常见进程状态,还有可能是高优先级(<),低优先级(N),被锁进内存(L),包含子进程(s)以及多线程(l)这五种补充形式。
2.pstree命令
pstree命令用于以树状图的形式展示进程之间的关系,英文全称为:“process tree”,输入后回车执行即可。

在这里插入图片描述

7.top命令

top命令用于动态地监视进程活动与系统负载等信息,格式为
top
在这里插入图片描述
*tips:
1.第一行内的users,5、6、7版本代表终端用户,8版本代表登录用户数
2.KibMem代表真实的物理内存,KibSwap代表交换分区
3.load average中从左往右一次代表了1分钟内、5分钟内、15分钟内的系统负载情况。判断当前系统负载情况,可以从右往左进行查看,从右往左以此减小,代表负载压力在减小,反之增大。

8.pidof命令

pidof命令用于查询某个指定服务进程的PID号码值,语法格式为:
pidof 参数 服务名称
每个进程的进程号码值(PID)是唯一的,可以用于区分不同的进程,来查询本机上sshd服务程序的PID:
在这里插入图片描述

9.kill命令

kill命令用于终止某个指定PID值的服务进程,语法格式为:
kill 参数 进程的PID
接下来,使用kill命令把上面用pidof命令查询到的PID所代表的进程终止掉,其命令如下所示。这种操作的效果等同于强制停止sshd服务:
在这里插入图片描述
但也有时候会提示进程无法被终止,则可以加参数-9,代表最高级别的强制杀死进程

10.killall命令

killall命令用于终止某个指定名称的服务所对应的全部进程,语法格式为:
killall 参数 服务名称
下图演示为终止httpd服务的所有进程
在这里插入图片描述

2.4系统检测命令
1.ifconfig命令

ifconfig命令用于获取网卡配置与网络状态等信息,英文全称为:“interface config”,语法格式为:
ifconfig 参数 网络设备
在这里插入图片描述

2.uname命令

uname命令用于查看系统内核版本与系统架构等信息,英文全称为:“Unix name”,语法格式为:
uname 参数
在使用uname命令时,一般要固定搭配上-a参数来完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、压制时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息:
在这里插入图片描述
在这里插入图片描述
查看当前系统版本的详细信息,则需要查看redhat-release文件,其命令以及相应的结果如下:
在这里插入图片描述

3.uptime命令

uptime命令用于查看系统的负载信息,输入后回车执行即可。
相当于top命令的第一行
在这里插入图片描述Tips
负载值越低越好指的是对运维人员来讲的,越低越安全省心。但是公司购置的硬件设备如果长期处于空闲状态,明显是种资源浪费,老板也不会开心。所以我们建议是负载值保持在1左右,不要超过5就好。

4.free命令

free命令用于显示当前系统中内存的使用量信息,语法格式为:
free 参数
在这里插入图片描述
在使用free命令时,可以结合使用-h参数以更人性化的方式输出当前内存的实时使用量信息,即free -h。

5.who命令

who命令用于查看当前登入主机的用户终端信息,输入后回车执行即可。
在这里插入图片描述

登陆的用户名终端设备登陆到系统的时间
roottty22020-01-13 09:48 (tty2)
6.last命令

last命令用于调取主机的被访记录,输入后回车执行即可。Linux系统会将每次登录信息都记录到日志文件中,如果那天我们想翻阅了,那就直接执行这条命令就行:
在这里插入图片描述
tips:last输出的信息仅供参考,此输出内容可被篡改

7.netstat命令

netstat命令用于显示如网络连接、路由表、接口状态等的网络相关信息,英文全称为:“network status”,语法格式为:“netstat [参数]”。

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

显示详细的网络状况

显示网卡列表
在这里插入图片描述

8.history命令

history命令用于显示执行过的命令历史,语法格式为:
history 参数
history命令应该是运维人员最喜欢的命令。执行history命令能显示出当前用户在本地计算机中执行过的最近1000条命令记录。如果觉得1000不够用,可以自定义/etc/profile文件中的HISTSIZE变量值。在使用history命令时,可以使用-c参数清空所有的命令历史记录。还可以使用“!编码数字”的方式来重复执行某一次的命令。总之,history命令有很多有趣的玩法等待您去开发。
在这里插入图片描述
历史命令会被保存到用户家目录中的.bash_history文件中。Linux系统中以点(.)开头的文件均代表隐藏文件,这些文件大多数为系统服务文件,可以用cat命令查看其文件内容:

[root@linuxprobe ~]# cat ~/.bash_history

要清空当前用户在本机上执行的Linux命令历史记录信息,可执行如下命令:

[root@linuxprobe ~]# history -c
9.sosreport命令

sosreport命令用于收集系统配置及架构信息并输出诊断文档,输入后回车执行即可。
在下面的输出信息中,加粗的部分是收集好的资料压缩文件以及校验码,将其发送给技术支持人员:
在这里插入图片描述

2.5工作目录切换命令
1.pwd命令

pwd命令用于显示用户当前所处的工作目录,英文全称为:“print working directory”,输入后回车执行即可。
查看当前所处的工作目录:

[root@linuxprobe etc]# pwd
/etc
2.cd命令

cd命令用于切换当前的工作路径,英文全称为:“change directory”,语法格式为:
cd 参数 目录
使用“cd -”命令返回到上一次所处的目录
使用“cd…”命令进入上级目录
使用“cd ~”命令切换到当前用户的家目录,亦或使用“cd ~username”切换到其他用户的家目录
例如,切换进/etc目录中:

[root@linuxprobe ~]# cd /etc

同样的道理,可使用下述命令切换到/bin目录中:

[root@linuxprobe etc]# cd /bin

要返回到上一次的目录(即/etc目录),可执行如下命令:

[root@linuxprobe bin]# cd -
/etc
[root@linuxprobe etc]#

还可以通过下面的命令快速切换到用户的家目录:

[root@linuxprobe etc]# cd ~
[root@linuxprobe ~]#

tips
随着切换目录的操作,命令提示符也在发生变化,例如[root@linuxprobe etc]#就是在告诉我们当前所处在/etc中。

3.ls命令

ls命令用于显示目录中的文件信息,英文全称为:“list”,语法格式为:
ls 参数 文件名称
所处的工作目录不同,当前工作目录下能看到的文件肯定也不同。
“-a”参数看到全部文件(包括隐藏文件)
“-l”参数可以查看文件的属性、大小等详细信息

将这两个参数整合之后,再执行ls命令即可查看当前目录中的所有文件并输出这些文件的属性信息:
在这里插入图片描述
“-d”参数查看目录属性信息。例如,可使用如下命令查看/etc目录的权限与属性信息:
在这里插入图片描述

2.6文本文件编辑命令
1.cat命令

cat命令用于查看纯文本文件(内容较少的),英文全称为:“concatenate”,语法格式为:
cat 参数 文件名称
Linux系统中有多个用于查看文本内容的命令,每个命令都有自己的特点,比如这个cat命令就是用于查看内容较少的纯文本文件的
cat -n查看文本内容时显示行号
在这里插入图片描述

2.more命令

more命令用于查看纯文本文件(内容较多的),语法格式为:
more 参数 文件名称
more命令会在最下面使用百分比的形式来提示您已经阅读了多少内容,还可以使用空格键或回车键向下翻页:
在这里插入图片描述

3.head命令

head命令用于查看纯文本文件的前N行,语法格式为:
head 参数 文件名称
在这里插入图片描述

4.tail命令

tail命令用于查看纯文本文件的后N行或持续刷新文件的最新内容,语法格式为:
tail 参数 文件名称
tail -n 10 文件名,查看文件后10行
在这里插入图片描述
tail -f 文件名,持续刷新文件内容,下面操作为查看实时的日志内容
在这里插入图片描述

5.tr命令

tr命令用于替换文本文件中的字符,格式为
tr 原始字符 目标字符
例子:
cat 1.txt | tr [a-z] [A-Z]
查看1这个文本并把文本内的小写字母替换成大写字母

6.wc命令

wc命令用于统计文本的行数、字数、字节数,格式为
wc 参数 文本名称

常用参数作用
-l只显示行数
-w只显示单词数
-c只显示字节数
7.stat命令

stat命令用于查看文件的具体存储信息和时间等信息,格式为
stat 文件名称

在这里插入图片描述
Atime:最后一次访问文件内容的时间
Mtime:最后一次修改文件内容的时间
Ctime:最后一次修改文件属性的时间

8.cut命令

cut命令用于按“列”提取文本字符,格式为
cut 参数 文本

常用参数作用
-d后面填写间隔符号
-f设置要查看的列数

cut -d: f1 /etc/passwd
提取/etc/passwd 文本的第一列,-d: 用:来分隔文本内容,-f1 查看分隔后的第一列

9.diff命令

diff命令,用于比较多个文本文件的差异,格式为
diff 参数 文件

常用参数作用
-brief显示文本文件比较以后的结果
-c显示文件内容的具体不同

直接比较两个文件并输出结果
在这里插入图片描述
使用-c参数比较文本的具体不同
在这里插入图片描述

2.7文件目录管理命令
1.touch命令

touch命令用于创建空白文件或者设置文件的时间,格式为
touch 参数 文件

常用参数作用
-a仅修改读取时间,Atime
-m仅修改修改时间,Mtime
-d同时修改读取时间Atime和修改时间Mtime

touch -d “2020-01-01 00:00” 1.txt
修改1.txt文件的Atime和Mtime为2020年1月1号0点0分

2.mkdir命令

mkdir命令用于创建空白的目录,格式为
mkdir 参数 目录

示例说明
mkdir hello单独创建hello目录
mkdir -p a/b/c递归创建具有层级关系的目录a/b/c
3.cp命令

cp命令用于复制文件或目录,格式为
cp 参数 源文件 目标文件

复制操作具体分为3种情况
1.如果目标文件是目录,则会把源文件复制到该目录中;
2.如果目标文件也是普通文件,则会询问是否要覆盖它;
3.如果目标文件不存在,则执行正常的复制操作。
4.mv命令

mv命令用于剪切文件或将文件重命名,格式为
mv 参数 源文件 目标路径或目标文件名

重命名操作如下重命名操作
剪切文件如下
移动2.cfg 到 /root/test 目录下
在这里插入图片描述
剪切目录如下,使用-f 进行目录操作
在这里插入图片描述

5.rm命令

rm命令用于删除文件或目录,格式为
rm 参数 文件

常用参数作用
-f强制删除不提醒
-r删除目录
6.dd命令

dd命令用于按照指定大小和个数的数据块来复制文件,格式为
dd 参数

常用参数作用
if输入的文件名称(要复制的文件名称)
of输出的文件名称(复制后生成的文件的名字)
bs设置每个数据块的大小
count设置要复制的数据块的个数

示例:从 /dev/zero 设备文件中复制一个大小为500M的数据块,生成文件的名称为test
在这里插入图片描述

7.file命令

file命令用于查看文件的类型,格式为
file 文件名
查看Music、initial-setup-ks.cfg文件的类型
在这里插入图片描述

2.8打包压缩与搜索命令
1.tar命令

tar命令用于对文件进行打包压缩或解压,格式为
tar 参数 文件

参数作用
-c创建压缩文件
-x解开压缩文件
-t查看压缩包内有哪些文件
-z用Gzip压缩或解压
-j用bzip2压缩或解压
-v显示压缩或解压的过程
-f目标文件名
-p保留原始的权限与属性
-P使用绝对路径来压缩
-C指定解压到的目录

压缩常用格式
tar -czvf 压缩包名称.tar.gz 要被压缩的目录或文件
tar -cjvf 压缩包名称.tar.bz2 要被压缩的目录或文件
***示例 用Gzip格式压缩 /etc目录,并用目录名命名文件

在这里插入图片描述压缩后的文件在这里插入图片描述解压常用格式
tar -xzvf 要解压的压缩包.tar.gz -C 要解压到的目录
tar -xjvf 要解压的压缩包.tar.bz2 -C 要解压到的目录
***示例 用Gzip格式解压文件到/root/etc目录中
在这里插入图片描述

2.grep命令

grep命令用于在文本中执行关键词搜索,并显示匹配的结果,格式为
grep 参数 文件
tips:grep 命令是按行提取

参数作用
-b将可执行文件(binary)当作文本文件(text)来搜索
-c仅显示找到的行数
-i忽略大小写
-n显示行号
-v反向选择——仅列出没有“关键词”的行

示例:从/etc/passwd中搜索当前系统中不允许登录系统的所有用户信息,终端设置成/sbin/nologin是不允许登录系统的
grep /sbin/nologin /etc/passwd
在这里插入图片描述

3.find命令

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 …… {} \ ;后面可跟用于进一步处理搜索结果的命令

示例:搜索/etc目录中所有以host开头的文件列表
在这里插入图片描述
示例:搜索/根目录下所有以etc命名的目录
在这里插入图片描述
tips:在整个文件系统中找出所有归属于linuxprobe用户的文件并复制到/root/findresults目录。
该实验的重点是“-exec {} \ ;”参数,其中的{}表示find命令搜索出的每一个文件,并且命令的结尾必须是“\ ;”。完成该实验的具体命令如下:
find / -user linuxprobe -exec cp -a {} /root/findresults/ \ ;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值