tr 字符串替换工具
tr aaa bbb <file1>file2 #将file1中的aaa替换成222并写入file2中
删除操作
tr -d aaa<file1 #将file1中全部的aaa删除,标准输出
wc 字数统计
wc -c #统计字节 wc -l #统计行数 wc -w #统计技术
head,tail 显示文件头,尾内容
head -n 10 file1 #显示file1的前十行内容 tail -n 10 file1 #显示file1的后十行内容 #-f选项可以观察不断更新的尾部内容,Ctrl-C终止 tail -n 25 -f /var/log.messages
sed 替换工具
sed的处理方式是以行为单位,针对每一行重新做sed处理
#替换一行中碰到的第一项 sed 's/aaa/bbb/'<file #替换一行中所以匹配项,g为数字表替换每行遇到的第几个 sed 's/aaa/bbb/g'<file #替换全文 sed 1,$ 's/aaa/bbb/g' #sed支持后向引用,下例用;作为分隔符,输出结果为/home/lt echo /home/tolstoy/ |sed 's;\(home\)/tolstoy/;\1/lt/;' #sed删除 sed '/^$/d' <file
#模式方式匹配,将模式如/oldfunc/放在命令之前,$表示每行最后 sed "/oldfunc/ s/$/#XXX :migrate to newfunc/"
#s里面的空模式指代前面的模式,&指待模式匹配到的字段,输出结果为aaa ->aaa and bbb
sed '/aaa/ s//& and bbb/g' #以绝对行号或范围做地址,显示行10到20 sed -n '10,20p' <file #匹配字段foo和bar之间的范围,将xxx替换成ooo sed '/foo/,/bar/ s/xxx/ooo/g' #否定正则表达式,将没有used的行的new转换成old sed '/used/ !s/new/used/g'
cut 从输入文件中选择一个或多个字段,或一组字符
#-c 命令为以字符为单位,截取1-10个字符 #或以逗号隔开 cut -c 1-10<file #-d为指明分隔符,-f以字段为单位 cut -d : -f 1,2,3-5 /etc/passwd
fmt 格式化段落
fmt -s #切割较长的行 fmt -w 30 #将每行切割成30个字符
join 以共同的键值,将不同文件的记录加以结合
-t separator 选项改变字段分隔符,默认是空格
#将file1的第一个字段和file2的第二个字段结合 join -1 1 -2 2 file1 file2
stat 命令查看文件inode信息,-v更详细
cksum 查看POSIX标准校验和
md5sum,md5 查看md5校验和
strings 显示二进制文件中可打印字符串,比如可以看pdf部分信息