Linux基础命令,掌握这一套清晰的讲解就够啦!
本篇博客给大家带来的是Linux的基础命令和vi编辑器
感谢大家收看~
一、Linux目录结构
Linux的目录结构是一个树形结构,Linux只有一个根目录 / 所有文件都存在/下面
Linux路径的描述方式
Linux系统中,路径的层级关系,使用:/(左斜杠) 表示
windows系统中,路径之间的层级关系,使用:\(右斜杠) 表示
总结
Linux只有一个顶级目录,称之为:根目录
windows系统有多个顶级目录,即每个盘符
/在linux系统中,开头表示根目录,后面的表示层级关系
练习题
1./test/hello.txt
2./itheima.txt
3./itcast/itheima/hello.txt
二、Linux命令入门
2.1 Linux命令基础
1.什么是命令、命令行
输入命令、得到反馈
2.Linux命令基础格式
命令由三部分组成:
command [-options] [parameter]
command:命令本身
-options:[非必填]命令的一些选项,可以通过选项控制命令的行为细节
parameter:[非必填]命令的参数,多数用于命令的指向目标
总结
2.2 -ls命令入门
1.ls命令的作用:
ls命令:列出目录下的内容
语法:ls[-a -l -h] [Linux路径]
当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容
2.HOME目录和工作目录
HOME目录:每个操作在Linux系统的个人账户目录,默认路径在:/home/用户名,每个用户在Linux系统的专属目录
直接输入ls命令,表示列出当前工作目录下的内容
总结
1.ls命令的作用是?
在命令行中,以平铺的形式,展示当前工作目录;
2.home目录是?
每一个用户在Linux系统的专属目录,默认在:/home/用户名;
3.当前工作目录?
Linux命令行在执行命令的时候,需要一个工作目录,打开命令行程序(终端)默认设置工作目录在用户的HOME目录;
2.3.ls命令的参数和选项
1.ls命令的参数
ls [-a -l -h] [Linux路径]
-a选项,表示all的意思,即列出全部文件(包含隐藏的文件/文件夹)
-l选项,表示以列表(竖向排列)的形式展示内容,并展示更多信息
-l -a组合使用:ls -la 、ls -l -a 、 ls -al
当ls不使用参数,表示列出当前工作目录的内容,即用户的home目录
当使用参数时,ls命令的参数表示指定一个Linux路径,列出指定路径的内容
ls选项和参数的组合使用
ls -la /
以列表的形式展示内容,同时把隐藏的内容都展示了出来,且把目录切换为根目录
-h 表示以易于阅读的形式,列出文件的大小,如K、M、G
-h选项必须搭配 -l一起使用
总结
1.ls命令的参数的作用
可以指定要查看的文件夹(目录)的内容,如果不给定参数,就查看当前工作目录的内容(默认在:/home/用户名)
2.ls命令的选项
-a选项:可以展示出隐藏的内容,以 . 开头的文件或文件夹默认被隐藏,需要-a才能显示出来
-l选项:以列表的形式展示内容,并展示更多细节
-h选项:需要和-l选项搭配使用,以更加人性化的方式显示文件的大小单位
3.命令的选项组合使用
命令的选项可以组合使用,如ls -lah 等同于 ls -a -l -h
2.4 -cd -pwd 目录切换命令
1.cd 切换工作目录
打开命令行时默认在home目录
语法:cd[Linux路径]
cd命令无需选项,只有参数,表示要切换到哪个目录下
cd命令直接执行,不写参数,默认回到用户的home目录下
2,pwd 查看当前工作目录
语法:pwd
pwd命令,无选项,无参数,直接输入pwd即可
总结
1.cd命令的作用?
切换当前工作目录,语法是:cd[Linux路径]
没有选项,只有参数表示目标路径
使用参数,切换到指定路径
不使用参数,切换工作目录到用户的home
2.pwd命令的作用?
pwd命令,没有选项,没有参数,直接使用即可
作用是:输出当前所在的工作目录
课后练习
locate games
2.5 相对路径与绝对路径与特殊路径符
1.相对路径与绝对路径
描述路径的两种方式:
1.绝对路径写法:cd /home/lcl/路径名
2.相对路径写法:cd 路径名
绝对路径:以根目录为起点,描述路径的一种方法,以/开头进行路径描述
相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需以/开头
示例
切换到/目录
切换到subdir目录
2.特殊路径符
. 表示当前目录
.. 表示上一级目录
~ 表示home目录
演示:
总结
上级目录:..
上两级目录:cd ../..
课后练习
2.6 mkdir命令 目录创建命令
1.mkdir命令
通过mkdir命令可以创建新的目录(文件夹)
语法:mkdir [-p] Linux路径
参数必填,表示Linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可
-p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录
演示:
Tips.清屏命令: clear或CTRL+l
2.mkdir -p Linux路径
-p表示直接创建路径,可以创建连续多层级的目录
注意:
创建文件夹需要修改权限,确保操作均在home目录内,不要在home外操作,
涉及到权限问题,home外无法成功
总结
1.mkdir命令的语法和功能
mkdir用以创建新的目录(文件夹)
语法:mkdir [-p] Linux路径
参数必填,表示要创建的目录的路径,相对、绝对、特殊路径符都可以使用
2.-p选项的作用
可选,表示自动创建不存在的父目录,用于创建连续多层级的目录
课后练习
首先使用cd ~回到home目录,在home目录下使用-p创建路径文件夹
答案:mkdir -p ~/itcast/itheima/nice/666
2.7 文件操作命令
1.touch创建文件
可以通过touch命令创建文件
语法:touch Linux路径
touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用
示例:
2.cat命令,查看文件内容
准备好文件内容后,可以通过cat查看内容
语法:cat Linux路径
cat同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对,绝对,特殊路径符都可以使用
3.more命令,查看文件内容
cat命令是直接将内容全部显示出来
more是支持翻页,如果文件内容过多,可以一页一页展示
语法:more Linux路径
同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用
空格进行翻页,q进行退出
总结
1.touch命令
用于创建一个新的文件
语法:touch Linux路径
参数必填,表示要创建的文件的路径
2.cat命令
用于查看文件内容
语法:cat Linux路径
参数必填,表示要查看的文件的路径
3.more命令
用于查看文件内容,可翻页查看
语法:more Linux路径
参数必填,表示要查看的文件的路径
使用空格进行翻页,使用q退出查看
4.cp命令复制文件文件夹
cp命令用于复制文件/文件夹
语法:cp [-r] 参数1 参数2
-r选项,用于复制文件夹使用,表示递归
参数1,Linux路径,表示被复制的文件或文件夹
参数2,Linux路径,表示要复制去的地方
cp 路径1 路径2
创建文件夹的时候带上-r
cp -r 路径1 路径2
5.mv移动文件或文件夹
mv命令可以用于移动文件/文件夹
语法:mv 参数1 参数2
参数1,Linux路径,表示被移动的文件
参数2,Linux路径,表示要移动去的地方
mv 文件 文件夹
改名:
用mv命令 将原有的Linux路径改名为新路径名,新路径名由于不存在,所以实现改名的功能
mv 文件夹 新文件夹
mv 旧文件名 新文件名
mv移动文件夹
mv 文件夹 新文件夹
2.8 rm删除文件/文件夹
rm命令可用于删除文件、文件夹
语法:rm [-r -f] 参数1,参数2 ...... 参数n
同cp命令一样,-r选项用于删除文件夹
-f表示force,强制删除(不会弹出提示)
普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
所以一般普通用户用不到-f选项
删除多个文件夹可用‘ ’空格将它们隔开,可以一次性删除多个文件夹
删除文件:rm 文件名
删除文件夹:rm -r 文件夹
删除多个文件夹可用‘ ’空格将它们隔开
rm删除文件、文件夹——通配符
rm命令支持通配符*,用来做模糊匹配
符号*表示通配符,即匹配任意内容(包含空),示例:
test*,表示匹配任何以test开头的内容
*test,表示匹配任何以test结尾的内容
*test*,表示匹配任何包含test的内容
演示:删除所有包含test的文件或者文件夹
rm *test*
切换用户
如果显示输入错误密码
sudo passwd root 重新设置密码
切换返回用户输入su 系统用户名
通过su - root 并输入密码(和普通用户一样),临时切换到root用户体验
通过输入excel命令,退回普通用户
强制删除:-f
一般情况下不会使用
提示
总结
1.cp命令
用于复制文件或文件夹
语法:cp [-r] 参数1 参数2 //-r选择复制文件夹
-r选项,可选,用于复制文件夹使用,表示递归
参数1,Linux路径,表示被复制的文件或文件夹
参数2,Linux路径,表示要复制去的地方
2.mv命令
用于查看文件内容
语法:mv 参数1 参数2
参数1,Linux路径,表示被移动的文件或文件夹
参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在
3.rm命令
用于复制文件或文件夹
语法:rm [-r-f] 参数1 参数2 ...... 参数N
-r选项,可选,文件夹删除
-f选项,可选,用于强制删除(不提示,一般用于root用户)
参数,表示被删除的文件或文件夹,支持多个一起删除,空格隔开
参数也支持通配*,用以模糊匹配
2.9 which命令——查找命令
我们可以通过which命令,查看所使用的一系列命令的程序文件存放在哪里
语法:which 要查找的命令
which只能查找命令
2.10 find命令——按文件名查找文件
find命令搜索指定文件
语法:find 起始路径 - name ‘被查找的文件名‘
find命令按照文件大小查找文件
语法:+、- 表示大于和小于
n表示大小数字
kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB
示例:
查找小于10KB的文件:find / - size - 10k
查找大于100MB的文件:find / - size+100M
查找大于1GB的文件:find / - size +1G
总结
1.which命令
查找命令的程序文件
语法:which 要查找的命令
无需选项,只需要参数表示查找哪个命令
2.find命令
用于查找指定的文件
按文件名查找:find 起始路径 -name “被查找文件名”
* 支持通配符
按文件大小查找:find 起始路径 -size +1-n[kMG]
课后练习
1、使用find命令查找出名称中带有ubuntu的文件
find / -name "ubuntu"
2.请使用find命令找出:/usr目录内大于100M的文件
find / usr - size + 100M
2.11 grep、wc和管道符
1.grep命令
grep命令——从文件中通过关键字过滤文件行1.
语法:grep [-n] 关键字 文件路径
选项-n,可选,表示在结果中显示匹配的行的行号
参数,关键字,必填,表示过滤的关键字,带有空格或其他特殊符号,建议使用“ ”,将关键字包围起来
参数,文件路径,必填,表示要过滤的内容的文件路径,可作为内容输入端口
演示:
首先在图形化页面中编辑一个文件
创建文档 touch命令
在图形化页面编辑
grep查找过滤命令
-n表示显示查找内容的行号
2.wc命令 统计文件
可以通过wc命令统计文件的行数、单词数量等
语法:wc [-c -m -l -w] 文件路径
选项-c,统计bytes数量
选项-m,统计字符数量
选项-l,统计行数
选项-w,统计单词数量
参数,文件路径,被统计的文件,可作为内容输入端口
演示:
-c,统计文件字节数,-m,统计文件字符数,-l,统计行数,-w,统计单词数量,如果不加入参数,则所有的都统计
3.管道符
管道符:|
含义:将管道符左边命令的结果,作为右边命令的输入
管道符配合的命令没有任何限制
演示:
cat命令,查看文件内容 | 将查看到的文件内容作为参数传递给grep命令进行筛选
cat命令,查看文件内容 | 将查看到的文件内容作为参数传递给wc命令,wc-l 查询行数
与其他命令联合使用进行联合查询,与ls命令联合使用,查询一下文件中包含file的命令
统计一下allbetter文件中,有多少个单词
管道符支持嵌套
总结
1.grep命令
从文件中通过关键字过滤文件行
语法:grep [-n] 关键字 文件路径
选项 -n,可选,表示在结果中显示匹配的行号
参数,关键字,必填,表示过滤的关键字,建议使用“ ”,将关键字包围起来
参数,文件路径,必填,表示要过滤内容的文件路径,可作为管道符的输入
2.wc命令
命令统计文件的行数、单词数量、字节数、字符数
语法:wc [-c -m -l -w] 文件路径
不带选项默认统计:行数、单词书、字节数
-c 字节数, -m 字符数,-l 行数,-w单词数
3.管道符 |
将管道符左边命令的结果作为右边命令的输入
课后练习
1.1 cat test.txt | grep itcast | wc - l
1.2 grep [-n] "itcast" test.txt | wc -l
2.1 grep [-n] "itcast" test.txt | wc -w
2.2 cat test.txt | grep itcast | wc -w
多层管道符也很正常
2.12 echo、tail和重定向符
1.echo输出命令
可以使用echo命令在命令行内输出指定内容
语法:echo 输出的内容
无需选项,只有一个参数,表示要输出的内容,复杂内容可以用“ ”包围,养成习惯,使用双引号包围要输出的内容
演示:
2.反引号 与echo命令配合使用
~ 的另一形势 `
被` `包围的字符会作为命令执行
·字符命令·
演示:
3.重定向符
重定向符:>和>>
>,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
>>,将左侧命令的结果,追加写入到符号右侧指定的文件中
>:覆盖命令 >>:追加命令
演示:
1.将“Hello Linux“覆盖到test.txt文件
将”Hello itcast“追加到test.txt文件
2.将test.txt追加到test.txt文件
3.将 test.txt的路径追加到test.txt文档中
4.tail命令 查看文件尾部
使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改
语法:tail [-f -num] Linux路径
参数,Linux路径,表示被跟踪的文件路径
选项,-f,表示持续跟踪
选项,-num,表示查看尾部多少行,不填则默认查看尾部10行
演示:
1.不带参数,默认查看尾部十行
2.带参数-num,表示查看尾部的多少行
3.-f表示持续跟踪,如果再打开一个终端对文档进行更新,这个终端-f持续更新,输出结果也会改变
CTRL C 终止跟踪
总结
1.echo命令
可以使用echo命令在命令行内输出指定内容
语法:echo 输出的内容
无需选项,只有一个参数,表示要输出的内容,复杂内容可以用” “包围
2. ` 反引号符
被 ` 包围的内容,会被作为命令执行,而非普通字符
3.重定向符
>,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
>>,将左侧命令的结果,追加写入到符号右侧指定的文件中
4.tail命令
查看文件尾部内容,并可以持续跟踪
语法:tail [-f -num] Linux路径
参数,Linux路径,表示被跟踪的文件路径
选项,-f,表示持续跟踪
选项,-num,表示查看尾部多少行,不填则默认查看尾部10行
课后练习
1.`pwd`“ > work.txt
2.echo "内容" >> work.txt
tail -f work.txt
2.13 VI\VIM编辑器
vi\vim是visual interface的简称,是Linux中最经典的文本编辑器
同图形化界面中的文本编辑器一样,VI是命令行下对文本文件进行编辑的绝佳选择
vim是vi的加强版本,兼容vi的所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,大大方便了程序的设计和编辑性
1.VI、VIM编辑器的三种工作模式
1>命令模式(键盘快捷键)
命令模式下,所敲得按键编辑器都理解为命令,以命令驱动执行不同的功能,此模型下,不能自由进行文本编辑
2>输入模式
也就是所谓的编辑模式、插入模式,此模式下,可以对文件内容进行自幼编辑
3>底线命令模式
以:开始,通常用于文件的保存、退出
2. 命令模式
如果需要通过vi\vim编辑器编辑文件,请通过以下命令:
vi 文件路径
vim 文件路径
vim兼容全部的vi功能,后续全部使用vim命令
如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
如果文件路径表示的文件存在,那么此命令用于编辑已有文件
3.vi编辑器的快速体验
通过vi/vim命令编辑文件,会打开一个新的窗口,此时这个窗口就是:命令模式窗口
命令模式是vi编辑器的入口和出口
进入vi编辑器会进入命令模式 vi filename
通过命令模式输入键盘指令,可以进入输入模式,输入i
输入模式需要退回到命令模式 ESC键,然后通过命令进行底线命令模式 命令以回车结束运行
快速体验
1.使用:vim hello.txt,编辑一个新文件,执行后进入的是命令模式
2.i键,进入输入模式,在文本编辑器中编写文件
3.esc退出输入模式,进入命令模式
4.在命令模式内,输入‘ :’ ,即可进入底线命令模式
4.命令模式的快捷键
命令模式 i 在当前光标位置进入输入模式
命令模式 a 在当前光标位置之后进入输入模式
命令模式 I 在当前行的开头,进入输入模式
命令模式 A 在当前行的结尾,进入输入模式
命令模式 o 在当前光标下一行进入输入模式
命令模式 O 在当前光标的上一行进入输入模式
输入模式 esc 任何情况下输入esc都能回到命令模式
命令模式 键盘上、键盘k 向上移动光标
命令模式 dá 删除光标所在行的内容
命令模式 键盘下、键盘j 向下移动光标命令模式 ndd n是数字, 表示删除当前光标向下n行
命令模式 键盘左、键盘h 向左移动光标命令模式 yy 复制当前行
命令模式 键盘右、键盘1 0 向后移动光标 移动光标到当前行的开头命令模式 nyy n是数字, 复制当前行和下面的n行
命令模式 p 粘贴复制的内容
命令模式 u 撤销修改
命令模式 S 移动光标到当前行的结尾
命令模式 ctrl+ r 反向撤销修改
命令模式 pageup(PgUp) 向上翻页
命令模式 gg 跳到首行
命令模式 pangdown(PgDn) 向下翻页 进入搜索模式命令模式 G 跳到行尾
命令模式 dG 从当前行开始, 向下全部删除
命令模式 n 向下继续搜索命令模式 dgg 从当前行开始,向上全部删除
命令模式 N 向上继续搜索命令模式 d$ 从当前光标开始,删除到本行的结尾
命令模式 d0 从当前光标开始,删除到本行的开头
5.底线命令模式
进入编辑模式没有什么特殊的,进入编辑模式后,快捷键没有作用,只能正常输入文本
通过esc,可以退回到命令模式中
在命令模式内,输入 : ,即可进入底线命令模式,支持如下命令:
底线命令模式 :wq 保存并退出
底线命令模式 :q 仅退出
底线命令模式 :q! 强制退出
底线命令模式 :w 仅保存
底线命令模式 :set nu 显示行号
底线命令模式 :set paste 设置粘贴模式
总结
1.什么是vi/vim编辑器
vi/vim编辑器,就是命令行模式下的文本编辑器,用来编辑文件
vim是vi的升级版,一般用vim即可,包含全部vi功能
2.基础命令
vi 文件路径
vim 文件路径
3.运行模式
命令模式,默认的模式,可以通过键盘快捷键控制文件内容
输入模式,通过命令模式进入,可以输入内容进行编辑,按ESC退回命令模式
底线命令模式,通过命令模式进入,可以对文件进行保存、关闭等操作