【Linux】基本操作(下)和权限开胃菜

目录

目录

17.find查找文件

18.which查找命令

这里有一个很想慢慢来讲的ls和ll的小故事

小插曲之whereis(必须挨着写)

19.grep行过滤(常用选项组合较多)

grep -i

扫描二维码关注公众号,回复: 16890674 查看本文章

grep -n

grep-v

番外之wc: 可以利用管道和wc-l 对行数进行统计

番外之sort指令:sort+filename

番外之uniq:uniq+filename 只可以去行与行 不可以去列之间

20.zip/unzip打包压缩,解压

21.tar默认打包不压缩(注意:tar命令可以带- 也可以不带 -)

举例:tar默认只是打包不压缩,参数-z打包后进行gzip压缩,参数-j打包后进行bzip2压缩

22.bc计算浮点数

23.uname-r获取电脑和操作系统的相关信息

一些热键

补充指令

查看CPU lscpu

查看内存lsmem

who

shell命令以及运行原理

以下是对shell举例子来认识

Linux权限的用户转换概念

这篇博客磨蹭磨蹭居然也写了俩天+,感觉还是得提高效率!


17.find查找文件

Linux下find命令在目录结构中搜索文件,并执行指定的操作。

Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多。这里我们只说了-name选项

在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)

为什么会花费很长的时间,本质上还是因为find是一个没有任何技巧,纯内存中找文件,大力出奇迹的一个指令

语法: find -name 文件名字

功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)

常用选项:

-name 按照文件名查找文件。

 让我们验证一下,我们查找的文件位置是不是正确

发现写的是对的!!

 当我们进行find搜索的时候,可能需要访问磁盘,进而导致效率低下

我们还有 which 也可以进行查找


18.which查找命令

which指令不是在系统中搜索所有的文件,而是只搜索命令

这里有一个很想慢慢来讲的ls和ll的小故事

当我们which ls之后 我们发现有很多不认识的单词

alias:重命名,对指令进行重命名 

-- color = auto的选项这也就是为什么目录dir可以带颜色的原因,在ls指令中居然有颜色的提及

 好了,我们接下来看一个有意思的指令

which ll

 

我们发现ll 和ls-l 的指令一样是底层注定,并且我们已经证实了 

小插曲之whereis(必须挨着写)

 总的来说:一共有三个查找

查找范围:which<whereis<find


19.grep行过滤(常用选项组合较多)

grep对应文本的行过滤工具。默认,会匹配文本中的关键字。匹配上的进行行显示

语法: grep [选项] 搜寻字符串(得加双引号) 文件 

功能: 在文件中搜索字符串,将找到的行打印出来

 常用选项:

-i :忽略大小写的不同,所以大小写视为相同


-n :顺便输出行号


-v :“字符”排除输出

grep -i

grep -n

grep-v

也就是说,我们找不到1000这一个指令

 

验证之后,确实如此 

番外之wc: 可以利用管道和wc-l 对行数进行统计

番外之sort指令:sort+filename

[root@VM-8-3-centos test]# touch file.txt
[root@VM-8-3-centos test]# vim file.txt
[root@VM-8-3-centos test]# cat file.txt
11111111
5555
3333
444
222
[root@VM-8-3-centos test]# sort file.txt
11111111
222
3333
444
5555

番外之uniq:uniq+filename 只可以去行与行 不可以去列之间、

[root@VM-8-3-centos test]# vim file.txt
[root@VM-8-3-centos test]# cat file.txt
11111111
5555
3333
444
222
5555
5555
444
222
222
555
555
[root@VM-8-3-centos test]# uniq file.txt
11111111
5555
3333
444
222
5555
444
222
555
[root@VM-8-3-centos test]# sort file.txt | uniq
11111111
222
3333
444
555
5555


20.zip/unzip打包压缩,解压

语法: zip    自己起一个文件名字.zip    目录或文件 

功能: 将目录或文件压缩成zip格式

常用选项:

-r :递归处理,将指定目录下的所有文件和子目录一并处理

zip -r 你定义的压缩包 dir(要打包压缩的目录)

unzip 你定义的压缩包 -完成在当前目录下进行解包解压的功能(-d选项可以解压到指定路径)

加上-r进行处理即可(注意你当前的路径)

为什么要进行打包和压缩??

 


21.tar默认打包不压缩(注意:tar命令可以带- 也可以不带 -)

打包指的是将多个文件和目录集中存储在一个文件中
压缩则指的是利用算法对文件进行处理
从而达到缩减占用磁盘空间的目的
语法: tar [-cxtzjvf]  打包.tar ll下文件本身的名字
压缩一般以  .tar  为文件结尾
功能: 可以将文件放在一起(打包),也可以根据后缀的改变进行压缩

常用选项:(常用组合)

-x :解开一个压缩文件的参数指令!


-t :查看 tarfile 里面的文件!

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-c :创建新的tar包


-C : 解压到指定目录

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

tar -czf my.tgz test 打包并压缩

tar -xzf my.tgz 解包并解压

举例:tar默认只是打包不压缩,参数-z打包后进行gzip压缩,参数-j打包后进行bzip2压缩

 


22.bc计算浮点数

语法就是选中的部分!!! 得用管道


23.uname-r获取电脑和操作系统的相关信息

语法: uname [选项]


功能: uname用来获取电脑和操作系统的相关信息。


补充说明: uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。

常用选项:

-a:查看计算机的体系结构

-r:显示内核版本号


一些热键

[Tab]按键—具有『命令补全』和『档案补齐』的功能

[Ctrl]-c按键—让当前的程序『停掉』。终止前台的异常程序。

[Ctrl]-d按键—通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;退出当前用户,退出一层另外,也可以用来取代exit


补充指令

查看CPU lscpu

[root@VM-16-16-centos ~]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                2
On-line CPU(s) list:   0,1
Thread(s) per core:    1
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 94
Model name:            Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
Stepping:              3
CPU MHz:               2399.998
BogoMIPS:              4799.99
Hypervisor vendor:     KVM
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              4096K
L3 cache:              28160K
NUMA node0 CPU(s):     0,1

查看内存lsmem

[root@VM-16-16-centos ~]# lsmem
RANGE                                  SIZE  STATE REMOVABLE BLOCK
0x0000000000000000-0x000000001fffffff  512M online        no   0-3
0x0000000020000000-0x000000002fffffff  256M online       yes   4-5
0x0000000030000000-0x000000007fffffff  1.3G online        no  6-15

Memory block size:       128M
Total online memory:       2G
Total offline memory:      0B

who

当前Linux系统的在线用户 (可以看你给密码的兄弟们是不是正在偷偷卷 hhhhhh)


shell命令以及运行原理

shell本质上就是一个外壳

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel) “ ,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel

从技术角度, Shell的最简单定义:命令行解释器(command Interpreter),表现:你看到的命令行提示符,以及可以输入指令并且可以执行。

主要包含

将使用者的命令翻译给核心(kernel)处理。
同时,将核心的处理结果翻译给使用者

shell存在的意义,变相的在保护操作系统

对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序 )

shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

现在我们解释一下什么是命令行解释器 


以下是对shell举例子来认识

shell的感性的认识 

原因一:人和Linux不方便交谈 所以需要shell 

原因二:出现了一个高富帅李四

高富帅已经和如花叠在一起了 王婆不允许我和如花在一起讲话

也就是说 xshell 是拥有拒绝非法操作的能力

课外话:

shell 被叫做外壳统称 Windows的cmd也可以被叫做shell

Linux我们用的外壳程序叫做bash

用户登陆成功的时候,bash就好上 在centos7上 大部分操作系统都是bash

shell叫做媒婆(行业) bash叫做王婆 (具体的某一个人)


Linux权限的用户转换概念

root 用户 超级管理员 权限是非常高的 所以我们的密码一定要保存好 

而且root 和 普通用户的密码不要一样 不然将来对于学习有影响,容易偷懒

Linux下有两种用户:超级用户(root)、普通用户

超级用户:可以再linux系统下做任何事情,不受限制


普通用户:在linux下做有限的事情。


超级用户的命令提示符是“#”,普通用户的命令提示符是“$ ”

命令: su [用户名]
功能:切换用户。
例如,要从root用户切换到普通用户user,则使用 su user。

要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令

想用root执行命令,但不想变成root 就得用sudo 下期博客我们再见! 

这篇博客磨蹭磨蹭居然也写了俩天+,感觉还是得提高效率!

猜你喜欢

转载自blog.csdn.net/weixin_62985813/article/details/132000139