. wc
用于统计文件的行数,单词,或字节数
-l # 统计行数
-L # 打印最长行的长度,一般脚本中判断字符长度
-c # 统计字节数
-w # 统计单词数
-m 统计字符数
. iconv
转换文件的编码格式
iconv [options] [-f from-encoding] [-t to-encoding] [inputfile]...
源编码 新编码 输入文件
-f # 从编码A转换
-t # 转换为编码B
-l # 显示系统支持的编码
-o # 将输出输入到指定文件
iconv -f gb2312 -t utf-8 GB2312.txt
. dos2unix
将DOS格式文件转换成UNIX格式
dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]
windows系统下,文本是以"\r\n"作为换行标志的,而UNIX下的文本文件是以“\n”作为换行标志的
反之,unix2dos将linux文件的“\n”转化成Windows文件的“\r\n”
. diff
逐行比较纯文本文件的内容
默认显示格式有如下三种提示
a-add
c-change
d-delete
"<"打头的行属于文件1, ">"打头的行属于文件2
-y # 并排输出显示两个文件的不同之处
. vimdiff
此命令是调用vim命令打开文件可以同时打开2个,3个,最多4个文件,并且会以不同的颜色来区分文件的差异
. rev
按行反向输出文件内容,将内容倒着输出
[root@mysql-141 ~]# echo { 1..10}1 2 3 4 5 6 7 8 9 10[root@mysql-141 ~]# echo { 1..10}|rev01 9 8 7 6 5 4 3 2 1
. tr
从标准输入中替换,缩减或删除字符,并将结果写到标准输出
-d 删除字符
-s 保留连续字符的第一个字符,删除其他字符
-c 使用第一个字符串set1的补集,取反
tr 'abc' 'xyz'
. tee
将数据重定向到指定文件和屏幕上,各输出一份
-a 项文件追加内容,而不是覆盖
[root@mysql-141 ~]# ls01-monitoring.py 02-ps_pid.sh backup.sh new_aa test01-monitoring.sh anaconda-ks.cfg install.log new_ab test.txt02-ps_name.sh backup_check.sh install.log.syslog new_ac youhua.sh[root@mysql-141 ~]# ls|tee -a ls.txt01-monitoring.py01-monitoring.sh02-ps_name.sh02-ps_pid.shanaconda-ks.cfgbackup_check.shbackup.shinstall.loginstall.log.syslognew_aanew_abnew_actesttest.txtyouhua.sh[root@mysql-141 ~]# cat ls.txt 01-monitoring.py01-monitoring.sh02-ps_name.sh02-ps_pid.shanaconda-ks.cfgbackup_check.shbackup.shinstall.loginstall.log.syslognew_aanew_abnew_actesttest.txtyouhua.sh