写在最后
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
该案例所表达出的信息如下
当前用户名是root
当前计算机的主机名是localhost
当前所在路径是在根目录下
当前用户身份是 管理员
那么什么是家目录呢?
家目录:
就是用户主目录。家目录分为两种
- 管理员(root)家目录在根目录下的root文件中;
- 普通用户:家目录在/home和用户同名的拿个目录就是用户家目录,(具体在下小节阐述)
5.4.2 Linux目录结构
Linux和Windows在存储上有一点点小区别,具体如下:
(一)Linux和Windows的区别:
Linux是单根系统,而Windows是多根系统。
因为存储系统不同,目录结构也有所不同
windows的目录结构
- windows 是一个多根系统
- 每个磁盘/分区都是一个根
- 你在存储文件的时候,文件一定是存储在某一个根目录之下
- 目录结构是倒树状结构
linux的目录结构
- linux是一个单根系统
- 你在linux中存储文件,只会有一个存储位置,就是 /
- 目录结构是倒树状结构
换句话说,Windows可以进行磁盘分区,可以分出c盘、d盘、e盘、f盘等等,而Linux只有一个磁盘分区,就是"/"。
(二)Linux的核心目录结构
(Linux目录结构如下图,分支的源头即为根目录)
(三)Linux根目录下的主要文件 及用途
Linux初始目录大概如下,所对应的是目录的存放文件类型及用途(如下代码)
/bin:存放的的是命令 /sbin:存放的的是命令 /tmp:存放临时文件(任何用户都可以在这个目录进行读写操作,但是只能操作自己的文件; 这个目录下的文件30天没有被访问或使用,就会被自动删除) /etc:存储各种配置文件 /etc/inittab /etc/rc.local /etc/httpd/httpd.conf /etc/sysconfig/network-scripts/ifcfg-eth0(网卡配置文件) /home:存放普通用户家目录 /root:root用户的家目录 /lib /lib64 /usr:自定义安装软件保存位置 /usr/bin:存放的的是命令 /usr/sbin:存放的的是命令 /var:存储经常发生改变的文件(日志) /var/log/messages /var/log/secure /boot /sys /dev:存储设备文件 /proc
5.5 Linux的命令
5.5.1Linux命令格式
Linux命令格式有以下三个组件构成
命令 [选项] 参数
三个组件的作用
- 命令:linux中所有的命令,是严格区分大小写
- 选项:选项是用于控制命令的执行过程
- 参数:参数是指命令的作用对象
其中,选项分为长选项和短选项,区别如下
- 短选项:-字母
- 长选项:–单词
(一般短选项就是长选项的缩写,并且短选项可以合并,因此大部分情况下都是用短选项来写命令!!)
另外,Linux中文件类型与属性也较为独特。
Linux文件特点
- 命令和文件名都是严格区分大小写
- linux文件的后缀名对于文件的属性没有任何影响
- linux中的核心哲学思想:一切皆为文件
5.6 Linux基础命令
为了方便排版,笔者将常用的基础命令单独做一章节,希望各位海涵。
现在我们通过Linux的一些基础命令来操作系统
5.6.1 pwd 命令
全称:Print Working Directory
作用:显示当前所在路径
格式:
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 显示文件的属性信息
- 如果-l后面跟的是目录的话,那么查看的是该目录下的所有文件属性
- 如果-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
这个命令有三种可能:
- /aaa不存在的情况下,那么这个命令就是将a.txt移动到根下,并且名字修改为aaa
- /aaa存在,而且是目录,那么这个命令就是将 a.txt 移动到 /aaa下面,文件名不变
- /aaa存在,而且是一般文件,那么这个命令就是将 a.txt 移动到 /下,并且改名成 aaa 将原有文件覆盖
注意:(假设在移动ttt会做以下判断)
- 在进行移动的时候,会首先判断,目标ttt是否存在 如果不存在,那么就会将原始文件移动到 / 下,并改名成ttt
- 如果存在,那么就会判断这个文件的类型
- 如果类型是目录,那么就会将b.txt移动到ttt中
- 如果类型是文本文件,那么就会将目标位置下的ttt文件用b.txt覆盖掉
重要提醒:
- 在linux中,文件的后缀名,对于文件的属性,没有任何影响
- 在前面的案例中,我们加上后缀名,是为了让大家好理解,但是本质上加不加没区别
- 一定记住,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: 动态监控文件内容变化,常用于监控日志文件变化
还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!
王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。
对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!
【完整版领取方式在文末!!】
93道网络安全面试题
内容实在太多,不一一截图了
黑客学习资源推荐
最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
😝朋友们如果有需要的话,可以联系领取~
1️⃣零基础入门
① 学习路线
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
② 路线对应学习视频
同时每个成长路线对应的板块都有配套的视频提供:
2️⃣视频配套工具&国内外网安书籍、文档
① 工具
② 视频
③ 书籍
资源较为敏感,未展示全面,需要的最下面获取
② 简历模板
因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!