auto commit
This commit is contained in:
@ -118,7 +118,7 @@ info 与 man 类似,但是 info 将文档分成一个个页面,每个页面
|
||||
**2. shutdown**
|
||||
|
||||
```html
|
||||
# /sbin/shutdown [-krhc] [ 时间 ] [ 警告讯息 ]
|
||||
# /sbin/shutdown [-krhc] [时间] [警告讯息]
|
||||
-k : 不会关机,只是发送警告讯息,通知所有在线的用户
|
||||
-r : 将系统的服务停掉后就重新启动
|
||||
-h : 将系统的服务停掉后就立即关机
|
||||
@ -153,7 +153,7 @@ netstat -anp | grep 80
|
||||
## 运行等级
|
||||
|
||||
- 0:关机模式
|
||||
- 1:单用户模式(可用于破解 root 密码)
|
||||
- 1:单用户模式(可用于破解root密码)
|
||||
- 2:无网络支持的多用户模式
|
||||
- 3:有网络支持的多用户模式(文本模式,工作中最常用的模式)
|
||||
- 4:保留,未使用
|
||||
@ -210,7 +210,7 @@ MBR 中,第一个扇区最重要,里面有:主要开机记录(Master boo
|
||||
|
||||
分区表只有 64 bytes,最多只能存储 4 个分区,这 4 个分区为主分区(Primary)和扩展分区(Extended)。其中扩展分区只有一个,它将其它空间用来记录分区表,可以记录更多的分区,因此通过扩展分区可以分出更多区分,这些分区称为逻辑分区。
|
||||
|
||||
Linux 也把分区当成文件,分区文件的命名方式为:磁盘文件名 + 编号,例如 /dev/sda1。注意,逻辑分区的编号从 5 开始。
|
||||
Linux 也把分区当成文件,分区文件的命名方式为:磁盘文件名+编号,例如 /dev/sda1。注意,逻辑分区的编号从 5 开始。
|
||||
|
||||
### 2. GPT
|
||||
|
||||
@ -282,7 +282,7 @@ UEFI 相比于 BIOS 来说功能更为全面,也更为安全。
|
||||
不仅可以修改文件拥有者,也可以修改文件所属群组。
|
||||
|
||||
```html
|
||||
# chown [-R] 用户名 : 群组名 dirname/filename
|
||||
# chown [-R] 用户名:群组名 dirname/filename
|
||||
```
|
||||
|
||||
### 3. 修改权限
|
||||
@ -335,7 +335,7 @@ UEFI 相比于 BIOS 来说功能更为全面,也更为安全。
|
||||
|
||||
为了使不同 Linux 发行版本的目录结构保持一致性,Filesystem Hierarchy Standard (FHS) 规定了 Linux 的目录结构。最基础的三个目录如下:
|
||||
|
||||
- / (root, 根目录 )
|
||||
- / (root, 根目录)
|
||||
- /usr (unix software resource):所有系统默认软件都会安装到这个目录;
|
||||
- /var (variable):存放系统或程序运行过程中的数据文件。
|
||||
|
||||
@ -378,7 +378,7 @@ cp [-adfilprsu] source destination
|
||||
-p :连同文件的属性一起复制过去
|
||||
-r :递归持续复制
|
||||
-u :destination 比 source 旧才更新 destination,或 destination 不存在的情况下才复制
|
||||
--preserve=all :除了 -p 的权限相关参数外,还加入 SELinux 的属性 , links, xattr 等也复制了
|
||||
--preserve=all :除了 -p 的权限相关参数外,还加入 SELinux 的属性, links, xattr 等也复制了
|
||||
```
|
||||
|
||||
### 3. rm
|
||||
@ -449,8 +449,8 @@ cp [-adfilprsu] source destination
|
||||
-a : 更新 atime
|
||||
-c : 更新 ctime,若该文件不存在则不建立新文件
|
||||
-m : 更新 mtime
|
||||
-d : 后面可以接欲更新的日期而不用当前的日期,也可以使用 --date=" 日期或时间 "
|
||||
-t :后面可以接欲更新的时间而不用当前的时间,格式为 [YYYYMMDDhhmm]
|
||||
-d : 后面可以接欲更新的日期而不用当前的日期,也可以使用 --date="日期或时间"
|
||||
-t :后面可以接欲更新的时间而不用当前的时间,格式为[YYYYMMDDhhmm]
|
||||
```
|
||||
|
||||
## 指令与文件搜索
|
||||
@ -495,8 +495,8 @@ find 可以使用文件的属性和权限进行搜索。
|
||||
|
||||
```html
|
||||
-mtime n :列出在 n 天前的那一天修改过内容的文件
|
||||
-mtime +n :列出在 n 天之前 ( 不含 n 天本身 ) 修改过内容的文件
|
||||
-mtime -n :列出在 n 天之内 ( 含 n 天本身 ) 修改过内容的文件
|
||||
-mtime +n :列出在 n 天之前(不含 n 天本身)修改过内容的文件
|
||||
-mtime -n :列出在 n 天之内(含 n 天本身)修改过内容的文件
|
||||
-newer file : 列出比 file 更新的文件
|
||||
```
|
||||
|
||||
@ -519,7 +519,7 @@ find 可以使用文件的属性和权限进行搜索。
|
||||
|
||||
```html
|
||||
-name filename
|
||||
-size [+-] SIZE:搜寻比 SIZE 还要大 (+) 或小 (-) 的文件。这个 SIZE 的规格有:c: 代表 byte,k: 代表 1024bytes。所以,要找比 50KB 还要大的文件,就是 -size +50k
|
||||
-size [+-]SIZE:搜寻比 SIZE 还要大(+)或小(-)的文件。这个 SIZE 的规格有:c: 代表 byte,k: 代表 1024bytes。所以,要找比 50KB 还要大的文件,就是 -size +50k
|
||||
-type TYPE
|
||||
-perm mode :搜索权限等于 mode 的文件
|
||||
-perm -mode :搜索权限包含 mode 的文件
|
||||
@ -556,13 +556,13 @@ inode 中记录了文件内容所在的 block,但是每个 block 非常小,
|
||||
|
||||
inode 具体包含以下信息:
|
||||
|
||||
- 该文件的存取模式 (read/write/excute);
|
||||
- 该文件的拥有者与群组 (owner/group);
|
||||
- 该文件的存取模式(read/write/excute);
|
||||
- 该文件的拥有者与群组(owner/group);
|
||||
- 该文件的容量;
|
||||
- 该文件建立或状态改变的时间 (ctime);
|
||||
- 最近一次的读取时间 (atime);
|
||||
- 最近修改的时间 (mtime);
|
||||
- 定义文件特性的旗标 (flag),如 SetUID...;
|
||||
- 该文件建立或状态改变的时间(ctime);
|
||||
- 最近一次的读取时间(atime);
|
||||
- 最近修改的时间(mtime);
|
||||
- 定义文件特性的旗标(flag),如 SetUID...;
|
||||
- 该文件真正内容的指向 (pointer)。
|
||||
|
||||
## 目录的 inode 与 block
|
||||
@ -636,7 +636,7 @@ $ gzip [-cdtv#] filename
|
||||
-d :解压缩
|
||||
-t :检验压缩文件是否出错
|
||||
-v :显示压缩比等信息
|
||||
-# : # 为数字的意思,代表压缩等级,数字越大压缩比越高,默认为 6
|
||||
-# : # 为数字的意思,代表压缩等级,数字越大压缩比越高,默认为6
|
||||
```
|
||||
|
||||
### 2. bzip2
|
||||
@ -667,16 +667,16 @@ $ xz [-dtlkc#] filename
|
||||
压缩指令只能对一个文件进行压缩,而打包能够将多个文件打包成一个大文件。tar 不仅可以用于打包,也可以使用 gip、bzip2、xz 将打包文件进行压缩。
|
||||
|
||||
```html
|
||||
$ tar [-z|-j|-J] [cv] [-f 新建的 tar 文件 ] filename... == 打包压缩
|
||||
$ tar [-z|-j|-J] [tv] [-f 已有的 tar 文件 ] == 查看
|
||||
$ tar [-z|-j|-J] [xv] [-f 已有的 tar 文件 ] [-C 目录 ] == 解压缩
|
||||
-z :使用 zip;
|
||||
-j :使用 bzip2;
|
||||
-J :使用 xz;
|
||||
$ tar [-z|-j|-J] [cv] [-f 新建的tar文件] filename... ==打包压缩
|
||||
$ tar [-z|-j|-J] [tv] [-f 已有的tar文件] ==查看
|
||||
$ tar [-z|-j|-J] [xv] [-f 已有的tar文件] [-C 目录] ==解压缩
|
||||
-z :使用zip;
|
||||
-j :使用bzip2;
|
||||
-J :使用xz;
|
||||
-c :新建打包文件;
|
||||
-t :查看打包文件里面有哪些文件;
|
||||
-x :解打包或解压缩的功能;
|
||||
-v :在压缩 / 解压缩的过程中,显示正在处理的文件名;
|
||||
-v :在压缩/解压缩的过程中,显示正在处理的文件名;
|
||||
-f : filename:要处理的文件;
|
||||
-C 目录 : 在特定目录解压缩。
|
||||
```
|
||||
@ -724,7 +724,7 @@ $ echo $var
|
||||
$ echo ${var}
|
||||
```
|
||||
|
||||
变量内容如果有空格,需要使用双引号或者单引号。双引号内的特殊字符可以保留原本特性,例如 var="lang is \<img src="https://latex.codecogs.com/gif.latex?LANG",则var的值为langiszh_TW.UTF-8;而单引号内的特殊字符就是特殊字符本身,例如var='langis\"/>LANG',则 var 的值为 lang is \$LANG。
|
||||
变量内容如果有空格,需要使用双引号或者单引号。双引号内的特殊字符可以保留原本特性,例如var="lang is \<img src="https://latex.codecogs.com/gif.latex?LANG",则var的值为langiszh_TW.UTF-8;而单引号内的特殊字符就是特殊字符本身,例如var='langis\"/>LANG',则 var 的值为 lang is \$LANG。
|
||||
|
||||
|
||||
可以使用 \`指令\` 或者 \<img src="https://latex.codecogs.com/gif.latex?(指令)的方式将指令的执行结果赋值给变量。例如version=\"/>(uname -r),则 version 的值为 3.10.0-229.el7.x86_64。
|
||||
@ -738,7 +738,7 @@ $ declare [-aixr] variable
|
||||
-a : 定义为数组类型
|
||||
-i : 定义为整数类型
|
||||
-x : 定义为环境变量
|
||||
-r : 定义为 readonly 类型
|
||||
-r : 定义为readonly类型
|
||||
```
|
||||
|
||||
使用 [ ] 来对数组进行操作:
|
||||
@ -761,9 +761,9 @@ $ echo ${array[1]}
|
||||
重定向就是使用文件代替标准输入、标准输出和标准错误输出。
|
||||
|
||||
|
||||
1. 标准输入 (stdin) :代码为 0 ,使用 < 或 << ;
|
||||
2. 标准输出 (stdout) :代码为 1 ,使用 > 或 >> ;
|
||||
3. 标准错误输出 (stderr):代码为 2 ,使用 2> 或 2>> ;
|
||||
1. 标准输入(stdin) :代码为 0 ,使用 < 或 << ;
|
||||
2. 标准输出(stdout) :代码为 1 ,使用 > 或 >> ;
|
||||
3. 标准错误输出(stderr):代码为 2 ,使用 2> 或 2>> ;
|
||||
|
||||
其中,有一个箭头的表示以覆盖的方式重定向,而有两个箭头的表示以追加的方式重定向。
|
||||
|
||||
@ -815,7 +815,7 @@ declare -x HISTCONTROL="ignoredups"
|
||||
declare -x HISTSIZE="1000"
|
||||
declare -x HOME="/home/dmtsai"
|
||||
declare -x HOSTNAME="study.centos.vbird"
|
||||
.....( 其他省略 ).....
|
||||
.....(其他省略).....
|
||||
|
||||
$ export | cut -c 12
|
||||
```
|
||||
@ -961,7 +961,7 @@ $ grep -n 'the' regular_express.txt
|
||||
因为 { 与 } 的符号在 shell 是有特殊意义的,因此必须要使用使用转义字符进行转义。
|
||||
|
||||
```html
|
||||
$ grep -n 'go\{2, 5\} g' regular_express.txt
|
||||
$ grep -n 'go\{2,5\}g' regular_express.txt
|
||||
```
|
||||
|
||||
## printf
|
||||
@ -980,7 +980,7 @@ $ printf '%10s %5i %5i %5i %8.2f \n' $(cat printf.txt)
|
||||
## awk
|
||||
|
||||
```html
|
||||
$ awk ' 条件类型 1{ 动作 1} 条件类型 2{ 动作 2} ...' filename
|
||||
$ awk '条件类型1{动作1} 条件类型2{动作2} ...' filename
|
||||
```
|
||||
|
||||
awk 每次处理一行,处理的最小单位是字段,每个字段的命名方式为:\<img src="https://latex.codecogs.com/gif.latex?n,n为字段号,从1开始,\"/>0 表示一整行。
|
||||
@ -1036,16 +1036,16 @@ daemon 2
|
||||
|
||||
| 命令 | 作用 |
|
||||
| -- | -- |
|
||||
| :w | 写入磁盘 |
|
||||
| :w | 写入磁盘|
|
||||
| :w! | 当文件为只读时,强制写入磁盘。到底能不能写入,与用户对该文件的权限有关 |
|
||||
| :q | 离开 |
|
||||
| :q! | 强制离开不保存 |
|
||||
| :wq | 写入磁盘后离开 |
|
||||
| :wq!| 强制写入磁盘后离开 |
|
||||
| :q | 离开|
|
||||
| :q! | 强制离开不保存|
|
||||
| :wq | 写入磁盘后离开|
|
||||
| :wq!| 强制写入磁盘后离开|
|
||||
|
||||
|
||||
# 参考资料
|
||||
|
||||
- 鸟哥 . 鸟 哥 的 Linux 私 房 菜 基 础 篇 第 三 版 [J]. 2009.
|
||||
- [Linux 平台上的软件包管理 ](https://www.ibm.com/developerworks/cn/linux/l-cn-rpmdpkg/index.html)
|
||||
- 鸟哥. 鸟 哥 的 Linux 私 房 菜 基 础 篇 第 三 版[J]. 2009.
|
||||
- [Linux 平台上的软件包管理](https://www.ibm.com/developerworks/cn/linux/l-cn-rpmdpkg/index.html)
|
||||
|
||||
|
Reference in New Issue
Block a user