一.初识Linux
1.Linux系统内核
内核提供了Linux系统的主要功能,如硬件调度管理的能力。
Linux内核是免费开源的,任何人都可以查看内核的源代码,甚至是贡献源代码。
2.Linux系统发行版
内核无法被用户直接使用,需要配合应用程序才能被用户使用。在内核之上,封装系统级应用程序,组合在一起就称之为Linux发行版。
Linux发行版有许多,最常用的是CentOs与Ubuntu。
3.虚拟机的安装
3.1VMware安装
网上流程都有,自行下载安装,这里介绍一下检查是否安装成功。
检擦步骤:
- 1.打开设置,选择“网络和Internet”
- 2.点击“高级网络设置”
- 3.点击“更多网络适配器选项”
- 4.显示选项中,出现一下样式即安装成功
如果上面流程和你电脑里面的不一样,你可以win+R输入ncpc.cpl
直接打开上述第四步界面。
3.2VMware中安装ContOs
这里给出一个链接,大家可以参考:VMware中安装ContOs
4.操作方式
对于操作系统的使用,有2种使用形式:
不论是Windows还是Linux亦或是MacOS系统,都是支持这两种使用形式。
● 图形化:使用操作系统提供的图形化页面,以获得图形化反馈的形式去使用操作系统。
● 命令行:使用操作系统提供的各类命令,以获得字符反馈的形式去使用操作系统。
在windows我们习惯使用图形化界面,但是在Linux中我们一般使用命令行操作。
5.WSL
WSL: Windows Subsystem for Linux,是用于Windows系统之上的Linux子系统。作用很简单,可以在Windows系统中获得Linux系统环境,并完全直连计算机硬件,无需通过虚拟机虚拟硬件。
WSL是windows自带的系统功能,我们只需要打开它就行,在这里也可以部署Linux环境。如果不想要使用虚拟机的方式,可以使用这种方式,网上有相关教程。
6.虚拟机快照
在学习阶段我们无法避免的可能损坏Linux操作系统。如果损坏的话,重新安装一个Linux操作系统就会十分麻烦。可以采用虚拟机快照的方式保存虚拟机的当前状态,当以后遇到问题时可以通过快照快速恢复到之前保存的状态。我们这里了解后,可以搜索相关资料并尝试。
二.Linux命令基础
1.根目录
在windows中,顶级目录一般有C盘、D盘,而在Linux中则没有这些区分。所有文件都在一个目录下,这个目录用左斜杠/
来表示。
2.路径描述
- 在Linux系统中,路径之间的层级关系,使用
/
来表示 - 在Windows系统中,路径之间的层级关系,使用
\
来表示
3.命令行与命令
- 命令行:即Linux终端(Terminal),是一种命令提示符页面。以纯字行’的形式操作系统,可以使用各种字符化命
令对系统发出操作指令。 - 命令:即Linux程序。一个命令就是一个Linux的程序。命令没有图形化页面,可以在命令行(终端中)提供字符化的反馈。
4.命令基础格式
command [-options] [parameter]
command
:命令本身- -options:[可选]命令的一些选项
parameter
:[可选]命令的参数,多数是命令的指向目标等
5.home目录与工作目录
HOME目录:每个Linux操作用户在Linux系统的个人账户目录,路径在: /home/用户名
工作目录:操作用户正在适应的目录
用户登录后,打开终端,此时默认的工作目录就是home目录
6.相对路径与绝对路径
- 绝对路径:以根目录为起点,描述路径的一种写法,路径描述以/开头
- 相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需以/开头
三.Linux常用命令
命令 | 描述 | 语法格式 |
---|---|---|
ls | 列出当前目录下的文件和子目录。 | ls [选项] [文件/目录] |
cd | 进入指定目录。 | cd [目录] |
pwd | 显示当前所在的目录路径。 | pwd |
mkdir | 创建新目录。 | mkdir [选项] 目录名 |
rmdir | 删除空目录。 | rmdir [选项] 目录名 |
touch | 创建新文件或更改现有文件的时间戳。 | touch [选项] 文件名 |
cp | 复制文件或目录。 | cp [选项] 来源文件/目录 目标文件/目录 |
mv | 移动或重命名文件或目录。 | mv [选项] 原文件/目录 新文件/目录 |
rm | 删除文件或目录。 | rm [选项] 文件/目录 |
cat | 查看文件内容。 | cat [选项] 文件名 |
grep | 在文件中搜索特定字符串。 | grep [选项] 要查找的字符串 文件名 |
less/more | 逐行查看文件内容。 | less/more [选项] 文件名 |
chmod | 更改文件权限。 | chmod [选项] 权限 文件名 |
chown | 更改文件所有者。 | chown [选项] 用户[:组] 文件名 |
ps | 显示正在运行的进程列表。 | ps [选项] |
top | 动态显示进程状态。 | top |
tar | 归档和提取文件。 | tar [选项] 文件名 |
zip/unzip | 压缩和解压缩文件。 | zip/unzip [选项] 压缩文件名/目录 |
ssh | 远程登录到Linux系统。 | ssh [选项] 用户名@主机名 |
四.基础命令的详细用法
1. ls
1.1基础
- 单独作用:以平铺的形式,列出当前工作目录下的文件内容
- 可选项:-a、-l、-h
- 可选参数:Linux路径
1.2选项作用
-
-a:表示all的意思,即列出全部文件(包含隐藏的文件/文件夹)
补充:以 . 开头的文件,表示Linux系统中隐藏的文件/文件夹,只有通过-a选项才能看到
-
-l:以列表(竖向排列)的形式展示内容,并展示更多信息
-
-h:表示以易于阅读的方式,列出文件的大小,必须搭配-l一起使用
1.3结果
2.cd和pwd
2.1基础
- 语法1:
cd [目标路径]
- 作用:切换到某个目录下,没有路径时表示回到home目录
- 语法2:
pwd
- 作用:显示当前工作目录,无参数
2.2结果
3.特殊路径符
1.基础
·
:表示当前目录··
:表示上一级目录~
:表示home目录
一般这些符号搭配其他命令使用
2.示例
4.mkdir
1.基础
- 语法:``mkdir [-p] Linux路径
- 作用:创建文件目录(文件夹)
- -p:可选项,表示自动创建不存在的父目录,用于创建连续多层级的目录
- Linux路径:必填,表示要创建的文件夹(目录)
2.展示
5.touch-cat-more
1.基础
- 语法1:touch Linux路径
- 作用:创建一个文件
- 语法2:cat Linux路径
- 作用:查看目标路径文件下的内容,将内容全部显示出来
- 语法3:more Linux路径
- 作用:more支持翻页,如果内容过多,可以一页页的展示
如果文件少,就看不出more的效果,这里给一个系统文件,大家可以去尝试
- 命令:
more /etc/services
- 空格翻页,q推出查看
2.展示
6.cp-mv-rm
6.1基础
- 语法1:cp [-r] 参数1 参数2
- 作用:把参数1复制到参数2
- 选项:[-r] 可选,用于复制文件夹使用,表示递归
- 语法2:mv 参数1 参数2
- 作用:把参数1文件移动到参数2位置,若参数2不存在,则有改名效果
- 语法3:rm [-r -f] 参数1……参数n
- 作用:删除文件、文件夹
- 参数1……参数n,要删除的文件,用空格隔开
- 选项1:-r 和cp一样,表示删除文件夹
- 选项2:-f 强制删除
6.2演示
6.3通配符
rm命令支持通配符*,用来做模糊匹配
- text* :表示匹配任何以text开头的内容
- *text :表示匹配任何以text结尾的内容
*text*
:表示匹配任何包含text的内容
例如,rm -r *text*
表示删除任何包含text的内容
6.4注意
千万不要使用下面两个命令:
- rm -rf /
- rm -rf /*
这代表全部清空,相当于windows的C盘格式化
7.which-find
7.1find命令
-
语法1:find 起始路径 -name “被查找文件名”;
语法2:find 起始路径 -size +|- [kMG]
-
解释:语法2中+与-分别表示大于和小于,k(小写)表示kB,M表示MB,G表示GB。
例如:find / -size +100M 表示查找大于100MB 的文件
补充:find命令也支持通配符。
由于查找的内容实在太多,可以自行操作,这里不展示。
7.2which命令
之前我们知道Linux中的命令本质是一个可执行的二进制程序,使用which命令可以查看这些程序所在的位置。
7.3演示
8.grep-wc
8.1grep
- 语法:grep [-n] 关键字 路径
- 作用:从文件中通过关键字过滤文件行
- 选项:-n,可选,表示在结果中显示匹配的行的行号
8.2wc
- 语法:wc [-c -m -l -w] 文件路径
- 选项1:-c,统计bytes数量
- 选项2:-m,统计字符数量
- 选项3:-l,统计行数
- 选项4:-w,统计单词数量
- 作用:进行数量统计,什么选项也没有时默认统计行数、单词数、大小。
8.3管道符
- 符号:|
- 作用:将管道符左边命令的结果作为右边命令的输入
- 补充:管道符支持嵌套使用
8.4演示
9.echo-tail
9.1echo
- 语法:echo 内容
- 作用:输出后面的内容
9.2反引号 `
- 作用:把引号内的内容作为命令执行
- 使用范围:输出的内容包含命令等特殊意义的语句
9.3重定向符
- “>”:将左侧命令的结果,覆盖写入右侧指定的文件中
- “>>”:将左侧命令的结果,追加写入右侧指定的文件中
9.4tail
- 语法:tail [-f -num] Linux路径
- 作用:查看文件尾部的内容,跟踪文件的最新修改
- 选项1:-f 表示持续跟踪
- 选项2:-num 表示查看尾部多少行,不写表示默认10行
9.5演示
五.个人感受
Linux并不难学习,主要在于熟悉过程,多跑跑程序,熟悉你就会发现很有意思的。这只是今天学习的内容,明天继续学习记录分享。
六.说明
新星计划:Linux运维@刘晨阳导师创作打卡1!