Linux文本操作命令及正则表达式基础

【文本文件操作命令】

cat 查看文件内容

more 逐屏查看文件内容

less 逐行查看文件内容

head 显示文件开头部分内容

tail 显示文件结尾部分内容

tail –f 20 /var/log/messages -f可以一直追踪这个文件内容,一般是日志文件,,20表示显示的行数。运维工作中常用重要命令。

Cut –d: -f1 /etc/passwd 以:为分隔符 截取每行第一段字符

sort 排序

如:du |sort –n–r -n是以数字排序,-r是反向排序

-t:以冒号为分隔符

+2以第二列开始排

wc 统计文件下有多少行 多少字符

[root@localhostddd]# wc /etc/passwd

36 541637 /etc/passwd

如上:36行 54个单词1637个字符

参数:

–l 行

–w 单词

-c 字符

unip 将相邻的相同行的去掉

如:

[root@localhostddd]# cut -d: -f7 /etc/passwd |uniq

/bin/bash

/sbin/nologin

/bin/sync

/sbin/shutdown

/sbin/halt

/sbin/nologin

/sbin/nologin

/bin/bash

diff 文件A 文件B 对比A和B的区别

【正则表达式】

echo *与echo “*”的区别

[root@localhost~]# echo *

aaaall.sql anaconda-ks.cfg bastest case Desktop install.log install.log.syslogxunhuan

[root@localhost~]# echo”*”

*

echo* 中bash将*理解为任意位置的任意字符

echo“*”中双引号的作用是将内容注释为字符串

. 任意的一个字符

* 任意多的任意字符

\ 脱意符

^ 以……开头

$ 以……结尾

\&; \&; 以……开头以……结尾

a\{18\} a重复18次

为配置文件瘦身

#grep ‘.\{10\}’ /usr/share/dict/words

.重启10次的(字符为10)的单词

#grep ‘.\{10,\}’ /usr/share/dict/words

在此文件中找出.重复10次以上的(字符大于10)的单词

grep-v ‘^#’ /etc/httpd.conf | grep –v ‘^$’

找出除了以#开头的,并除去以刚开头就结尾的(空行)的内容

[abc]表示当前一个位置a、b或c

#grep ‘^[abc]’ /etc/passwd 以a或b或c开头的

#grep ‘^[^1-9]’ /etc/passwd 不是以1-9开头的

每年的同一天和他庆祝生日,每年的情人节、圣诞节、除夕,

Linux文本操作命令及正则表达式基础

相关文章:

你感兴趣的文章:

标签云: