Linux 命令行完全指南:从入门到精通
1 Linux 命令行概述
1.1 Linux命令行的作用与意义
众所周知,Linux是一个主要通过命令行来进行管理的操作系统,即通过键盘输入指令来管理系统的相关操作,包括但不限于编辑文件、启动停止服务等。这与初学者曾经熟悉的Windows系统使用鼠标点击这类可视化管理大不相同。
使用鼠标进行可视化管理的优势是简单、容易上手,缺点是不能方便快速、批量、自动化地管理系统,而且感觉系统也很臃肿,这个时候Linux系统的命令行管理优势就凸显出来了。使用Linux命令行进行管理,不但可以批量、自动化管理,还可以实现智能化、可视化管理,当然,后者需要开发人员配合开发管理界面来完成,但无论如何,Linux系统的优势基因还是快速、批量、自动化、智能化管理系统及处理业务。
1.2 Linux命令行介绍
安装Linux系统时,无论是使用文本模式(命令行)安装,还是使用图形模式安装,最终管理系统的任务都会落到命令行上。
大多数互联网企业在安装系统时甚至不会安装图形管理软件包,而是直接使用文本模式安装,因此登录后直接面对的就是命令行的界面。
1.3 Linux命令行的开启及退出
在开启主机时,Linux系统会经过一系列的引导和程序加载,最终将会出现登录前的提示界面(如图4-1所示)。
图1-1 CentOS Linux系统登录界面
在图1-1中,将光标定位到login:
字符串后面,输入超级用户管理员root后,按回车键,弹出密码提示框后再输入密码,注意密码是不显示的。输入正确密码之后,再按回车键就可以登录到Linux系统中了。
1.4 Linux命令行提示符介绍
Linux命令行结尾的提示符有#
和$
两种不同的符号,示例代码如下所示:
[root@localhost ~]#
#这是超级管理员root用户对应的命令行
[opsbugs@localhost ~]#
#这是普通用户opsbugs对应的命令行
下面列出Linux系统的命令提示符的详细说明,如下表所示:
提示符 | 说明 |
---|---|
[] | 这是提示符的分隔符号,没有特殊含义; |
root | 显示的是当前的登录用户,现在使用的是 root 用户登录; |
@ | 分隔符号,没有特殊含义; |
localhost | 当前系统的简写主机名(完整主机名是 localhost.localdomain); |
~ | 该符号所在位置显示用户当前所在的目录,此例中用户当前所在的目录是家目录; |
# | 命令提示符,Linux用这个符号标识登录的用户权限等级,超级用户是# ,普通用户是$ ; |
家目录是什么?
Linux系统是纯字符界面,用户登录后,要有一个初始登录位置。这初始登录位置就称为用户的家。
- • 超级用户的家目录: /root/
- • 普通用户的家目录(默认): /home/用户名/
- • 用户在自己的家目录中拥有完整权限。
在命令行执行exit或logout命令可退出命令行,当然也可以使用快捷键Ctrl+d
退出命令行,退出命令行之后,如果需要再次登录,则还是需要输入用户名和密码(除非使用SSH客户端已将用户名和密码保存起来)。
Linux命令提示符由PS1
环境变量控制,可使用命令echo $变量名
输出变量的值,如下所示:
[root@localhost ~]# echo $PS1
#注意PSl是大写的
[\u@\h \W]\$
环境变量PS1
中的值[\u@\h \W]\$
,可以通过全局配置文件/etc/bashrc
或/etc/profile
进行按需配置和调整。
1.临时修改,可修改PSl变量对应的值,来让命令行显示全路径:
[root@localhost ~]# PSl='[\u@\h \w]\$'
#将默认的\W改为\w (小写w),此命令仅临时生效。
2.上面的方法只是临时性的,若要让PSl
变量永久生效,则可修改配置文件。编辑/etc/bashrc
文件,找到符合下面内容的一行(大约在第36行),将内容中的大写W改为小写W, 即可让变量永久生效。也就是将:
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
#改为下面内容,保存并退出/etc/bashrc文件。
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \w]\\$ "
#最后,注销并重新登录系统或直接执行 source /etc/bashrc 使得修改的信息生效,source也可以使用“.”代替。
[root@localhost ~]# source /etc/bashrc
下面解释下PS1
环境变中的值所代表的含义,如下表所示:
PS1变量 | 含义 |
---|---|
\d | 代表日期,格式为 weekday month date,例如:“Mon Aug 1”; |
\H | 完整的主机名称; |
\h | 仅取主机的第一个名字; |
\t | 显示时间为24小时格式,如: HH:MM:SS; |
\T | 显示时间为12小时格式; |
\A | 显示时间为24小时格式: HH:MM; |
\u | 当前用户的账号名称; |
\v | BASH的版本信息; |
\w | 显示完整的路径,其中家目录会以〜代替,这是本例的主角; |
\W | 利用basename取得工作目录名称,所以只会列出最后一个目录; |
# | 执行的第几个命令; |
$ | 提示字符,如果是root,则提示符为#,如果是普通用户,则为$; |
1.5 Linux命令行常用快捷方式
快捷键 | 功能说明 |
---|---|
最有用快捷键 | |
tab | 命令或路径等的补全键,Linux最有用的快捷键; |
移动光标快捷键 | |
Ctrl+a | 光标回到命令行首; |
Ctrl+e | 光标回到命令行尾; |
Ctrl+f | 光标向右移动一个字符(相当于方向键右键); |
Ctrl+b | 光标向左移动一个字符(相当于方向键左键); |
剪切、粘贴、清除快捷键 | |
Ctrl+Insert | 复制命令行内容; |
Shift+Insert | 粘贴命令行内容; |
Ctrl+k | 剪切(删除)光标处到行尾的字符; |
Ctrl+u | 剪切(删除)光标处到行首的字符; |
Ctrl+w | 剪切(删除)光标前的一个单词; |
Ctrl+y | 粘贴Ctrl+u/Ctrl+k/Ctrl+w删除的文本; |
Ctrl+c | 中断终端正在执行的任务或者删除整行; |
Ctrl+h | 删除光标所在处的前一个字符(相当于退格键); |
Ctrl+d | 删除光标后的一个字符(delete); |
重复执行命令快捷键 | |
Ctrl+d | 退出当前Shell命令行(命令行无字符),退出Shell命令之后,若在执行则关闭连接窗口; |
Ctrl+r | 搜索命令行使用过的历史命令记录; |
Ctrl+g | 从执行Ctrl+r的搜索历史命令模式中退出; |
控制快捷键 | |
Ctrl+l | 清除屏幕的所有内容,并在屏幕的最上面开始一个新行,等同于clear命令; |
Ctrl+s | 锁定终端,使之无法输入内容; |
Ctrl+q | 解锁执行Ctrl+s的锁定状态; |
Ctrl+z | 暂停执行在终端运行的任务; |
!号开头的快捷命令 | |
!! | 执行上一条命令; |
!pw | 执行最近以pw(或其他)开头的命令; |
!pw:p | 仅打印最近以pw(或其他)开头的命令,但不执行; |
!num | 执行历史命令列表的第num(数字)条命令; |
!$ | 上一条命令的最后一个参数; |
ESC相关 | |
Esc+.(点) | 获取上一条命令最后的部分(空格分隔); |
Esc+b | 移动到当前单词的开头; |
Esc+f | 移动到当前单词的结尾; |
Esc+t | 颠倒光标所在处及其相邻单词的位置; |
1.4 命令的基本格式
在操作Linux命令之前,先看下命令操作语法格式。在Linux系统运维工作中,常用的操作大多都是在命令行下实现的,Linux系统命令操作语法的格式具体如下:
[root@localhost ~]# 命令 [选项] [参数]
选项 | 说明 |
---|---|
选项 | 是用于调整命令功能的,[]代表可选项,也就是有些命令可以不写选项或参数,也能执行; |
参数 | 是命令的操作对象,如果省略参数,是因为有默认参数 |
注意: 命令、参数选项、文件或路径两两之间至少要有一个空格。
黑客/网络安全学习路线
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
网络安全学习资源分享:
下面给大家分享一份2025最新版的网络安全学习路线资料,帮助新人小白更系统、更快速的学习黑客技术!
一、2025最新网络安全学习路线
一个明确的学习路线可以帮助新人了解从哪里开始,按照什么顺序学习,以及需要掌握哪些知识点。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
读者福利 |
优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)
我们把学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战。

L1级别:网络安全的基础入门
L1阶段:我们会去了解计算机网络的基础知识,以及网络安全在行业的应用和分析;学习理解安全基础的核心原理,关键技术,以及PHP编程基础;通过证书考试,可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。

L2级别:网络安全的技术进阶
L2阶段我们会去学习渗透测试:包括情报收集、弱口令与口令爆破以及各大类型漏洞,还有漏洞挖掘和安全检查项目,可参加CISP-PTE证书考试。

L3级别:网络安全的高阶提升
L3阶段:我们会去学习反序列漏洞、RCE漏洞,也会学习到内网渗透实战、靶场实战和技术提取技术,系统学习Python编程和实战。参加CISP-PTE考试。

L4级别:网络安全的项目实战
L4阶段:我们会更加深入进行实战训练,包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题

整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握;而L3 L4更多的是通过项目实战来掌握核心技术,针对以上网安的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。
二、技术文档和经典PDF书籍
书籍和学习文档资料是学习网络安全过程中必不可少的,我自己整理技术文档,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,(书籍含电子版PDF)

三、网络安全视频教程
对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的网安视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

四、网络安全护网行动/CTF比赛
学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

五、网络安全工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

面试不仅是技术的较量,更需要充分的准备。
在你已经掌握了技术之后,就需要开始准备面试,我们将提供精心整理的网安面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。
如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…


**读者福利 |**
优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)