目录
1. 前言
无论是什么命令,用于什么用途,在 Linux 中,命令有其通用的格式:
command [ -options ] [ parameter ]
- command: 命令本体
- -options: [ 可选,非必填 ] 命令的选项,控制命令的行为细节。
- parameter: [ 可选,非必填 ] 命令的参数,控制命令的指向目标。
注:语法中的[ ] 表示可选的意思。
示例:
ls -l /home/apeiron
- ls 是命令本身
- -l 是选项
- /home/apeiron 是参数
意思是以列表的形式,显示 /home/apeiron 目录中的内容
cp -r test1 test2
- cp 是命令本身
- -r 是选项
- test1 和 test2 是参数
意思是复制文件夹 test1 成为 test2
2. Linux 命令
2.1 ls 命令
语法:ls [ -a -l -h ] [ Linux 路径 ]
注:凡是命令中的 Linux 路径, 绝对路径,相对路径,特殊路径符均可使用。
作用:列出目录下的内容
① 当不使用选项和参数,直接使用 ls 命令本体,表示:以平铺形式,列出当前目录下的内容。
② 选项 -a : 表示 all 的意思,即列出全部文件(包含 隐藏的 文件和文件夹)。
- 图中以 . 开头的,表示是 Linux 系统的隐藏文件/文件夹(只要以 . 开头,就能自动隐藏),只有通过 -a 选项,才能够看到这些隐藏的文件/文件夹。
③ 选项 -l : 以列表(竖向排列)的形式展示内容,并展示更多信息。
- 序号 a :表示文件、文件夹的权限控制信息
- 序号 b :表示文件、文件夹的所属用户
- 序号 c :表示文件、文件夹的所属用户组
④ 选项 -h :列出文件的大小,如 K,M,G
注:-h 选项必须要搭配 -l 一起使用,单独使用,没有任何效果。
注:上图文件大小没有显示大小单位的,默认为字节。
⑤ 选项组合使用
- 表示所选选项的内容都会起作用,选项之间没有顺序。
⑥ 除了选项本身可以组合以外,选项和参数也可以一起使用。
2.2 cd 命令
作用:切换目录
语法:cd [ linux 路径 ]
cd 命令来自:Change Directory
- cd 没有选项,只有参数,表示目标路径
- cd 使用参数,切换到指定路径
- cd 不写参数,表示回到用户的 HOME 目录
2.3 pwd 命令
作用:查看当前所在的工作路径
语法:pwd
- pwd 命令,无选项,无参数,直接输入 pwd 即可。
- pwd 命令来自:Print Work Directory
2.4 mkdir 命令
作用:创建新的目录(文件夹)
语法:mkdir [ -p ] Linux 路径
- 参数必填,表示 Linux 路径,即要创建的文件夹路径。
- -p :表示自动创建不存在的父目录,适用于创建连续多层级的目录
① 相对路径创建目录
② 绝对路径创建目录
③ 特殊路径符创建目录
④ -p 选项
如果想要一次性创建多个层级的目录,如下图:
报错了,因为上级目录 Language 和 Content 并不存在,所以无法创建 Javascript 目录。
可以通过 -p 选项,将一整个目录链条都创建完成。
⑤ 只能在 HOME 目录下创建目录文件夹,如果出了 HOME 目录创建目录文件夹,则需要特定的权限。
- 上图表示了,想要在根目录下创建一个 Golang 目录,则创建不成功。系统提示 Permission denied ,意思是没有权限。
2.5 touch 命令
作用:创建文件
语法:touch Linux路径
- touch 命令无选项,只有必填参数,参数表示:要创建的文件路径,相对、绝对、特殊路径符均可以使用。
2.6 cat 命令
作用:查看文件内容
语法:cat Linux 路径
- cat 命令无选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对和特殊路径符都可以使用。
2.7 more 命令
作用:查看文件内容
more 命令同样可以查看文件内容,同 cat 不同的是:
- cat 是直接将内容全部显示出来
- more 支持翻页,如果文件内容过多,可以一页一页的展示
语法:more Linux路径
- 同样 more 命令没有选项,只有必填参数,参数表示:被查看的文件路径。
- 在查看文件内容的过程中,用空格翻页。7% 表示当前查看进度。
2.8 cp 命令
作用:复制文件 \ 文件夹
语法:cp [-r] 参数1 参数2
cp 命令来自英文单词:copy
- -r 选项,可选,用于复制文件夹 使用,表示递归
- 参数1,Linux 路径,表示被复制的文件或文件夹
- 参数2,Linux 路径,表示要复制去的地方
① 文件的复制
② 文件夹的复制
- 从上图中可以看到,想要复制文件夹,需要 -r 选项。
2.9 mv 命令
作用:移动文件 \ 文件夹
语法:mv 参数1 参数2
mv 命令来自英文单词:move
- 参数1,Linux 路径,表示被移动的文件或者文件夹
- 参数2,Linux 路径,表示文件或文件夹被移动去的地方(目标路径), 目标路径 上的 文件名 与 原文件名 不相同,则对原文件进行改名。
① 文件的移动
② 用文件的移动,对文件进行重名名
- 在目标路径上,加入新的文件名,对原文件 重命名 。
③ 文件夹的移动
2.10 rm 命令
作用:删除文件 \ 文件夹
语法:rm [ -r -f ] 参数1,参数2,参数3,...
rm 命令来自英文单词:remove
- 同 cp 命令一样,-r 选项用于 删除文件夹
- -f 表示 force ,强制删除(不会弹出提示确认信息)
- 普通用户删除内容不会弹出提示,只有 root 管理员用户删除内容会有提示( ubuntu 22.04 不会有提示)
- 一般普通用户用不到 -f 选项
- 参数1、参数2、......、参数 N 表示要删除的文件或文件夹路径,参数之间按照空格隔开
① 删除文件
② 删除文件夹
- 从上图中可以看到,不加选项 -r ,不能删除文件夹。
③ 删除多个文件夹
④ 用通配符 * 删除文件和文件夹
rm 命令支持通配符 * ,用来做模糊匹配,即匹配任意内容(包含空),示例:
- test * ,表示匹配任何以 test 开头的内容
- * test,表示匹配任何以 test 结尾的内容
- * test *,表示匹配任何包含 test 的内容
- rm 是一个极具危险的命令,特别是在处于 root 用户的时候,请谨慎使用。
如下命令,请千万千万不要在 root 管理员用户下执行:
rm -rf /
rm -rf /*
效果等同于在 windows 上执行 C 盘格式化,oh, shit ,那真是会毁天灭地。
当然,如果你想吃牢饭,或者说逼债被逼到走投无路,这会是一个不错的选择。
2.11 which 命令
Linux 命令的本体就是一个 二进制可执行程序,它和 windows 系统中的 .exe 文件是一个意思。我们可以通过 which 命令,查看所用的一系列命令的程序文件存放在哪里。
语法:which 要查找的命令
2.12 find 命令
① find 命令 - 按文件名查找文件
在图形化中,我们可以方便的通过系统提供的搜索功能,搜索指定的文件。
同样,在 Linux 系统中,我们可以通过 find 命令去搜索指定的文件。
语法:find 起始路径 -name "被查找的文件名"
- -name 表示以 文件名 的模式,去搜索内容。
② find 命令 - 按通配符查找文件
find 命令支持通配符 * ,用来做模糊匹配,即匹配任意内容(包含空),示例:
- test * ,表示匹配任何以 test 开头 的内容
- * test,表示匹配任何以 test 结尾 的内容
- * test *,表示匹配任何 包含 test 的内容
③ find 命令 - 按文件大小查找文件
语法:find 起始路径 -size +/-n[ kMG ]
- +、- 表示大于和小于
- n 表示大小数字
- KMG 表示大小单位,k【小写字母】表示 kb,M 表示 MB,G 表示 GB
示例:查找小于10 kb 的文件
3. 总结
这篇文章总结了 Linux 的 12 个基础命令。学习 Linux 没有什么要理解的知识,但是只看不练,两三天就忘了;还是要多多的实际动手操作,加深印象。今天的分享总结就到这里了,我们下期再见!!!