【文本文件操作命令】
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开头的