目录
Linux 分区
Linux 系统分区要三个区
swap分区 :将一部分硬盘空间作为内存空间使用
(当内存不足时,会将盘上的空间当作内存救急使用)
/(根目录):最重要的分区,所有文件,文件夹都在这个 / 文件夹下,尽量大
boot 分区 :操作系统启动需要的文件 5 -- 10 G
Linux 系统的优点
-
一切皆文件,容易看
-
系统小型轻量级
-
没有复杂的图形界面
-
不在乎后缀名,不通过后缀名定义文件类型
文件路径
文件路径:描述了文件在系统中的位置
举例: /123
根 / 下面有一个文件夹 123
/ 根 / 路径 分隔符
/ 前面没有任何东西就代表根
/ 前面有其它字符就表示分隔符
根目录下部分目录内所包含的文件/前缀的解释/文件类型解释
home :家目录的上级目录,家目录是存放用户个性化配置的地方 root 用户例外,他的家目录在根下的 root
bin : 存放二进制文件(命令)
dev : 存放硬件(硬盘)
lib64 :代码库
net :网络
proc :进程有关,正在运行的程序
run :加载到内存中的文件
boot :系统启动需要的文件
etc :配置文件(用户信息 密码信息 挂载 yum)
mnt :空的,专门用来挂载的文件
opt :存放第三方软件
sbin :管理员可以使用的命令
tmp :临时文件
var :/var/log (登陆文件放置的目录)
root :当前登录的用户名
local host :当前主机名
usr :当前用户所在的目录
# :代表系统管理员
$ :普通用户
- 代表文件的类型
rw-r--r-- 文件的权限
1 硬链接个数(代表该目录有几个子目录)
root 文件的主人
root 文件的属组
0 文件的大小
8月 26 2021 最后一次修改/使用的时间
abc.txt 文件名
文件类型的表达前缀
-:普通文件
d:目录文件夹
p:管道,只能单向传,两个应用程序之间,传递数据 ‘|’
l:链接
s:套接字,两台电脑之间传递信息
c:字符,一次只能收一个字符或发送一个字符
b:块设备,一次可以接受或读取一块区域的数据
shell
shell 是一个程序,属于基础命令,用来协助人机交互翻译,Linux shell 为一种软件的总称,主要作用为将人类使用的高级语言翻译成二进制语言,在用户与内核之间充当 ‘翻译官’ 的作用
—— 用户在登录 Linux 系统时,自动加载一个 shell 程序
—— bash 是 Linux 系统中默认使用的 shell 程序
Linux 命令的分类
—— 内部命令:不需要安装,集成在 shell 中,一旦登录用户自动加载在内存中速度快,是没有独立文件的,都在 /bin/bash 程序中
—— 外部命令:不在 shell 程序中,运行时需要从硬盘加载到内存,是一个个独立的文件
—— type :来测试是否为内部或外部命令
—— 命令的本质就是程序,而程序就是执行程序的一串代码
—— Linux 先判断是外部还是内部,如果是内部直接运行,如果是外部,先看 hash 缓存表, hash 中有直接执行,如果没有表项中去硬盘上找,(如果表项有,但是没有找到直接报 错),先去看规定的路径中是否有(懒惰模式),如果都找不到直接报错
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
(在前面的文件夹中才可以补全)
内部命令与外部命令的区别:
man手册:数据库
查看:man man
man 1:查看命令的使用方法
man 5:查看系统中文件的格式
man 6:游戏
; :可以隔开命令,执行多个命令
| :管道符,根据前面的命令得出的结果来执行下一个命令
空格翻页 ; q退出
man 补充:区段1:用户指令
区段2:系统调用
区段3:程序库调用
区段4:设备
区段5:文件格式
区段6:游戏
区段7:杂项
区段8:系统指令
区段9:内核内部指令
区段n:Tcl或Tk指令
Linux 命令
快捷键 | 功能 |
---|---|
Tab 键 | 自动补齐(两次可以显示所有选项) |
反斜杠“\” | 强制换行或转义 |
Ctrl+e 或 end 键 | 光标移到最后 |
Ctrl+U | 清空至行首不包括当前光标处的字符 |
Ctrl+K | 清空至行尾包括当前光标处的字符 |
Ctrl+a | 光标移到最前 |
Ctrl+w | 从当前光标删除到开头 |
Ctrl + d | 从当前光标删除末尾 |
Ctrl+l | 清屏 |
Ctrl+c | 取消本次命令编辑 |
Ctrl+s/Ctrl+q | 锁屏/解锁 |
向上下箭头 | 回看执行过的命令 |
pwd :显示当前所在目录的绝对路径
cd ~ / cd 什么都不写 :都代表去往当前用户的家目录
cd - :返回上一次目录(只能一次)
相对路径 :不以根开头
绝对路径 :以根开头
—— 举例:
/opt 根下有个opt 文件夹
/mnt 根下有个mnt 文件夹
绝对路径 cd /mnt
相对路径 cd ../mnt
—— ls
生产环境中慎重直接使用,文件量过大会直接死机(有的服务器上的文件是千万级别)
—— -l 已长格式显示文件和目录列表 ll=ls -l
—— -a 显示全部包括隐藏文件
—— -A 显示全部文件或隐藏文件,但不包括 . 和..
—— -d 仅列出目录本身,而不是列出目录内的文件数据
—— -h 友好显示文件大小(human,人性化)
—— -R 递归显示该目录及该目录的子目录下的所有内容
—— -t 已时间顺序显示
—— -r 倒序显示
—— --color 显示颜色
颜色表示的文件类型
黑色数据文件 普通文件。绿色可执行文件
黄色 块设备文件硬件设备 (硬盘)
红色 压缩包
蓝色文件夹
天蓝色 连接文件(快捷方式)
—— -S 以文件容量大小排序
关机命令:halt 立刻关机
poweroff 立刻关机
shutdown -h now 立刻关机(root 用户使用)
shutdown -h 10 10 分钟后自动关机
重启:reboot
init6
shutdown -r now
通配符(find)
通配符和正则表达式之间的区别:
通配符只能匹配一个或一组字符
正则表达式可以匹配更加复杂的模式
[0 - 9] *:表示所有的数字中含有 0 到 9 的数字都显示
符号 | 效果 |
---|---|
? | 匹配一个字符 f?.txt |
* | 匹配所有非隐藏的字符无论多长多短,但不匹配 "." 开头的文件,即隐藏文件 |
{1..10} | 1到10 |
{a..z} | a -- z |
{A..Z} | A -- Z |
[123]([此处括号里值代表一个字符]) | 取其中之一,有就显示 |
[^字符] | 匹配列表中的所有字符以外的字符 |
[a-z] | 无论大小写(除了大写的 Z )都显示 |
[0-9]单个数字 | 匹配数字范围(0123456789) |
\ | 转义符,表示原来的意思 |
[[:lower:]] | 小写 |
[[:upper:]] | 大写 |
[[:digit:]] | 任意数字 |
[[:alpha:]] | 任意字母 |
正则表达式(grep)
基本格式:要查找的字符串以双引号括起来单引号也可以
选项 | 作用 |
---|---|
. | 表示任意一个字符 |
[] | 匹配括号中的一个字符 |
[^] | 表示否定括号中出现字符类中的字符,取反 |
\转义字符 | 用于取消特殊符号的含义 |
^ | 匹配字符串开始的位置(表示以什么开头) |
$ | 匹配字符串结束的位置(表示以什么结尾) |
^$ | 表示空行 |