/
├── bin #存放二进制可执行文件,常用命令一般都在这里
├── boot #存放用于系统引导时使用的各种文件
├── dev #用于存放设备文件
├── etc #存放系统管理和配置文件
├── home #存放所有用户文件的根目录
├── lib #存放着和系统运行相关的库文件
├── media #linux 系统会自动识别一些设备,当识别后,linux 会把识别的设备挂载到这个目录下
├── mnt #用户临时挂载其他的文件系统
├── opt #额外安装的可选应用程序包所放置的位置
├── proc #虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息
├── root #超级用户的主目录
├── run #是一个临时文件系统,存储系统启动以来的信息
├── sbin #存放二进制可执行文件,只有 root 才能访问
├── srv #该目录存放一些服务启动之后需要提取的数据
├── sys #存放内核相关文件
├── tmp #用于存放各种临时文件,是公用的临时文件存储点
├── usr #用于存放系统应用程序
└── var #用于存放运行时需要改变数据的文件,比如服务的日志文件
查看系统信息、内存信息、磁盘信息、负载信息、路由信息、端口信息、进程、登录用户、关机、重启、系统时间、用户管理、文件权限、压缩解压
[root@localhost ~]# which php
/usr/bin/php
[root@localhost ~]# whereis php
php: /usr/bin/php /usr/lib64/php /etc/php.d /etc/php.ini /usr/include/php /usr/share/php /usr/share/man/man1/php.1.gz
[root@localhost ~]# find / -name php-fpm
/run/php-fpm
/etc/sysconfig/php-fpm
/etc/logrotate.d/php-fpm
/var/log/php-fpm
/usr/sbin/php-fpm
数据流分为三类:标准输入(stdin)、标准输出(stdout)、标准错误输出(stderr)
/dev/null:是一个特殊的设备文件,这个文件接收到的任何数据都会被丢弃。因此,null 这个设备通常也被成为位桶(bit bucket)或黑洞
可以处理前一个标准输出信息,对标准错误输出没有处理能力
- cut:将以行为单位的字符串进行切割
- grep:分析一行字符,截取所需要的特定信息
- sort:可以依据不同的数据类型进行排序
- uniq:数据去重
- wc:统计行数、字符数
- xargs:将标准输入转换成命令行参数
sed 是一个管道命令,用于分析标准输出。支持数据的替换、删除、新增、截取特定行等功能
awk 是一个数据处理工具,sed 常常用于一整行的数据处理,awk 则倾向于将一行数据分成数据部分来处理。因此,awk 适合小型的数据进行局部处理
代表意义 | 分钟 | 小时 | 日期 | 月份 | 星期 | 指令 |
---|---|---|---|---|---|---|
数字范围 | 0-59 | 0-23 | 1-31 | 1-12 | 0-7 | command |
特殊符号 | 意义 | 示例 |
---|---|---|
* | 表示任何时刻 | * |
, | 表示分隔时段 | 0 3,6 * * * command(3:00与6:00) |
- | 表示一段时间范围 | 20 8-12 * * * command(8:20~12:20) |
/n | 每隔 n 段时间 | */5 * * * * command(每五分钟进行一次) |
normal、insert、command、visual、replace
<c-f>
:向下移动一页 (相当于:ctrl + f)<c-d>
:向下移动半页<c-b>
:向上移动一页<c-u>
:向上移动半页
h
、j
、k
、l
:←
、↓
、↑
、→
nh
:向左移动 n 个字符(四个方向均可)^
:移动到行首$
:移动到行尾nG
:移动到指定行数gg
:移动到文档第一行,相当于 1GG
:移动到文档最后一行
-
/word
:输入/
会进入 command 模式,在输入关键字回车进行搜索 -
?word
:/
是向光标以后搜索,?
是向前搜索 -
n
:根据搜索方向定位到下一个匹配目标 -
N
:与n
相反方向定位匹配目标 -
:n1,n2s/word1/word2/g
:n1,n2 表示数字,替换n1行到n2行的单词 -
:1,$s/word1/word2/g
:全文替换,也可以写成:%s/word1/word2/g
-
:1,$s/word1/word2/gc
:全文替换,并出现确认提示
使用 uptime、w、top 命令查看
load average: 0.00, 0.01, 0.05
,系统的平均负荷,对应 1分钟、5分钟、15分钟
X 个 CPU 的电脑,可接受的系统负荷最大为 X.0
。将15分钟
系统负荷作为服务器正常运行的指标
malloc分配虚拟内存 mmap虚拟内存映射方法 hugepage虚拟内存映射方法,分配2MB或1GB
一种实现在计算机软硬件之间的内存管理技术,将程序使用到的内存地址映射到计算机内存中的物理地址 32位虚拟内存大小为0-4g,一个内存也默认大小为4kb
提高内存安全性
每个进程都有它自己的虚拟内存 虚拟内存的大小取决于系统的体系结构
是一个动态概念;由程序、数据和进程控制块组成。系统进行资源分配、调度和管理的最小单位。
是进程的活动成分,是处理器分配资源的最小单位;可以共享进程的资源与地址空间。
协程是一种用户态的轻量级线程,又称微线程,英文名 Coroutine,协程的调度完全由用户控制
把一个处理器划分为若干个短的时间片,每个时间片依次轮流地执行处理各个应用程序,由于一个时间片很短,相对于一个应用程序来说,就好像是处理器在为自己单独服务一样,从而达到多个应用程序在同时进行的效果。
多线程就是把操作系统中的这种并发执行机制原理运用在一个程序中,把一个程序划分为若干个子任务,多个子任务并发执行,每一个任务就是一个线程
信号量、消息队列、共享内存、信号、管道、套接字
信号是操作系统中进程间通讯的一种有限制的方式,是一种异步的通知机制,用来提醒进程一个事件已经发送
- SIGHUP:控制台操作
- SIGINT:终止进程,
Ctrl + C
- SIGKILL:终止进程,
kill -9
- SIGSTOP:停止进程的执行
- SIGCONT:恢复进程的执行