网络安全快速入门(五)初识linux操作系统,2024年不想被公司优化

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注运维)
img

正文

格式:

pwd

举例1:

我查看我现在当前位置

[root@localhost ~]# pwd
/root

下一行给出反馈/root,说明我们现在所在的位置为root目录下

举例2:

[root@localhost /]# pwd
/

同理可得我们现在处于根目录下

[root@localhost 222]# pwd
/111/222

pwd命令就是一个查看当前路径命令,作用也仅仅如此,无其他作用。

5.6.2 cd

全称:Change Directory

作用:切换目录的命令

格式

cd 目标位置

这里不仅仅要用到格式,还要用到一些参数。大致参数如下

cd /:进入根目录
cd ~:进入当前用户的家目录
cd  :进入当前用户的家目录
cd -:返回上一次cd前所在目录
cd ../:返回上一级目录

主要是用于切换其他命令,直接举例

例子1

[root@localhost /]# cd 111/222/333
[root@localhost 333]# 

上一条代码是从根目录跳转到根目录下的111/222/333目录中

例子2

[root@localhost ~]# cd /
[root@localhost /]# 

从root的家目录下切换到根目录下

例子3

[root@localhost 222]# cd ../333
[root@localhost 333]# 

从222目录跳转到同级目录的333中(因为222和333为同一级目录,所以要先返回上一级目录在进行跳转!)

注意:
  • 路径是连续的,不能加空格
  • 目录和目录之间,用/进行分隔
  • 如果目标是一个目录,那么最后的/可加可不加
  • 如果目标是一个文件,那么最后的/不可加!

cd跳转就这些内容,下一个!

5.6.3 clear和reboot
clear

作用:清空屏幕

格式:

clear

注:可用快捷键CTRL+L进行快速清空屏幕

reboot

作用:重启系统

格式

reboot

重启Linux系统

5.6.4 touch

作用:新建空白文本文件

格式1:

touch 文件名 在当前位置下创建文件

格式2:

touch 路径/文件名 在指定的位置下创建文件

几个常用的创建命令和路径

touch a1.txt # 在当前目录下创建a1.txt
 touch /a1.txt # 在根目录下创建a1.txt
 touch ~/a1.txt # 在当前用户家目录下创建a1.txt
 touch /etc/a1.txt # 在/etc下创建a1.txt
 touch /etc/sysconfig/a1.txt # 在/etc/sysconfig/下创建a1.txt
 touch ../a1.txt # 在当前所在目录的上一级目录中,创建a1.txt
 touch ../../a1.txt # 在当前所在目录的上一级的上一级目录中,创建a1.txt
 touch ../sysconfig/a1.txt #在当前所在目录的上一级目录中进入sysconfig目录中创建a1.txt

(注意:/        …/      ./         ~        等一些符号在大多数需要查看路径的命令中都适用!! )

另外,因为Linux的宗旨是一切皆为文件,因此默认文件大部分为文本文件,但不存在后缀,因此可能需要操作者自行添加后缀以方便辨认!!!

5.6.5执行命令报错信息

通过上面操作我们可以看到,我们发出命令之后系统通常是没有反馈的,我们也不知道自己究竟是否做对了,这小节我们就着重说一下报错,这里要注意Linux的执行命令的一个特点。

执行命令可能成功也可能失败
  • 通常执行成功是没有信息的
  • 通常执行失败都会有返回信息

(因此,不给回复的结果往往是最好的结果0.O)

常见情况下导致命令执行失败下的几种可能

第一种:命令写错了,报错信息格式

 bash: 命令 command not found ...(命令为未出)

第二种:文件路径错误,报错信息格式

touch: cannot touch /taaaa/aaa.txt : no such file or directory
命令: 报错提示                     : 产生错误的原因(没有文件目录)

第三种:没有权限

命令   : 报错提示                    : 产生错误的原因(无权访问)
 touch: cannot touch /taaaa/aaa.txt : permission denied

这种情况下普通用户比较常见,因此建议各位在练习的时候用root进行练习!

5.6.6  IS

作用:查看当前位置或者是指定的位置下,有什么文件

格式:

格式1:ls # 查看当前位置下文件
格式2:ls ./ # 查看当前位置下文件
格式3:ls 路径 # 查看指定的路径下有什么文件

注意:这里开始要有选项了

选项及注意:
  • -a 显示所有文件,包括隐藏文件【linux中的隐藏文件是文件名前面是一个 . 】
  • -l 显示文件的属性信息
  1. 如果-l后面跟的是目录的话,那么查看的是该目录下的所有文件属性
  2. 如果-l 后面跟的是文件的话,那么查看的直接就是这个文件的属性
  • -h 以人类易读的方式显示文件的大小
  • -dl 这个命令才是查看目录自己的属性,而不是查看文件下的属性
  • (文件名称前面加.此类文件为隐藏文件)

之前我们说过,短选项可以合并,举个例子,我们想要显示所有文件,又想显示文件属性信息,我们就可以直接像这样子写

ls -al (查看目标)

话不多说直接举例(因为篇幅原因这里只展示一个结果结果,请各位见谅):

例子1:查看根目录下的全部的文件

ls /

例子2:查看当前位置下的全部文件

方案1:ls 
方案2:ls ./

例子3:查看当前位置下所有文件的属性,包括隐藏文件

方案1:ls  -a  -l  /home
方案2:ls  -al  /home
方案3:ls  -la  /home

看这个文档的结果

drwxr-xr-x.  8 root root  120 3月  14 20:02 .
dr-xr-xr-x. 18 root root  272 3月  14 19:25 ..
drwxr-xr-x.  2 root root    6 3月  13 19:42 2222
drwxr-xr-x.  2 root root    6 3月  14 19:33 a
-rw-r--r--.  1 root root    0 3月  14 19:50 a.txt
drwxr-xr-x.  2 root root    6 3月  14 19:33 b
-rw-r--r--.  1 root root    0 3月  14 19:55 b.txt
drwxr-xr-x.  2 root root    6 3月  14 19:33 c
-rw-r--r--.  1 root root    0 3月  14 19:55 c.txt
-rw-r--r--.  1 root root    0 3月  14 19:55 d,txt
drwxrwxrwt. 15 root root 4096 3月  14 19:48 tmp
drwxrwxrwt. 15 root root 4096 3月  14 19:48 tmp2

可以看到为上述内容,那我们该如何查看文档属性呢?

每行的第一个字符为文件属性,还有其他的文件属性类别,如下:

关于文件类型:
  • 目录[d]:文件夹
  • 一般文件[-]:文档,例如doc、txt
  • 设备文件[b 或者 c]:指的是计算机中的外部设备,例如硬盘、u盘、键盘、鼠标
  • 链接文件[l]:快捷方式
5.6.7 mkdir

全称:MaKe DIRectory

作用:新建文件夹/目录

格式:

格式1:在当前位置下直接创建目录:mkdir 目录名
格式2:在指定位置下直接创建目录:mkdir [选项] 路径/目录名
选项:

-p 在父目录不存在的情况下会自动创建父目录

注:目录后加空格输入路径及目录名,可同时创建多个目录

举例:

1.在tmp下,创建目录a1,在a1里面创建a2,在a2,里面创建a3

mkdir  -p  /tmp/a1/a2/a3

2.在tmp下,创建目录a1、a2、a3、a4四个目录

mkdir  -p  /tmp/a1 /tmp/a2 /tmp/a3 /tmp/a4

这里就不展示反馈了,直接下一个

5.6.8相对路径和绝对路径
绝对路径
  • 就是完整路径
  • 在写绝对路径的时候,是从根目录开始写
相对路径
  • 不是完整的路径
  • 在相对路径的时候,是从当前路径开始写

举例

当前我们的工作目录是 /etc/sysconfig

切换到根下

相对路径写法:cd ../../
绝对路径写法:cd /

切换到sysconfig下面的network-scripts目录

相对路径写法:cd network-scripts
相对路径写法:cd ./network-scripts
绝对路径写法:cd /etc/sysconfig/network-scripts

老规矩,不举例,直接下一个。

5.6.9   cp

全称:copy

作用:复制文件或者是目录

格式:

cp  [选项]  源文件   目的路径
选项:
  • -a:在复制文件的过程中,保持文件的属性不变,另外,也可以实现复制目录【cp默认无法直接复制目录】
  • -r:递归复制。这个选项就是单纯的用来实现复制目录。

举例:将tmp下的目录a001复制到个根下

 cp  -a  /tmp/a001  /

例子2:将当前位置下的c.txt 复制到home下

 cp c.txt /home

这里需注意:

  • 文件名前,如果有路径,就是从指定的路径下找文件,例如 /home/a.txt,就是从home下找 a.txt文件
  • 文件名前,如果没有路径,就是从当前路径下找文件,例如 a.txt,就是从当前位置下找a.txt文 件

举例三:看看下面命令表示什么

cp -a a1 a2
cp -a a1 a2 

第一次执行是将a1复制到当前文件名称为a2

第二次执行是将a1放到a2目录下

5.6.10 mv

全称:move

作用:移动文件或者是目录

格式:

mv 源文件 目的路径

这里与cp命令大差不差,只是cp命令保留原文件,mv命令不保留原文件

这里就举一个例子

下面命令执行效果

mv /home/a.txt /aaa

这个命令有三种可能:

  1. /aaa不存在的情况下,那么这个命令就是将a.txt移动到根下,并且名字修改为aaa
  2. /aaa存在,而且是目录,那么这个命令就是将 a.txt 移动到 /aaa下面,文件名不变
  3. /aaa存在,而且是一般文件,那么这个命令就是将 a.txt 移动到 /下,并且改名成 aaa 将原有文件覆盖

注意:(假设在移动ttt会做以下判断)

  • 在进行移动的时候,会首先判断,目标ttt是否存在 如果不存在,那么就会将原始文件移动到 / 下,并改名成ttt
  • 如果存在,那么就会判断这个文件的类型
  • 如果类型是目录,那么就会将b.txt移动到ttt中
  • 如果类型是文本文件,那么就会将目标位置下的ttt文件用b.txt覆盖掉

重要提醒:

  1. 在linux中,文件的后缀名,对于文件的属性,没有任何影响
  2. 在前面的案例中,我们加上后缀名,是为了让大家好理解,但是本质上加不加没区别
  3. 一定记住,linux中,仅仅看名字,是无法判断文件的类型的是文件还是目录
5.6.11 rm

全称:ReMove

作用:删除文件或者是目录的指令

格式:

rm -rf 要删除的文件或者目录
选项:
  • -r:这个选项是专用于删除目录【在删除文件的时候,也可以加这个选项】
  • -f:这个选项是强制删除【删除过程不会进行询问】

此命令用法类似于ls,直接给上例子

删除tmp下的a.txt
rm -rf /tmp/a.txt
 
删除根下的a.txt
rm -rf /a.txt
 
删除当前位置下的a.txt
rm -rf a.txt
rm -rf ./a.txt
5.6.12 通配符

通配符就是一些具有特殊的含义的符号,常用的通配符:

*:表示任意个任意字符
?: 表示任意一个字符
|:前后可以分别写一个命令,通过管道符,可以见前面命令的执行结果传递给后面的命令,让后面的
命令再处理一次
*的举例

表示以a为开头的文件名

a*
 
可以匹配
 aaaaaaa 
 a11112312341234
 a
不能匹配
 caaasdfasfdasdfasf

表示以a为结尾的文件名

*a
 
可以匹配
 asdfasdfasdfa
 w4dsgfdsgdfgaaasdasfda
 a
 aa
 
不能匹配
 aaaax

表示文件名包含a

*a*
 
可以匹配
 222afsf
 a

(*代表的是任意个任意字符,说明*那就是零到无数个的所有字符,因此全都可以表示出来)

?的举例

表示文件名是由三个字符的构成

???

表示倒数第三三个字符是c的文件

*c??

表示第三个字符是c的文件

 *c??

(?与*的区别在于,?可以表示任意个任意字符,而?只能表示一个任意字符,在使用过程中视情况而定!!!)

|的举例

创建一个目录8并查看该目录的当前位置

 mkdir 8|pwd

该命令的意思是先执行mkdir指令创建8的目录,然后查看8目录的位置,这么写看上去比较简洁,但同时命令相对来说也较为复杂,也是视情况而定!

5.6.13 cat命令

作用:查看文本文件的内容【可以将多个文件的内容一块显示出来】

格式:

cat 文件名 [文件名]

(【】里面也是个文件名,这是个选项,通过【】可以将多个文件内容一块显示出来,但基本上用不到,因此大部分情况下是不加【】的)

举例:

将当前文件下的a.txt 和passwd一起显示出来

 cat a.txt passwd

(注意:用cat只能查看一般内容,不能查看目录!!!)

5.6.14 more

作用:查看文件的内容【比较适合查看大文件】

格式:

more 文件名

上例子

查看当前目录下的passwd文件

more passwd

(注意:在阅读大文件的时候可以看到下面有个如下图的一个进度条,这个进度条是该文件已经显示出来的进度,如果我们需要翻页要进行以下操作)。

more的操作

  • 敲回车:显示下一行
  • f:显示下一屏
  • 敲空格:显示下一屏
  • b:显示上一屏
  • q:退出查看
5.6.15 less

作用:查看文件的内容【比较适合查看小文件】

格式:

less 文件名

less的操作:

  • 敲回车:显示下一行
  • f:显示下一屏
  • 敲空格:显示下一屏
  • b:显示上一屏
  • q:退出查看
  • (方向键也可以去查看上下行)
5.6.16 head

作用:查看文件的内容【默认是看文件的前10行】

格式:

head -n 文件名

要查看前几行就在n后面加几,话不多说直接举例

查看passwd前三行:

head -n3 passwd

查看passwd前十行

head passwd

5.6.17 tail

作用:查看文件的内容【默认是看文件的最后10行】

格式:

tall -n 文件名
选项:
  • -f: 动态监控文件内容变化,常用于监控日志文件变化

(这个选项一般用于查看登录日志等用途,因为笔者这边并没联网,所以不做演示)

例子:

查看文件最后十行

tail /etc/passwd

查看passwd最后十五行

tail -n15 /etc/passwd

完成,下一个!

5.6.18 wc

作 用:统 计 文 件 中 有 多 少 行 、 单 词 、 字 符

格式:

wc [选项] 文件

选项:

  • -w 统计单词
  • -c 统计字符
  • -l 统计行

直接举例:

查看pass下的单词行数和字符数

wc passwd

看结果

149  231 6307 passwd

上述结果意思分别是149行,231个单词及6307字符

例子2

查看passwd有多少单词

wc -w passwd

反馈如下

231 passwd

好了,接下来我们来个大活

例子3:

计算etc下有多少个文件

ls -l /etc |wc -l

看反馈

177

上面就是管道符的用处,将第一个命令的输出结果直接传递到第二个命令然后输出第二个命令的结果,当然也可以多个管道符一起是用来创建一个命令组。

5.6.19 vi

作用:创建或者是编辑一个文本文件

格式:

vi  文件名
vi  路径/文件名

vi在不同情况下使用也是有不同的效果的,

vi的三种效果:

(1)如果这个文件是存在的,而且是文本文件,那么vi就会直接打开这个文件

(2)如果这个文件是存在的,而且是目录文件,那么vi也可以打开这个文件,但是无法正常的保存

(3)这个文件不存在 ,vi会自动的创建一个新的空文件

注意:
  • cat、head、tail、more、less 和vi 都可以查看文件中的内容
  • 但是vi,主要是用于对文件内容进行修改
  • 而其他的命令是查看文件的内容

vi和之前的cat,head,tail,more,less命令的相同点是都可以查看文件内容,但vi主要作用是对文件进行编辑和修改,而其它文件只能查看!!

vi是一个模块化的工具,因此他有三种模式:

vi的三种模式:
  • 查看模式
  • 输入模式
  • 末行模式

三种模式功能也各不相同,我们一个一个看

vi查看模式

进入vi默认的就是查看模式,查看模式与其他模式的区别是左下角没有任何字样

如下图

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
177


上面就是管道符的用处,将第一个命令的输出结果直接传递到第二个命令然后输出第二个命令的结果,当然也可以多个管道符一起是用来创建一个命令组。



5.6.19 vi

作用:创建或者是编辑一个文本文件

格式:

vi  文件名
vi  路径/文件名

vi在不同情况下使用也是有不同的效果的,

vi的三种效果:

(1)如果这个文件是存在的,而且是文本文件,那么vi就会直接打开这个文件

(2)如果这个文件是存在的,而且是目录文件,那么vi也可以打开这个文件,但是无法正常的保存

(3)这个文件不存在 ,vi会自动的创建一个新的空文件

注意:
  • cat、head、tail、more、less 和vi 都可以查看文件中的内容
  • 但是vi,主要是用于对文件内容进行修改
  • 而其他的命令是查看文件的内容

vi和之前的cat,head,tail,more,less命令的相同点是都可以查看文件内容,但vi主要作用是对文件进行编辑和修改,而其它文件只能查看!!

vi是一个模块化的工具,因此他有三种模式:

vi的三种模式:
  • 查看模式
  • 输入模式
  • 末行模式

三种模式功能也各不相同,我们一个一个看

vi查看模式

进入vi默认的就是查看模式,查看模式与其他模式的区别是左下角没有任何字样

如下图

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
[外链图片转存中…(img-K1kUO8hv-1713270546748)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值