1
0
wiki/docs/运维/Linux/常用命令/文件文本编辑.md

212 lines
7.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: 文件文本编辑
title: 文件文本编辑
sidebar_position: 5
data: 2022年2月28日
---
## cat
cat命令用于查看纯文本文件内容较少的英文全称为“concatenate”语法格式
```shell
cat [参数] 文件名称
```
常用参数:
| -n | 显示行数(空行也编号) |
| --------- | --------------------------------------- |
| -s | 显示行数(多个空行算一个编号) |
| -b | 显示行数(空行不编号) |
| -E | 每行结束处显示$符号 |
| -T | 将TAB字符显示为 ^I符号 |
| -v | 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外 |
| -e | 等价于”-vE”组合 |
| -t | 等价于”-vT”组合 |
| -A | 等价于 -vET组合 |
| --help | 显示帮助信息 |
| --version | 显示版本信息 |
## more
more 命令用于查看纯文本文件(内容较多的),语法格式:
```shell
more [参数] 文件名称
```
常用参数:
| -num | 指定每屏显示的行数 |
| --------- | ------------------------------------------------------------ |
| -l | more在通常情况下把 **^L** 当作特殊字符, 遇到这个字符就会暂停,-l选项可以阻止这种特性 |
| -f | 计算实际的行数,而非自动换行的行数 |
| -p | 先清除屏幕再显示文本文件的剩余内容 |
| -c | 与-p相似不滚屏先显示内容再清除旧内容 |
| -s | 多个空行压缩成一行显示 |
| -u | 禁止下划线 |
| +/pattern | 在每个文档显示前搜寻该字(pattern),然后从该字串之后开始显示 |
| +num | 从第 num 行开始显示 |
## head
head命令以行为单位取文件的内容,后面不接参数时默认打印前10行。
```shell
head [参数] [文件]
```
常用参数:
| -n | 后面接数字,代表显示几行的意思 |
| ---- | ------------------------------ |
| -c | 指定显示头部内容的字符数 |
| -v | 总是显示文件名的头信息 |
| -q | 不显示文件名的头信息 |
## tail
tail 命令用于查看纯文本文件的后*N*行或持续刷新文件的最新内容,语法格式:
```shell
tail [参数] 文件名称
```
## tr
tr 命令用于替换文本内容中的字符英文全称为“transform”支持正则匹配。语法格式
```shell
tr [原始字符] [目标字符]
```
## wc
wc 命令用于统计指定文本文件的行数、字数或字节数英文全称为“word counts”语法格式
```shell
wc [参数] 文件名称
```
wc 命令中的参数以及作用
| 参数 | 作用 |
| ---- | ------------ |
| -l | 只显示行数 |
| -w | 只显示单词数 |
| -c | 只显示字节数 |
## stat
stat命令用于查看文件的具体存储细节和时间等信息英文全称为“status”语法格式
```shell
stat 文件名称
```
常用参数:
| -L | 支持符号链接 |
| --------- | ------------------ |
| -f | 显示文件系统的信息 |
| -t | 以简洁的方式输出 |
| --help | 显示命令帮助信息 |
| --version | 显示命令版本信息 |
## grep
grep命令用于按行提取文本内容语法格式
```shell
grep [参数] 文件名称
```
参数及其作用
| 参数 | 作用 |
| ---- | ---------------------------------------------- |
| -b | 将可执行文件(binary)当作文本文件text来搜索 |
| -c | 仅显示找到的行数 |
| -i | 忽略大小写 |
| -n | 显示行号 |
| -v | 反向选择——仅列出没有“关键词”的行。 |
## cut
cut 令用于按“列”提取文本内容,语法格式:
```shell
cut [参数] 文件名称
```
常用参数:
| -b | 以字节为单位进行分割 ,仅显示行中指定直接范围的内容 |
| --------------- | -------------------------------------------------- |
| -c | 以字符为单位进行分割 , 仅显示行中指定范围的字符 |
| -d | 自定义分隔符默认为制表符”TAB” |
| -f | 显示指定字段的内容 , 与-d一起使用 |
| -n | 取消分割多字节字符 |
| --complement | 补足被选择的字节、字符或字段 |
| --out-delimiter | 指定输出内容是的字段分割符 |
## diff
diff 命令用于比较多个文件之间内容的差异英文全称为“different”语法格式
```shell
diff [参数] 文件名称A 文件名称B
```
常用参数:
| -a | diff预设只会逐行比较文本文件 |
| ----------------------- | ------------------------------------------------------------ |
| -b | 不检查空格字符的不同 |
| -W | 在使用-y参数时指定栏宽 |
| -x | 不比较选项中所指定的文件或目录 |
| -X | 您可以将文件或目录类型存成文本文件,然后在=<文件>中指定此文本文件 |
| -y | 以并列的方式显示文件的异同之处 |
| --help | 查看帮助信息 |
| --left-column | 在使用-y参数时若两个文件某一行内容相同则仅在左侧的栏位显示该行内容 |
| --suppress-common-lines | 在使用-y参数时仅显示不同之处 |
## uniq
uniq命令用于去除文本中连续的重复行英文全称为“unique”语法格式
```shell
uniq [参数] 文件名称
```
常用参数:
| -c | 打印每行在文本中重复出现的次数 |
| ---- | ------------------------------------------ |
| -d | 只显示有重复的纪录,每个重复纪录只出现一次 |
| -u | 只显示没有重复的纪录 |
## sort
sort命令用于对文本内容进行再排序语法格式
```shell
sort [参数] 文件名称
```
常用参数:
| -b | 忽略每行前面开始出的空格字符 |
| ------------- | ------------------------------------------------------ |
| -c | 检查文件是否已经按照顺序排序 |
| -d | 排序时,处理英文字母、数字及空格字符外,忽略其他的字符 |
| -f | 排序时,将小写字母视为大写字母 |
| -i | 排序时除了040至176之间的ASCII字符外忽略其他的字符 |
| -m | 将几个排序号的文件进行合并 |
| -M | 将前面3个字母依照月份的缩写进行排序 |
| -n | 依照数值的大小排序 |
| -o <输出文件> | 将排序后的结果存入制定的文件 |
| -r | 以相反的顺序来排序 |
| -t <分隔字符> | 指定排序时所用的栏位分隔字符 |
| -k | 指定需要排序的栏位 |