Linux目录结构
Linux的目录结构是一个树形结构
Windos可以有多个盘,但是Linux没有盘这个概念,只有一个根目录/ ,所有的文件都在/下面
Linux命令入门
Linux命令基础
命令行:即Linux终端(Terminal),是一种命令提示符页面,以纯字符的形式操作系统,可以使用各种字符化命令对系统发出操作指令
命令: 即linux车光绪,一个命令就是一个linux的程序,命令没有图形化页面,可以在命令行提供字符化反馈
命令通用格式: command [-options] [parameter]
command:命令本身
-options: 命令的一些选项,可以通过选项控制命令的细节
parameter: 命令的参数,多数用于命令的指向目标等
ls命令入门
ls命令的作用是列出目录下内容
ls [-a -l -h] [linux路径]
当不用选项和参数:表示以平铺的形式,列出当前工作目录下的内容
-a: 表示全部,all的意思,即列出全部文件,包括隐藏的 隐藏的文件前面都有个.
-l: 以列表的形式展示更多内容,
-h:以更易于阅读的形式展示 h必须要搭配-l一起使用 -lh
cd/pwd
cd:当我们用linux终端打开的时候,会以用户的home目录为当前工作目录
我们可以通过cd来更改工作目录
语法: cd[Linux路径]
cd 不写参数就回到home目录
pwd: 通过ls来验证当前目录其实是不恰当的
我们可以使用pwd,来查看当前所在的工作目录
无参 无选项
相对路径和绝对路径
相对路径:以当前路径为起点 不许要/开头
绝对路径:以根目路/为起点
特殊路径符
. 当前目录
.. 上一级目录
~ home目录
mkdir 创建目录
通过mkdir命令可以创建新的文件夹
语法: mkidr [-p] linux路径
参数必填,表示路径,即要创建的文件夹的路径
-p选项,表示自动创建不存在的父目录 ,适用于创建连续多层级目录
touch cat more 创建文件 查看文件
touch 创建文件
语法: touch linux路径
touch命令无选项,参数必填,表示要创建的文件路径 , 相对,绝对,特殊路径夫均可以使用
cat 查看文件
语法: cat linux路径
没有选项,只有必填参数,参数表示被查看的文件路径,相对绝对特殊都可以
more命令同样可以查看文件内容,但是与cat不同的是
cat是直接将内容全部显示出来
more支持翻页,如果内容过多,则会一页一页显示 空格翻页 q退出查看
cp复制 mv移动 rm删除
cp命令可以用于复制文件\文件夹,即copy
语法 cp[-r] 参数1 参数2
-r,可选,用于复制文件夹使用,表示递归
参数1 linux路径 被复制文件或者文件夹
参数2 linux路径,放到哪
mv命令可以用于移动文件或文件夹 move
语法: mv 参数1 参数2
参数1 linux路径 被移动文件或者文件夹
参数2 linux路径,放到哪 假如参数2不存在 就把被移动的该名称参数2的名字
rm命令可用于删除 取自remove
语法 rm[-r -f] 参数1 参数2 。。。参数n
-r同cp一样 删除文件夹
-f表示force,强制删除
普通用户删除内容不会弹出提示,只有root才会弹出 SU - root 切换到root用户 exit退出
所以一般用户用不到-f
参数 表示要删除的文件或文件夹路径 按照空格隔开
rm命令支持通配符*
符号*表示通配符,即匹配任意内容:
test* 表示任何以test开头的内容
*test表示以test结尾的内容
*test*表示任何包含test的内容
对文件内容操作命令 grep wc 和管道符
grep命令
可以通过grep命令,从文件中通过关键字过滤文件含
语法: grep [-n] 关键字 文件路径
选项-n 可选 表示再接公众显示匹配的行的行号
参数-关键字 必填,表示过滤的关键字,带有空的过其他特殊符号,建议使用“” 将关键字包围起来
参数-文件路径 必填,表示要过滤内容的文件路径,可作为内容输入端口
wc命令做数量统计 - 一个文件内部byte大小 字符数量 函数 单词数
语法: wc [-c -m -l -w] 二五年间路径
-c : 统计bytes数量
-m : 统计字符数量
-l : 统计行数
-w : 统计单词数量
参数: 文件路径 ,被统计的文件,可作为内容输入端口
不选选项就显示 行数+单词数+字节数+ 文件名
管道符:|
管道符的含义是:将管道符左边命令的结果,作为右边命令的输入 就比如上述的grep和wc那两个参数有写 可作为内容输入端口 就是可以被写管道符的地方
如 : cat test.txt | grep hello 或者 cat test.txt | wc
管道符可以连续使用 , 就像java中的流式编程一样 如: cat test.txt | grep hello | grep world ,就是先过滤完带hello的行 ,再在这些行里过滤带world的行
查找命令which find 通配符
witch命令:我们在前面学习的Linux命令,他们本体就是一个个二进制可执行程序 和 Windows的.exe文件是一个意思
我们可以通过which,查看所使用的一系列命令的程序文件存放在那里
比如 which cd
find命令 - 按文件名查找文件
在图形化中,我们可以方便的通过系统提供的搜索功能,搜索指定的文件
同样,zaiLinux系统中,我们可以通过find命令去搜索指定的文件
语法: find 起始路径 -name "被查找文件名"
find命令 - 通配符
根据语法: find 其实路径 -name "被查找文件名"
被查赵文假名,支持使用通配符*来做模糊查询
基于通配符的含义,可以结合find命令做文件的模糊查询
find命令-按文件大小查找文件
find 起始路径 -size +|-n[k/M/G]
+ | - :大于 小于
n :数字
k|M|G : 单位 kb MB GB
比如 查找根路径下小于1G的文件 find / -size -1G
echo输入内容 反引号` tail命令跟踪文件更改 重定向符号
echo: 在命令行内输入指定内容
语法: echo 输入的内容
无需选项,只有一个参数,表示要输出的内容,复杂内容可以用”“包围
如
在终端上显示 Hello Linux
echo "Hello Linux"
带有空格或\等特殊符号,建议使用双引号包围
因为不包围的化,空格后很容易被识别为参数2,尽管echo不受影响,但是要保持好的习惯
反引号`
如 echo pwd ,这句话的意思本来是想输出当前的路径,但是pwd被当成了一个普通的字符串那么它就只会打印pwd
但是如果用` ` 包围住,被包围的内容,会被当做命令执行 而非普通字符 echo `pwd`他就会打印当前的路径
重定向符
> : 将左侧命令的结果,覆盖写入导符号右侧指定的文件中
echo "Hello Linux" > test.txt
echo "Hello Linux" > test.txt
此时文件内只有一个Hello Linux
>> : 将左侧命令的结果,追加写入到符号右侧指定的文件中
echo "Hello Linux" >> test.txt
echo "hello Linux" >> test.txt
此时文件中有两个Hello Linux
tail命令
使用tail命令,可以查看文件尾部的内容,跟踪文件的最新更改
语法: tail [-f -num] Linux路径
参数,Linux路径,表示被跟踪的文件路径
选项 -f 表示持续跟踪 他是一个持久的命令 ctrl+c停止
选项 -num 表示查看尾部多少行,不填默认查看十行
vi编辑器
vi\vim时visual interface 的简称 时linux中最经典的文本编辑器
同图形化界面中的文本编辑器一样,vi时命令行下对文本文件进行编辑的绝佳选择
vim时vi的加强版,兼容iv所有命令,不仅能编辑文本,而且还具有shell恩徐编辑的功能,可以不同颜色的字体来判别语法的正确性,极大方便了程序的设计和编辑性
### vi\vim的三种工作模式
命令模式
命令模式下,索桥的案件编辑器都理解为命令,以命令驱动执行不同的功能,此模型下不饿能自由进行文本编辑
输入模式
也就是所谓的编辑模式,插入模式,此模式下可以对文件内容进行自由编辑
底线命令模式
以:开始,通常用于文件的保存,退出
进入文件 vi filename \vim filname进入时是命令模式
如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
如果存在 编辑已有文件
退出 底线命令模式下输入wq w为保存 q是退出
输入模式: 输入i/a/o exc键退出
底线命令模式 输入 : 命令行以回车结束运行
命令模式下快捷键
i: 在当前光标位置进入输入模式
a: 在当前光标位置之后 进入输入模式
I: 在当前行的开头 进入输入模式
A: 在当前行的结尾进入输入模式
o: 在当前光标下一行进入输入模式
O: 在当前光标上一行进入输入模式
/: 进入搜索模式 n往下搜 N往上搜
底线命令模式的快捷键