文章目录
初识Linux
- 计算机由哪两个主要部分组成?
硬件和软件
- 操作系统是什么?由什么作用?
操作系统是软件的一类。
主要作用是协助用户调度硬件工作,充当用户和计算机硬件之间的桥梁
- 常见的操作系统有哪些?
PC端:Windows、Linux、MacOS
移动端:Android、IOS、鸿蒙系统
https://www.kernel.org 下载Linux内核
![](https://i-blog.csdnimg.cn/blog_migrate/33fe26a3269e75b6094d1c95e97305d4.png)
- Linux的诞生
Linux由林纳斯 托瓦兹在1991年创立并发展至今成为服务器操作系统领域的核心系统。
- 什么是Linux系统的内核
内核提供了Linux系统的主要功能,如硬件调度管理的能力。
Linux内核是免费开源的,任何人都可以查看内核的源代码,甚至是贡献源代码。
- 什么是Linux系统发行版
内核无法被用户直接使用,需要配合应用程序才能被用户使用。
在内核之上,封装系统级应用程序,组合在一起就称之为Linux发行版。
发行版众多,课程主要基于CentOS辅以Ubuntu进行讲解
要使用Linux我们便需要在虚拟机上进行
- 什么是虚拟机?
通过虚拟化技术,在电脑内,虚拟出计算机硬件,并给虚拟的硬件安装操作系统,即可得到一台虚拟的电脑,称之为虚拟机。
- 为什么要使用虚拟机?
学习Linux系统,需要有Linux系统环境。
我们不能给自己电脑重装系统为Linux,所以通过虚拟机的形式,得到可以用的Linux系统环境,供后续学习使用。
![](https://i-blog.csdnimg.cn/blog_migrate/8e3ff4db04c8409ac0c06e43fce77118.png#pic_center)
进行软件安装
VMware
![img](https://i-blog.csdnimg.cn/blog_migrate/55844bc6e037c49437e315bcb4d8135d.jpeg)
成功后会出现
![](https://i-blog.csdnimg.cn/blog_migrate/07344a61eea9a24027c230a908b7f81c.png#pic_center)
在VMware虚拟机中安装CentOS操作系统
CentOS
对于操作系统的使用,有2种使用形式:
- 图形化页面使用操作系统(windows为主)
- 以命令的形式使用操作系统(Linux为主)
远程连接Linux系统:FinalShell
Windows:
http://www.hostbuf.com/downloads/finalshell_install.exe
-
为什么Linux操作系统要选择命令行形式呢?
- Linux操作系统的图形化页面不好用且不稳定
- 使用命令行的形式操作更加高效且稳定资源占用低
- 企业和开发者都选择命令行,所以我们也学习命令行
-
为什么使用FinalShell连接Linux去使用
- 操作Linux系统中间跨越VMware窗口会导致交互不太方便
- 我们只需要使用命令行无需使用图形化,所以通过命令行远程连接使用即可
-
如何查看Linux的IP地址并远程连接呢
- 在Linux操作系统中,桌面空白右键点击:open in terminal
- 输入ifconfig,即可看到IP地址
- 在FinalShell中配置好IP地址,账号密码后即可连接成功
拓展:WSL(Windows Subsystem for Linux)
![](https://i-blog.csdnimg.cn/blog_migrate/443fde6d4b80f73d45fa4fe2940ebf26.png)
WSL:Windows Subsystem for Linux,是用于Windows系统之上的Linux子系统。
作用很简单,可以在Windows系统中获得Linux系统环境,并完全直连计算机硬件,无需通过虚拟机虚拟硬件。
安装Ubuntu
扩展:虚拟机快照
VMware虚拟机(Workstation和Funsion)支持为虚拟机制作快照。
通过快照将当前虚拟机的状态保存下来,在以后可以通过快照恢复虚拟机到保存的状态。
![](https://i-blog.csdnimg.cn/blog_migrate/6e078c2d8de19a06640d5b9f7b472010.png#pic_center)
- 快照有什么作用?
快照可以保存虚拟机的状态, 当虚拟机出现问题的时候, 可以通过预先制作的快照恢复到制作时候的状态, 用作备份用。
- VMware Workstation 和 VMware Fusion 都支持制作快照去使用
Linux基础命令
Linux路径的描述方式
-
在Linux系统中,路径之间的层级关系,使用:/ 来表示
-
在Windows系统中,路径之间的层级关系,使用: \ 来表示
![](https://i-blog.csdnimg.cn/blog_migrate/86867d217fb34e8c8ccbd9bb30cb5f31.png#pic_center)
D:\data\work\hello.txt
![](https://i-blog.csdnimg.cn/blog_migrate/c4ab4bca74b0c7b6b715f0acf1f70521.png#pic_center)
/usr/local/hello.txt
命令入门
c o m m a n d [ − o p t i o n s ] [ p a r a m e t e r ] command\ [-options] [parameter] command [−options][parameter]
-
command: 命令本身
-
-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
-
parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等
-
语法中的[],表示可选的意思
l s [ − a − l − h ] [ L i n u x 路径 ] ls\ [-a -l -h] [Linux路径] ls [−a−l−h][Linux路径] -
-a -l -h 是可选的选项
-
Linux路径是此命令可选的参数
当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容
![](https://i-blog.csdnimg.cn/blog_migrate/82eab44818e53840acee08f6df20b223.png#pic_center)
-
-a列出全部内容、-l以列表展示、-h更易读的大小显示
-
参数表示要列出内容的路径,不提供即列出当前工作目录内容
- 当前工作目录和HOME目录
- Linux终端(命令行)启动后默认价值HOME目录作为当前工作的目录
- HOME目录指:用户在系统内的专属目录
- 隐藏文件\文件夹
-
在Linux系统中,以”.”开头的文件\文件夹会自动隐藏
-
只有通过-a选项才可以展示出来
目录切换相关命令(cd/pwd)
- cd命令的作用
-
cd命令来自英文:Change Directory
-
cd命令可以切换当前工作目录,语法是:
c d [ L i n u x 路径 ] cd\ [Linux路径] cd [Linux路径]- 没有选项,只有参数,表示目标路径
- 使用参数,切换到指定路径
- 不使用参数,切换工作目录到当前用户的HOME
- pwd命令的作用
-
pwd命令来自英文:Print Work Directory
-
pwd命令,没有选项,没有参数,直接使用即可
p w d pwd pwd
-
作用是:输出当前所在的工作目录
相对路径、绝对路径和特殊路径符
- 相对路径和绝对路径
-
绝对路径:以根目录做起点,描述路径的方式,路径以/开头
-
相对路径:以当前目录做起点,描述路径的方式,路径不需以/开头
-
如无特殊需求,后续学习中,将经常使用相对路径表示
- 特殊路径符有哪些?
-
. 表示当前目录,比如cd . 或 cd ./Desktop
-
… 表示上一级目录,比如:cd … 或 cd …/…
-
~ 表示用户的HOME目录,比如:cd ~ 或 cd ~/Desktop
创建目录命令(mkdir)
ctrl+l or clear 清屏
- mkdir命令的语法和功能
- mkdir用以创建新的目录(文件夹)
- 语法: m k d i r [ − p ] L i n u x 路径 mkdir\ [-p]\ Linux路径 mkdir [−p] Linux路径
- 参数必填,表示要创建的目录的路径,相对、绝对、特殊路径符都可以使用
- -p选项的作用
- 可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录
文件操作命令
- touch命令
-
用于创建一个新的文件
-
语法: t o u c h L i n u x 路径 touch\ Linux路径 touch Linux路径
-
参数必填,表示要创建的文件的路径,相对、绝对、特殊路径符都可以使用
- cat命令
-
用于查看文件内容
-
语法: c a t L i n u x 路径 cat\ Linux路径 cat Linux路径
-
参数必填,表示要查看的文件的路径,相对、绝对、特殊路径符都可以使用
- more命令
-
用于查看文件内容,可翻页查看
-
语法: m o r e L i n u x 路径 more\ Linux路径 more Linux路径
-
参数必填,表示要查看的文件的路径,相对、绝对、特殊路径符都可以使用
-
使用空格进行翻页,使用q退出查看
- cp命令
-
用于复制文件或文件夹
-
语法: c p [ − r ] 参数 1 参数 2 cp\ [-r]\ 参数1\ 参数2 cp [−r] 参数1 参数2
-
-r选项,可选,用于复制文件夹使用,表示递归
-
参数1,Linux路径,表示被复制的文件或文件夹
-
参数2,Linux路径,表示要复制去的地方
- mv命令
-
用于查看文件内容
-
语法: m v 参数 1 参数 2 mv\ 参数1\ 参数2 mv 参数1 参数2
-
参数1,Linux路径,表示被移动的文件或文件夹
-
参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在
- rm命令
-
用于复制文件或文件夹
-
语法: r m [ − r − f ] 参数 1 参数 2 . . . . . . 参数 N rm\ [-r\ -f]\ 参数1\ 参数2\ ......\ 参数N rm [−r −f] 参数1 参数2 ...... 参数N
-
-r选项,可选,文件夹删除
-
-f选项,可选,用于强制删除(不提示,一般用于root用户)
- 可以通过 su - root,并输入密码123456(和普通用户默认一样)临时切换到root用户体验
- 通过输入exit命令,退回普通用户。
-
参数,表示被删除的文件或文件夹路径,支持多个,空格隔开
-
参数也支持通配符 *,用以做模糊匹配
查找命令
- which命令
-
查找命令的程序文件
-
语法: w h i c h 要查找的命令 which\ 要查找的命令 which 要查找的命令
-
无需选项,只需要参数表示查找哪个命令
- find命令
-
用于查找指定的文件
-
按文件名查找: f i n d 起始路径 − n a m e ′ ′ 被查找文件 名 ′ ′ find\ 起始路径\ -name\ ''被查找文件名'' find 起始路径 −name ′′被查找文件名′′
-
支持通配符
-
按文件大小查找: f i n d 起始路径 − s i z e + ∣ − n [ K M G ] find\ 起始路径\ -size\ +|-n[KMG] find 起始路径 −size +∣−n[KMG]
- +、- 表示大于和小于
- n表示大小数字
- kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB
grep、wc和管道符
- grep命令
-
从文件中通过关键字过滤文件行
-
语法: g r e p [ − n ] 关键字 文件路径 grep\ [-n]\ 关键字\ 文件路径 grep [−n] 关键字 文件路径
-
选项-n,可选,表示在结果中显示匹配的行号。
-
参数,关键字,必填,表示过滤的关键字,建议使用””将关键字包围起来
-
参数,文件路径,必填,表示要过滤内容的文件路径,可作为管道符的输入
- wc命令
-
命令统计文件的行数、单词数量、字节数、字符数等
-
语法: w c [ − c − m − l − w ] 文件路径 wc\ [-c\ -m\ -l\ -w]\ 文件路径 wc [−c −m −l −w] 文件路径
-
不带选项默认统计:行数、单词数、字节数
-
-c字节数、-m字符数、-l行数、-w单词数
-
参数,被统计的文件路径,可作为管道符的输入
- 管道符 |
- 将管道符左边命令的结果,作为右边命令的输入
有多少个itcast 单词????
g r e p − o ′ 字符 串 ′ f i l e ∣ w c − l grep\ -o\ '字符串'\ file\ |wc\ -l grep −o ′字符串′ file ∣wc −l
echo、tail和重定向符
- echo命令
-
可以使用echo命令在命令行内输出指定内容
-
语法: e c h o 输出的内容 echo\ 输出的内容 echo 输出的内容
-
无需选项,只有一个参数,表示要输出的内容,复杂内容可以用””包围
- `反引号符
- 被`包围的内容,会被作为命令执行,而非普通字符
- 重定向符
-
>,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
-
>>,将左侧命令的结果,追加写入到符号右侧指定的文件中
- tail命令
-
查看文件尾部内容,并可以持续跟踪
-
语法: t a i l [ − f − n u m ] L i n u x 路径 tail\ [-f\ -num]\ Linux路径 tail [−f −num] Linux路径
-
-f:持续跟踪,-num:启动的时候查看尾部多少行,默认10
-
Linux路径,表示被查看的文件
vi编辑器
![](https://i-blog.csdnimg.cn/blog_migrate/7d18acf1acfe39b4763617798208a597.png#pic_center)
![](https://i-blog.csdnimg.cn/blog_migrate/cfcf249433c356187d11248f6d761684.png#pic_center)
![](https://i-blog.csdnimg.cn/blog_migrate/15389d5ec85a3b829f2ef0d75221fd22.png#pic_center)
![](https://i-blog.csdnimg.cn/blog_migrate/846d21f247f3410c0c056c9152fb6753.png#pic_center)
如需详细的命令说明, 可以:
•查看命令帮助, 通过–help选项
•查看命令手册, 通过man 命令