命令&命令行
- 命令:即Linux程序。一个命令就是一个Linux的程序。命令没有图形化页面,可以在命令行(终端中)提供字符化的反馈。
- 命令行:即Linux终端(Terminal),是一种命令提示符页面。以纯”字符“的形式操作系统,可以使用各种字符化命令对系统发出操作指令。
命令基础格式
command [-options] [parameter]
- command:命令本身
- -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
- parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等
ls命令
列出目录下的内容,ls [-a -l -h] [Linux路径]
- -a -l -h是可选的选项
- -a:全部的意思,列出全部文件(包含隐藏的文件/文件夹,开头有 . 的文件/文件夹为隐藏文件/文件夹)
- -l:以列表(竖向排列)的形式展示内容,并展示更多信息
- -h:以易于阅读的形式,列出文件大小,如K、M、G,必须搭配-l一起使用
- Linux路径是此命令可选的参数
- 写法:
ls -l -a == ls -la == ls -al
目录切换命令(cd/pwd)
cd
-
cd切换工作目录:当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录
cd [Linux路径]
-
cd命令无需选项,只有参数,表示要切换到哪个目录下
-
cd命令 直接执行,不写参数,表示回到用户的HOME目录
pwd
-
通过pwd命令来查看当前所在的工作目录
pwd
-
pwd命令,无选项,无参数,直接输入pwd
相对路径&绝对路径
cd Desktop
,以当前目录为起点,描述路径的一种写法,路径描述无需以/开头cd /home/itheima/Desktop
,以根目录为起点,描述路径的一种写法,路径描述以/开头
特殊路径符
.
:表示当前目录,比如cd ./Desktop
表示切换到当前目录下的Desktop目录内,和cd Desktop
效果一致..
:表示上一级目录,比如:cd ..
即可切换到上一级目录,cd ../..
切换到上二级的目录~
:表示HOME目录,比如:cd ~
即可切换到HOME目录或cd ~/Desktop
,切换到HOME内的Desktop目录
创建目录命令(mkdir)
-
可创建新的目录(文件夹)
mkdir [-p] Linux路径
-
参数必填,表示Linux路径,既要创建的文件夹的路径
-
-p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录
文件操作命令
touch
-
创建文件
touch Linux路径
-
touch命令无选项,参数必填,表示要创建的文件路径
cat
-
查看文件内容
cat Linux路径
-
没有选项,只有必填参数,参数表示:被查看的文件路径
more
- 查看文件内容,但与cat不同:
- cat是直接将内容全部显示出来
- more支持翻页,如果文件内容过多,可以一页页展示
more Linux路径
- 没有选项,参数表示:被查看的文件路径
- 可通过空格翻页
- 通过q退出查看
cp
-
可以用于复制文件\文件夹
cp [-r] 参数1 参数2
-
-r选项,可选,用于复制文件夹使用,表示递归
-
参数1,Linux路径,表示被复制的文件或文件夹
-
参数2,Linux路径,表示要复制去的地方
mv
-
可以用于移动文件\文件夹
mv 参数1 参数2
-
参数1,Linux路径,表示被移动的文件或文件夹
-
参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保存在
可以用作重命名操作
rm
-
可用于删除文件、文件夹
rm [-r -f] 参数1 参数2 …… 参数N
-
同cp命令一样,-r选项用于删除文件夹
-
-f表示force,强制删除(不会弹出提示确认信息)
- 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
- 所以一般普通用户用不到-f选项
-
参数1 参数2 …… 参数N表示要删除的文件或文件夹路径,按照空格隔开
支持通配符*
,用来做模糊匹配
- 符号
*
表示通配符,即匹配任意内容(包含空):test*
,表示匹配任何以test开头的内容*test
,表示匹配任何以test结尾的内容*test*
,表示匹配任何包含test的内容
查找命令
之前的linux命令,本体是二进制可执行程序
which
-
查看所使用的一系列命令的程序文件存放在哪里
which 要查找的命令
查找文件
find
-
搜索指定的文件-按文件名查找
find 起始路径 -name "被查找文件名"
-
获取最大权限可以全局查找
su - root
密码:123456 -
根据文件大小查找文件
find 起始路径 -size + | -n[kMG]
- +、-表示大于和小于
- n表示大小数字
- kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB
-
通配符,模糊查询:
test*
,表示匹配任何以test开头的内容*test
,表示匹配任何以test结尾的内容*test*
,表示匹配任何包含test的内容
grep命令
-
从文件中通过关键字过滤文件行
grep [-n] 关键字 文件路径
-
选项-n,可选,表示在结果中显示匹配的行的行号
-
关键字参数,必填,表示过滤的关键字,带有空格或其他符号,建议使用“ ”将关键字包围起来
-
文件路径参数,必填,表示要过滤内容的文件路径,可作为内容输入端口
数量统计wc
-
统计文件的行数、单词数量等
wc [-c -m -l -w] 文件路径
-
-c:统计bytes数量
-
-m:统计字符数量
-
-l:统计行数
-
-w:统计单词数量
-
文件路径:被统计的文件,可作为内容输入端口
管道符 |
- 将管道符左边命令的结果,作为右边命令的输入
- 如:
cat itheima.txt | grep itheima
echo命令
-
可在命令行内输出指定内容
echo 输出的内容
-
只有一个参数,表示要输出的内容,复杂内容可以用“ ”包围
反引号`
-
被反引号包围的内容会被作为命令执行,而非普通字符
echo
pwd
重定向符> >>
- >:将左侧命令的结果覆盖写入到符号右侧指定的文件中
- >>:将左侧命令的结果,追加写入到符号右侧指定的文件中,会自动换行
tail命令
-
可以查看文件尾部内容,跟踪文件的最新更改
tail [-f -num] Linux路径
-
Linux路径:表示被跟踪的文件路径
-
-f:表示持续跟踪,若使用新终端更新对应文件,该命令则可以获得最新更改
-
-num:表示查看尾部多少行,默认10行
vi编辑器
- vi\vim是Linux中最经典的文本编辑器
- vi是命令行下对文本文件进行编辑的绝佳选择,vim是vi的加强版本,兼容vi的所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性
命令模式
-
所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能,不能自由的进行文本编辑
进入:
vi\vim 文件路径
退出::wq
- 如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
- 如果文件路径表示的文件存在,那么次命令用于编辑已有文件
命令 | 描述 |
---|---|
i | 在当前光标位置进入输入模式 |
a | 在当前光标位置 之后 进入输入模式 |
I | 在当前的开头,进入输入模式 |
A | 在当前行的结尾,进入输入模式 |
o | 在当前光标下一行进入输入模式 |
O | 在当前光标上一行进入输入模式 |
esc | 任何情况下输入esc都能回到命令模式 |
/ | 进入搜索模式 |
n | 向下继续搜索 |
N | 向上继续搜索 |
dd | 删除光标所在行的内容 |
ndd | n是数字,表示删除当前光标向下n |
yy | 复制当前行 |
nyy | n是数字,复制当前行和下面的n行 |
p | 粘贴复制的内容 |
u | 撤销修改 |
ctrl+r | 反向撤销修改 |
gg | 跳到首行 |
G | 跳到行尾 |
dG | 从当前行开始,向下全部删除 |
dgg | 从当前行开始,向上全部删除 |
d$ | 从当前光标开始,删除到本行的结尾 |
d0 | 从当前光标开始,删除到本行的开头 |
输入模式
-
编辑模式、插入模式,可对文件内容进行自由编辑
进入:先进入命令模式,
i\a\o……
退出:ESC键
底线命令模式
- 以 :开始,通常用于文件的保存、退出。
进入:先进入命令模式,:
退出:回车键
:wq | 保存并退出 |
---|---|
:q | 仅退出 |
:q! | 强制退出 |
:w | 仅保存 |
:set nu | 显示行号 |
:set paste | 设置粘贴模式 |