【Linux操作系统】常用指令(三)(上)

简介: 【Linux操作系统】常用指令(三)

0.Linux根目录下的文件介绍

首先cd /进到根目录下,ls列出当前文件夹下所有文件:


3c1f9ceb3d7b45cea7a1c1171abd308c.png

165153f12f661cb08b92588f43382c52.png

/

root,存放root用户的相关文件

home,存放普通用户的相关文件

bin,存放常用命令的目录,如vi,su

sbin,要具有一定权限才可以使用命令

mnt,默认挂载光驱和软驱的目录

etc,存放配置的相关文件

var,存放经常变化的文件,如网络连接的sock文件 、日志

boot,存放引导系统启动的相关文件

usr,安装一个软件的默认目录,相当于windows下的program files

proc,这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息

srv ,service缩写。该目录存放一些服务启动之后需要提取的数据

sys,这是linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统

tmp,这个目录是用来存放一些临时文件的

del,类似于windows的设备管理器,把所有的硬件用文件的形式存储

media,系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了。

opt,这是给主机额外安装软件所摆放,如安装oracle数据库就可放到该目录下默认为空。


1.打印日历 cal

全称📆 :calender

作用:通过特定的选项,查看特定的年和月的信息


 1.打印当前年当前月的日历
 模板:cal
 2.打印某一年12个月的日历:
 模板:cal 年份
 例子:cal 2022
 3.打印当前年上个月,这个月,下个月的日历
 模板:cal -3

2b70b558363cedc41369317e910554a9.png


更多信息:


4b8224b79c7e85529af602a07d9ca4d9.png


2.查找指定文件 find

基本的认识:我们在Linux中使用的指令,程序,工具其实也是c/c++等语言写的,也是文件。

  • 如果我们要查找一条指令,我们可以使用which + 指令
  • 如果我们要查找一个文件,我们可以使用find命令
  • 模板:  find  路径  选项[查找的标准:按文件名,创建时间等]   参照的信息

例子:  find  ~  -name  test.c

(从家目录开始递归查找所有test.c文件,打印出从家目录开始的相对路径)

f6dcabc8d201b5794394b35f735ed688.png

 查看某路径下,某文件的位置
 模板:find 路径 -name 文件名
 例子:find . -name test.c

当前文件结构下,比如我要在当前路径,查找test.c文件:

c872c8dbe4ad36e23580a098369a6943.png

956cadfa23ba138b08b8bc44a2393021.png


3.行过滤工具 grep

基本认识:文本三剑客

  • grep 过滤行内容。
  • awk 过滤字段。
  • sed 过滤行内容;修改行内容。

3-1热键第二弹

热键:经常被使用的键

续第一弹热键,借此行过滤工具的章节,我们今天再来给大家增加几个热键:

ctrl+r :通过ctrl+r,然后输入历史命令的部分片段,就可以从历史命令中过滤出相匹配的命令。


tab :当我们只记得命令的前几个字母,后面的字母想不起来的时候,就可以输入记得的前几个字母,然后按下两次tab键,就可以从所有命令中检索出所有已知字符开头的命令。


fccbf9c64ff0a5f65eaa4cc1caa3f8c0.png


上面的热键我之所以在这里给大家讲是因为这里的两个热键和我们行过滤工具grep的功能是类似的,好好体会一下吧~~


3-2 拓展[正则表达式]:


需求:有时候我们可能会想在一篇文章中找到所有的邮箱或者前后端手机号码校验的过程中看看用户输入的手机号码符不符合第一个数字为1,总共11位数,我们这时候就会用到正则表达式。


定义:正则表达式又叫做规则表达式,是一种文本过滤模式,通过一些规则来过滤文本,从而匹配出我们需要的文本信息。(想一想爬虫)


全称:规则表达式(Regular Expression),通常叫做regex或RE.


更多关于正则表达式的一些知识(比如元字符之类的)参照:


[https://www.ydlclass.com/doc21xnv/javase/regex/#%E4%B8%80%E3%80%81%E5%85%83%E5%AD%97%E7%AC%A6]   正则表达式


3-3 grep的使用


全称:全局规则表达式打印(Global Regular Expression Print)


还记得我们之前通过shell脚本写入file.txt文件中的hello 0到hello 1000的文本内容吗?假如我打印file.txt中所有带hello 99的文本行,我这个时候就可以grep 'hello 99' file.txt过滤出所有带'hello 99'的文本行。


f35eff71deb79d0322efcb6af6b82f8d.png


于此同时,我们还可以带上更多的选项来完成我们更准确的需求:

 1.(正向匹配)匹配file.txt中所有带'hello 99'的文本行:
 例子:grep 'hello 99' file.txt
 管道版本:cat file.txt | grep 'hello 99'
 2.(反向匹配-v)匹配file.txt中所有不带'hello 99'的文本行:
 例子:cat file.txt | grep -v 'hello 99'
 3.(大小写忽略-i)大小写忽略匹配file.txt中所有带'hello 99'的文本行:
 cat file.txt | grep -i 'hello 99'

f0f881af19d06decf9ac2997618299b6.png

13510f7a91b0827f272fa66c7bd580d7.png

4.正则表达式的区间写法: 正则提供一个元字符中括号 [] 来表示区间条件。


限定0到9 可以写成[0-9],如果数字不是连续的,比如限定139,可以写成[139]


限定A-Z 写成[A-Z]


限定某些数字 [165] 例子:'hello 990'到'hello 999'的文本行就可以用正则表达式表示为:hello 99[0-9]

 4.(区间过滤 [0-9])区间过滤出'hello 990'到'hello 999'的文本行
 例子:cat file.txt | grep 'hello 99[0-9]'


d1ad16279ba52103f18efc3fc7e3f1ed.png


目录
相关文章
|
4天前
|
Linux
【Linux】初学必知必会的基本指令
【Linux】初学必知必会的基本指令
13 6
|
2天前
|
Linux
linux指令按端口查找和杀死进程
linux指令按端口查找和杀死进程
10 0
|
2天前
|
Linux PHP 开发工具
linux一些常用指令分享
linux一些常用指令分享
7 0
|
2天前
|
关系型数据库 MySQL Linux
Linux操作系统:开源世界的强大引擎
Linux操作系统:开源世界的强大引擎
|
3天前
|
Linux Windows
【Linux】Linux的基本指令_3
【Linux】Linux的基本指令_3
5 0
|
3天前
|
Linux C语言 Windows
【Linux】Linux的基本指令_2
【Linux】Linux的基本指令_2
6 0
|
3天前
|
存储 人工智能 Ubuntu
【Linux】Linux的基本指令_1
【Linux】Linux的基本指令_1
8 0
|
3天前
|
Ubuntu Unix Linux
【在Linux世界中追寻伟大的One Piece】Linux是从哪里来的?又是怎么发展的?基本指令你知道哪些?
【在Linux世界中追寻伟大的One Piece】Linux是从哪里来的?又是怎么发展的?基本指令你知道哪些?
6 0
|
3天前
|
Unix Linux C语言
【Linux】---Linux下基本指令(2)
【Linux】---Linux下基本指令(2)
7 0
|
3天前
|
Unix Linux C语言
【Linux】--- Linux下基本指令(1)
【Linux】--- Linux下基本指令(1)
7 0