linux文本编辑相关命令整理-详细

linux文本编辑命令整理

      • 1. cat
      • 2. more
      • 3. head
      • 4. tail
      • 5. tr
      • 6. wc
      • 7. stat
      • 8. cut
      • 9. diff

Linux 系统中“一切都是文件”,而对服务程序进行配置自然也就是编辑程序的配置文件.

1. cat

cat 命令用于查看纯文本文件(内容较少的)

cat [选项] [文件]

cat -n 显示行号
cat -b 类似于-n 区别在 -b对于空白行 不编号。
举栗:

  1. 将test01.txt 的文档内容加上行号后输入test02.txt
    注:如果不加行号 就不要加 -n参数就行了。相当于复制文件
cat -n test01.txt > test02.txt
  1. 将test01.txt 和 test02.txt 的内容加起来加上行号(空白行不加)附加到 test03.txt
cat -b test01.txt test02.txt >> test03.txt
  1. 清空test01.txt 文件的内容
cat /dev/null > test01.txt

/dev/null 表示空设备,这里就是把日志记录到空设备里,就是不记录日志,Null 是一特殊指标值(或是一种物件参照 reference)表示这个指标并不指向任何的物件。
是一个特殊的文件,写入到它的内容都会被丢弃,如果尝试从该文件读取内容,那么什么也读不到,但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到”禁止输出“的效果。

2. more

more命令用于查看纯文本文件(内容较多的)

more [选项]文件

对于长篇的文本内容,推荐使用 more 命令来查看。more 命
令会在最下面使用百分比的形式来提示已经阅读了多少内容。还可以使用空格键或回车键向下翻页。pageup向上翻页。

  1. 命令参数:
参数 作用
+n 从笫n行开始显示
-n 定义屏幕大小为n行
-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
  1. 操作命令
命令 作用
Enter 向下n行 ,需要定义。默认为1行
空格键 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
q 退出more

3. head

head命令用于查看纯文本文档的前N行

head [选项] [文件]
参数 作用
-q 隐藏文件名
-v 显示文件名
-c <字节数> 显示字节数
-n<行数> 显示的行数
# 示例 1: 显示第一行,并显示文件名
[fanbaodan@localhost Desktop]$ head -v -n 1 test01.txt 
==> test01.txt <==
haha  huhuhu  jiji 
[fanbaodan@localhost Desktop]$ ^C
[fanbaodan@localhost Desktop]$ 
# 示例 2: 显示前4个字节 (haha)
[fanbaodan@localhost Desktop]$ head -c 4 test01.txt
haha[fanbaodan@localhost Desktop]$ 

4. tail

tail命令用于查看纯文本文档的后n行或持续刷新内容

tail [选项] [文件]

实际工作中,经常遇到一个很大的日志文件几百M 甚至上G,这时候就用到了tail这个命令,也是我经常用到的命令。

参数 作用
-f 循环读取 -f5,表示显示5行,默认10行
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示文件的尾部 n 行内容 , 不会自动刷新
#示例:
#监控显示 test01.txt的后1000行
tail -1000f test01.txt  

5. tr

tr 命令用于替换文本文件中的字符

tr [原始字符] [目标字符]

通常配合管道使用(管道:后续梳理)

# 示例:
# 1. 将test01.txt文件里边的 "ha" 替换为  "k"
# 思路: 先使用 cat 命令读取待处理的文本,然后通过管道符把这些文本内容传递给 tr 命令进行替换操作,然后再将输出到本文件即可(也可以到其他文件)
   cat  test01.txt | tr ha k > test01.txt 
# 2. 将test01.txt文件的小写字符全部替换大写
   cat test01.txt | tr [a-z] [A-Z]

6. wc

好吧 ,每次提到这个命令,毫无征兆的想起了xxx.
言归正传,wc命令用于统计指定文本的行数、字数、行数

wc [参数] 文本
参数 作用
-l 只显示行数
-w 只显示单词数
-c 只显示字节数

例如wc -lwc 不管lwc的顺序如何,都是按照 行数,单词书,字节数顺序来显示的。

# 显示test01.txt文件的行数,单词书,字节数
wc -lwc test01.txt

在这里插入图片描述

7. stat

stat命令用于查看文件的具体存储信息和时间等信息

stat 文件名称
stat test01.txt

结果如下:
linux文本编辑相关命令整理-详细_第1张图片

8. cut

cut是一个比较有用的命令,需要好好掌握了。
cutml用于按“列” 提取文本字符

cut [参数] 文本

按列搜索要使用-f 参数来设置需要看的列数,还需要使用-d 参数来设置间隔符号。

参数 作用
-b: 仅显示行中指定直接范围的内容;
-c: 仅显示行中指定范围的字符;
-d: 指定字段的分隔符,例如 “:",“/” 等默认的字段分隔符为“TAB”;
-f: 显示指定字段的内容;
  • cut命令可以将一串字符作为列来显示,字符字段的记法:
参数 作用
N-: 从第N个字节、字符、字段到结尾;
N-M: 从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段;
-M: 从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。

上面是记法,结合下面选项将摸个范围的字节、字符指定为字段:
-b 表示字节;
-c 表示字符;
-f 表示定义字段。

  1. 示例1 : 下图为 账号:密码
    linux文本编辑相关命令整理-详细_第2张图片
    将cut.txt文件的账号取出来 ,并放入到test01.txt中
cut -d: -f1 cut.txt > test01.txt 

结果如下:
在这里插入图片描述

  1. 示例2 打印前两个字符
cut -c-2 test01.txt

如下:
在这里插入图片描述
若打印从第二到第三个字符可写成:

cut -c2-3 test01.txt

在这里插入图片描述

9. diff

diff 命令用于比较多个文本文件的差异

diff [参数] 文件

–brief 参数来确认两个文件是否不同
-c 参数来详细比较出多个文件的差异之处
下边一1.txt 和cut.txt 比较:
linux文本编辑相关命令整理-详细_第3张图片

你可能感兴趣的:(♛,Linux初级篇)