目录结构
在Linux中的目录结构为树形结构
顶级目录:不同于Windows系统中的多盘符式的顶级目录,Linux系统中的顶级目录只有根目录"/"
路径:Windows中的层级结构用"\“,而Linux中的层级结构用”/"
Linux命令入门
命令基础
学习Linux系统的本质就是学会在命令行下熟练的使用多种命令
命令行即Linux终端(Terminal),命令提示符界面
命令即为Linux程序,一条命令就是一段程序
命令的基础格式
通用格式:command [-options] [parameter]
- command就是命令本身
- [-options] 一些选项,控制行为细节
- [parameter] 参数,控制命令的指向目标
目录列表命令(ls)
HOME目录:每个Linux操作用户在Linux操作系统的个人账户目标,路径在 /home/用户名
相当于Windows系统中的 C:\users
语法 :ls [- a -l -h] [Linux路径]
-
如果不使用options和parameter,直接用ls,会以平铺的形式列出当前工作目录下的内容
-
当前登录用户的HOME目录作为当前的主工作目录,所以直接使用ls默认列出HOME目录的内容
ls中的参数
- -a 即all ,列出全部的文件/文件夹,包含隐藏的文件/文件夹
前面带 "."的文件/文件夹表示隐藏文件/文件夹 - -l 即list,以列表的形式竖向列出,展示更多的信息
- -h 即human-readable ,以易于阅读的形式,列出文件的大小,如k、M、G,-h必须搭配**-l**一起使用
参数的组合使用
1.ls -a -l
2.ls -al
3.ls -la
4.ls -l -a
以上这四种形式组合出来的结果是一样的,可根据自己的需求自由使用
目录切换相关命令(cd、pwd)
由于home为默认的工作目录,我们有时候需要切换到其他的工作目录去,这时候就需要使用目录切换相关的命令了
cd(Change Directory)
切换当前的工作目录
语法:cd [Linux路径]
-
cd命令没有选项,只有参数,表示要切换的目录
-
而如果不使用参数,直接使用cd命令的话,表示返回home工作目录
pwd(print Working Directory)
查看当前工作目录
语法:pwd
- 没有选项,也没有参数 ,仅查看当前工作目录
相对路径、绝对路径和特殊路径符
相对路径:以当前所在的工作目录为起点,无需以"/"开头
绝对路径:以根目录为起点,必须以"/"开头
特殊路径符
.:表示当前目录,如cd ./Desktop与cd Desktop命令一致,均表示前往当前工作目录下的Desktop..:表示上一级目录,如cd..代表返回上一级工作目录,cd ../..表示返回上两级…~:表示默认的home命令,如cd ~与cd一样,都是返回默认的home目录,cd ~/Desktop与cd home/用户名/Desktop等同,都是切换到home目录下的Desktop位置
目录创建命令(mkdir)
mkdir(Make Directory)
创建新的目录/文件夹
语法:mkdir [-p] Linux路径
- 参数必填,表示Linux路径,即要创建的文件路径,绝对路径与相对路径皆可
- -p为可选参数,表示自动创建不存在的父目录,适用于连续创建多层级的命令
注意:创建文件夹需要修改权限,请确保操作均在home目录内,不要在home外操作,涉及权限问题,在home外无法成功
文件操作命令(touch,cat,more,cp,mv,rm)
touch
创建文件
语法:touch Linux命令
- 没有选项,参数必填,相对路径,绝对路径,包括特殊路径符均可使用
cat(concatenate)
查看文件内容,将所有内容全部展现出来
语法:cat Linux路径
- 没有选项,参数必填,相对路径,绝对路径,包括特殊路径符均可使用
more
查看文件内容,支持翻页操作,如果文件内容过多,可以一页页展示
语法:more Linux路径
- 没有选项,参数必填,相对路径,绝对路径,包括特殊路径符均可使用
- 操作:空格翻页,B返回上一页,q退出,
ctrl+L清屏
cp(copy)
语法:cp [-r] 参数1 参数2
- -r为可选参数,用于复制目录/文件夹,表示递归
- 参数1,Linux路径,表示被复制的文件/文件夹
- 参数2,Linux路径,表示要复制去的地方
mv(move)
语法:mv 参数1 参数2
- 参数1,Linux路径,表示被移动的文件/文件夹
- 参数2,Linux路径,表示要移动去的地方,如目标不存在,则进行改名,确保目标存在
rm(remove)
删除目标文件/文件夹,可通过设置多个参数一次删除多个文件/文件夹
语法:rm [-r -f] 参数1 ... 参数n
- -r与cp中的 -r 相同,用于进行文件夹相关的操作
- -f表示force,表示强制删除(不会弹确认信息),普通用户删除不会弹出提示信息,只有root管理员 会弹出,所以一般普通用户用不到 -f
- 参数表示要删除的文件/文件路径,多个文件/文件路径用空格隔开
通配符
rm在使用的时候支持通配符*做模糊匹配(包括空格)
例如:
test*表示所有以test开头的内容*test表示所有以test结尾的内容*test*表示所有包含test的内容
临时切换到root管理员用户
用su -root命令,在输入密码,即可临时切换到root管理员账户,输入exit退出
注意:千万不要在处于root管理员账户的时候使用rm -f /或rm -f/*命令,否则会格式化系统
查找命令(which,find)
which
语法:which 要查找的命令
前面了解到的Linux命令,本质上就是一个个二进制的可执行程序,等同于windows中的.exe文件,可以用which命令,查看所使用的一系列命令的程序文件存储位置,例如:which pwd即为查询pwd命令的程序文件的存放位置
find
在图形化界面中,可以直接通过系统的搜索功能去搜索指定的文件
而在Linux系统中,可以通过find命令去搜索指定的文件
find有两种查找方式,分别为按文件名查找和按大小查找
按文件名
语法:find 起始路径 -name "被查找的文件名"
- 被查找的文件名里面也可以使用通配符,例如
find / -name "*game*表示查找根目录下所有文件名里面包含game的文件
按大小
语法:find 起始路径 -size +或-n[kMG]
+、-表示大于和小于n表示数字大小- 大小的单位用
k(小写)表示kb,M表示 MB,G表示**GB - 如
find / -size -100k表示查找根目录下小于100kb的文件 - 如果查询到的结果太多使用
ctrl+C中断查询
文件处理命令(grep,wc和管道符)
grep
从文件中按照关键字过滤行
语法:grep [-n] 关键字 文件路径
-n为可选参数,表示在结果中显示匹配的行的行号- 关键字参数为必填项,表示过滤的关键字,带有空格或其他的符号,建议使用双引号将关键字包围起来
- 文件路径参数为必填项,表示要过滤的内容的文件路径,可作为内容输入端口接收管道符输入的信息
wc
可以通过wc命令统计文件的行数,单词数量等
语法:wc [-c -m -c -w] 文件路径
-c统计bytes数量-m统计字符数量-c统计行数-w统计单词数量- 文件路径参数,被统计的文件,可作为内容输入端口接收管道符输入的信息
管道符
语法:|
- 将
|左边的结果,作为右边命令的输入 - 如:
cat test.txt | grep "hello",管道符也可以嵌套使用
echo,tail和重定向符
echo
语法:echo 输出的内容
- 没有选项,一个参数表示输出的内容,复杂的内容可以用双引号包围
反引号
语法: `
- 被反引号包围的字符会被当成命令执行,而非普通字符
重定向符
语法:> 和>>
>将左侧的命令结果,覆盖写入到右侧的指定文件中>>将左侧的命令结果,追加写入到右侧指定文件中- 如果右侧的文件不存在,则会自动创建
tail
可查看文件的内容,跟踪文件的最新更新
语法:tail [-f -num] Linux路径
- 路径参数,表示被跟踪的文件路径
- 可选参数
-f,表示持续跟踪 - 可选参数
-num,num为一个具体的数字,表示查看尾部多少行,不填的话默认为十行
vi/vim编辑器
简介:
vi/vim(Visual interface) 是Linux中最经典的文本编辑器,与图形化中的文本编辑器相同,vi是命令行下对文本文件进行编辑的绝佳选择
vim是vi的升级版,兼容vi的所有指令,不光能编辑文本,还具有shell程序编辑的功能,可以用不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性
vi/vim的三种工作模式:

命令模式(Command mode)
在命令模式下,所敲的按键都理解为命令,以命令驱动执行不同的功能,此模式下,不能自由进行文本编辑
输入模式(Insert mode)
即编辑、插入模式,此模式下,可对文件内容进行自由编辑
底线命令模式(Last Line mode)
以:开始,通常用于文件的保存,退出(wq)
语法:vi 文件路径 或 vim 文件路径
- vim兼容vi的所有功能
- 如果文件路径表示的文件不存在,则会用于编辑新文件
- 如果文件路径存在,则会用于编辑现有文件
命令模式快捷键
| i | 在当前光标位置进入输入模式 |
|---|---|
| a | 在当前光标位置之后进入输入模式 |
| I | 在当前行开头进入输入模式 |
| A | 在当前行结尾进入输入模式 |
| o | 在当前光标下一i行进入输入模式 |
| O | 在当前光标上一行进入输入模式 |
| esc | 在任意模式下esc都能回到命令模式 |
| 键盘上、k | 向上移动光标 |
| 键盘下、j | 向下移动光标 |
| 键盘左、h | 向左移动光标 |
| 键盘右、l | 向后移动光标 |
| 0 | 移动光标到当前行的开头 |
| $ | 移动光标到当前行的结尾 |
| PgUp | 向上翻页 |
| PgDn | 向下翻页 |
| / | 进入搜索模式 |
| n | 向下继续搜索 |
| N | 向上继续搜索 |
| dd | 删除光标所在行的内容 |
| ndd | n是数字,表示删除当前光标向下n行 |
| yy | 复制当前行 |
| nyy | n是数字,复制当前行和下面的n行 |
| p | 粘贴复制的内容 |
| u | 撤销修改 |
| ctrl+r | 反向撤销修改 |
| gg | 跳到首行 |
| G | 跳到行尾 |
| dG | 从当前行开始,向下全部删除 |
| dgg | 从当前行开始,向上全部删除 |
| d$ | 从当前光标开始,删除到本行的结尾 |
| d0 | 从当前光标开始,删除到本行的开头 |
5350

被折叠的 条评论
为什么被折叠?



