Black-Gold 6 years ago
parent f91b741d4f
commit b5aba20552

@ -99,12 +99,12 @@ egrep是grep的扩展支持更多的re元字符 fgrep就是fixed grep或fa
```bash ```bash
^ # 锚定行的开始 如:'^grep'匹配所有以grep开头的行。 ^ # 锚定行的开始 如:'^grep'匹配所有以grep开头的行。
$ # 锚定行的结束 如:'grep$'匹配所有以grep结尾的行。 $ # 锚定行的结束 如:'grep$'匹配所有以grep结尾的行。
\ # 转义符 \ # 转义符
. # 匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符然后是p。 . # 匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符然后是p。
* # 匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。 * # 匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.* # 一起用代表任意字符。 .* # 一起用代表任意字符。
[] # 匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。 [] # 匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。
[^] # 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头紧跟rep的行。 [^] # 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头紧跟rep的行。
\(..\) # 标记匹配字符,如'\(love\)'love被标记为1。 \(..\) # 标记匹配字符,如'\(love\)'love被标记为1。
\< # 锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。 \< # 锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。
\> # 锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。 \> # 锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。
@ -160,6 +160,12 @@ fgrep快速grep命令不支持正则表达式与grep -F等价
## grep命令常见用法 ## grep命令常见用法
显示系统上使用Bash shell登录的所有用户
grep bash /etc/passwd | cut -d: -f1
搜索目录下十小时前更改的文件不包括文件夹只使用grep实现。(更好的方式用find实现)
ls -algG --time-style=+%s | grep ^[^d] | awk -vlimit=$(date +%s -d '10 hours ago') '$4 > limit { print substr($0, index($0, $4) + length($4) + 1) }'
递归搜索含有某个关键字的文件目录 递归搜索含有某个关键字的文件目录
grep -iHR "关键字" ./* grep -iHR "关键字" ./*
-i 对要搜索的字符忽略大小写 -i 对要搜索的字符忽略大小写

@ -1,21 +1,14 @@
ls # ls
===
显示目录内容列表 显示目录内容列表
## 补充说明 ## 说明
**ls命令** 用来显示目标列表在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示以分区不同类型的文件。 **ls命令** 用来显示目标列表在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示以分区不同类型的文件。
### 语法 ## 选项
``` ```sh
ls选项参数
```
### 选项
```
-a显示所有档案及目录连同隐藏档开头为.文件一起罗列出来); -a显示所有档案及目录连同隐藏档开头为.文件一起罗列出来);
-A显示全部文件和目录连同隐藏文件但不包括.和..这两个目录; -A显示全部文件和目录连同隐藏文件但不包括.和..这两个目录;
-C多列显示输出结果。这是默认选项 -C多列显示输出结果。这是默认选项
@ -48,30 +41,11 @@ ls选项参数
### 实例 ### 实例
```bash ```sh
$ ls # 仅列出当前目录可见文件 ls # 仅列出当前目录可见文件
$ ls -l # 列出当前目录可见文件详细信息 ls -l # 列出当前目录可见文件详细信息
$ ls -hl # 列出详细信息并以可读大小显示文件大小 ls -hl # 列出详细信息并以可读大小显示文件大小
$ ls -al # 列出所有文件(包括隐藏)的详细信息 ls -al # 列出所有文件(包括隐藏)的详细信息
```
显示当前目录下包括影藏文件在内的所有文件列表
```
[root@localhost ~]# ls -a
. anaconda-ks.cfg .bash_logout .bashrc install.log .mysql_history satools .tcshrc .vimrc
.. .bash_history .bash_profile .cshrc install.log.syslog .rnd .ssh .viminfo
```
输出长格式列表
```
[root@localhost ~]# ls -1
anaconda-ks.cfg
install.log
install.log.syslog
satools
``` ```
显示文件的inode信息 显示文件的inode信息

@ -1,51 +1,46 @@
# sed # sed
===
功能强大的流式文本编辑器 功能强大的流式文本编辑器
## 补充说明 ## 说明
**sed** 是一种流编辑器它是文本处理中非常中的工具能够完美的配合正则表达式使用功能不同凡响。处理时把当前处理的行存储在临时缓冲区中称为“模式空间”pattern space接着用sed命令处理缓冲区中的内容处理完成后把缓冲区的内容送往屏幕。接着处理下一行这样不断重复直到文件末尾。文件内容并没有 改变除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件简化对文件的反复操作编写转换程序等。 **sed** 是一种流编辑器它是文本处理中非常中的工具能够完美的配合正则表达式使用功能不同凡响。处理时把当前处理的行存储在临时缓冲区中称为“模式空间”pattern space接着用sed命令处理缓冲区中的内容处理完成后把缓冲区的内容送往屏幕。接着处理下一行这样不断重复直到文件末尾。文件内容并没有 改变除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件简化对文件的反复操作编写转换程序等。
## sed的选项、命令、替换标记 ## 命令格式
### 命令格式
```sh ```sh
用法: sed [选项]... {脚本(如果没有其他脚本)} [输入文件]... 用法: sed [选项]... {脚本(如果没有其他脚本)} [输入文件]...
-n, --quiet, --silent
-n, --quiet, --silent 取消自动打印模式空间
取消自动打印模式空间 -e 脚本, --expression=脚本
-e 脚本, --expression=脚本 添加“脚本”到程序的运行列表
添加“脚本”到程序的运行列表 -f 脚本文件, --file=脚本文件
-f 脚本文件, --file=脚本文件 添加“脚本文件”到程序的运行列表
添加“脚本文件”到程序的运行列表 --follow-symlinks
--follow-symlinks 直接修改文件时跟随软链接
直接修改文件时跟随软链接 -i[SUFFIX], --in-place[=SUFFIX]
-i[SUFFIX], --in-place[=SUFFIX] edit files in place (makes backup if SUFFIX supplied)
edit files in place (makes backup if SUFFIX supplied) -c, --copy
-c, --copy use copy instead of rename when shuffling files in -i mode
use copy instead of rename when shuffling files in -i mode -b, --binary
-b, --binary does nothing; for compatibility with WIN32/CYGWIN/MSDOS/EMX (
does nothing; for compatibility with WIN32/CYGWIN/MSDOS/EMX ( open files in binary mode (CR+LFs are not treated specially))
open files in binary mode (CR+LFs are not treated specially)) -l N, --line-length=N
-l N, --line-length=N 指定“l”命令的换行期望长度
指定“l”命令的换行期望长度 --posix
--posix 关闭所有 GNU 扩展
关闭所有 GNU 扩展 -r, --regexp-extended
-r, --regexp-extended 在脚本中使用扩展正则表达式
在脚本中使用扩展正则表达式 -s, --separate
-s, --separate 将输入文件视为各个独立的文件而不是一个长的连续输入
将输入文件视为各个独立的文件而不是一个长的连续输入 -u, --unbuffered
-u, --unbuffered 从输入文件读取最少的数据,更频繁的刷新输出
从输入文件读取最少的数据,更频繁的刷新输出 -z, --null-data
-z, --null-data separate lines by NUL characters
separate lines by NUL characters --help
--help display this help and exit
display this help and exit --version
--version output version information and exit
output version information and exit
如果没有 -e, --expression, -f 或 --file 选项,那么第一个非选项参数被视为 如果没有 -e, --expression, -f 或 --file 选项,那么第一个非选项参数被视为
sed脚本。其他非选项参数被视为输入文件如果没有输入文件那么程序将从标准 sed脚本。其他非选项参数被视为输入文件如果没有输入文件那么程序将从标准

@ -1,21 +1,13 @@
sort # sort
===
将文件进行排序并输出
## 补充说明 ## 说明
**sort命令** 是在Linux里非常有用它将文件进行排序并将排序结果标准输出。sort命令既可以从特定的文件也可以从stdin中获取输入。 **sort命令** 是在Linux里非常有用它将文件进行排序并将排序结果标准输出。sort命令既可以从特定的文件也可以从stdin中获取输入。
awk 'EXPRESSION { PROGRAM }' file(s)
### 语法 ## 选项
``` ```sh
sort(选项)(参数)
```
### 选项
```
-b忽略每行前面开始出的空格字符 -b忽略每行前面开始出的空格字符
-c检查文件是否已经按照顺序排序 -c检查文件是否已经按照顺序排序
-d排序时处理英文字母、数字及空格字符外忽略其他的字符 -d排序时处理英文字母、数字及空格字符外忽略其他的字符
@ -30,10 +22,6 @@ sort(选项)(参数)
+<起始栏位>-<结束栏位>:以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。 +<起始栏位>-<结束栏位>:以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
``` ```
### 参数
文件:指定待排序的文件列表。
### 实例 ### 实例
sort将文件/文本的每一行作为一个单位相互比较比较原则是从首字符向后依次按ASCII码值进行比较最后将他们按升序输出。 sort将文件/文本的每一行作为一个单位相互比较比较原则是从首字符向后依次按ASCII码值进行比较最后将他们按升序输出。

Loading…
Cancel
Save