diff --git a/notes/Linux.md b/notes/Linux.md index 40729a2f..5fce729a 100644 --- a/notes/Linux.md +++ b/notes/Linux.md @@ -39,7 +39,8 @@ * [获取文件内容](#获取文件内容) * [指令与文件搜索](#指令与文件搜索) * [六、压缩与打包](#六压缩与打包) - * [压缩](#压缩) + * [压缩文件名](#压缩文件名) + * [压缩指令](#压缩指令) * [打包](#打包) * [七、Bash](#七bash) * [特性](#特性) @@ -634,7 +635,7 @@ cp [-adfilprsu] source destination ### 2. whereis -whereis 搜索文件的速度比较快,因为它只搜索几个特定的目录。 +文件搜索。速度比较快,因为它只搜索几个特定的目录。 ```html # whereis [-bmsu] dirname/filename @@ -642,18 +643,18 @@ whereis 搜索文件的速度比较快,因为它只搜索几个特定的目录 ### 3. locate -locate 可以用关键字或者正则表达式进行搜索。 +文件搜索。可以用关键字或者正则表达式进行搜索。 locate 使用 /var/lib/mlocate/ 这个数据库来进行搜索,它存储在内存中,并且每天更新一次,所以无法用 locate 搜索新建的文件。可以使用 updatedb 来立即更新数据库。 ```html # locate [-ir] keyword --r:接正则表达式 +-r:正则表达式 ``` ### 4. find -find 可以使用文件的属性和权限进行搜索。 +文件搜索。可以使用文件的属性和权限进行搜索。 ```html # find [basedir] [option] @@ -695,13 +696,11 @@ example: find . -name "shadow*" -perm /mode :搜索权限包含任一 mode 的文件 ``` - - # 六、压缩与打包 -## 压缩 +## 压缩文件名 -Linux 底下有很多压缩文件的扩展名,常见的如下: +Linux 底下有很多压缩文件名,常见的如下: | 扩展名 | 压缩程序 | | -- | -- | @@ -715,6 +714,8 @@ Linux 底下有很多压缩文件的扩展名,常见的如下: |\*.tar.bz2 | tar 程序打包的文件,经过 bzip2 的压缩 | |\*.tar.xz | tar 程序打包的文件,经过 xz 的压缩 | +## 压缩指令 + ### 1. gzip gzip 是 Linux 使用最广的压缩指令,可以解开 compress、zip 与 gzip 所压缩的文件。 @@ -777,7 +778,7 @@ $ tar [-z|-j|-J] [xv] [-f 已有的 tar 文件] [-C 目录] ==解压缩 ``` | 使用方式 | 命令 | -| --- | --- | +| :---: | --- | | 打包压缩 | tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称 | | 查 看 | tar -jtv -f filename.tar.bz2 | | 解压缩 | tar -jxv -f filename.tar.bz2 -C 要解压缩的目录 | @@ -788,21 +789,23 @@ $ tar [-z|-j|-J] [xv] [-f 已有的 tar 文件] [-C 目录] ==解压缩 ## 特性 -1. 命令历史:记录使用过的命令。本次登录所执行的命令都会暂时存放到内存中,\~/.bash_history 文件中记录的是前一次登录所执行过的命令。 +- 命令历史:记录使用过的命令。本次登录所执行的命令都会暂时存放到内存中,\~/.bash_history 文件中记录的是前一次登录所执行过的命令。 -2. 命令与文件补全:快捷键:tab。 +- 命令与文件补全:快捷键:tab。 -3. 命名别名:例如 lm 是 ls -al 的别名。 +- 命名别名:例如 lm 是 ls -al 的别名。 -4. shell scripts。 +- shell scripts。 -5. 通配符:例如 ls -l /usr/bin/X\* 列出 /usr/bin 下面所有以 X 开头的文件。 +- 通配符:例如 ls -l /usr/bin/X\* 列出 /usr/bin 下面所有以 X 开头的文件。 ## 变量操作 -- 对一个变量赋值直接使用 = ; -- 对变量取用需要在变量前加上 \$ ,也可以用 \${} 的形式; -- 输出变量使用 echo 命令。 +对一个变量赋值直接使用 =。 + +对变量取用需要在变量前加上 \$ ,也可以用 \${} 的形式; + +输出变量使用 echo 命令。 ```bash $ var=abc @@ -874,7 +877,7 @@ $ ls -al /etc | less ## 提取指令 -cut 对数据进行切分,取出想要的部分。提取过程一行一行地进行。 +cut 对数据进行切分,取出想要的部分。切分过程一行一行地进行。 ```html $ cut @@ -923,7 +926,7 @@ $ sort [-fbMnrtuk] [file or stdin] -k :指定排序的区间 ``` -范例:/etc/passwd 内容是以 : 来分隔的,以第三栏来排序。 +范例:/etc/passwd 文件内容以 : 来分隔,要求以第三列进行排序。 ```html $ cat /etc/passwd | sort -t ':' -k 3 @@ -1069,7 +1072,7 @@ $ printf '%10s %5i %5i %5i %8.2f \n' $(cat printf.txt) 可以根据字段的某些条件进行匹配,例如匹配字段小于某个值的那一行数据。 ```html -$ awk ' 条件类型 1 {动作 1} 条件类型 2 {动作 2} ...' filename +$ awk '条件类型 1 {动作 1} 条件类型 2 {动作 2} ...' filename ``` awk 每次处理一行,处理的最小单位是字段,每个字段的命名方式为:\$n,n 为字段号,从 1 开始,\$0 表示一整行。