1、cat 拼接文件
cat file1.txt >> file.txt 将file1.txt追加到file.txt后边
cat file1.txt file2.txt > file.txt 一个文件在上,一个文件在下
paste file1 file2 > file3 一个文件在左,一个文件在右
2、截取文件 dd
将其分割为两文件file1和file2,那我们就设置每块为1024字节,将file的前60块放入file1,余下的放入file2:
- [root]# dd if=file bs=1024 count=60 skip=0 of=file1
- [root]# dd if=file bs=1024 count=60 skip=60 of=file2
3、awk
awk -F "| " '{print $2 }' file > out.txt
4、sort
sort file -u -o out.txt
-u 为排重 LC_ALL=C 汉字排序的时候要把这个加上
-n 对数字进行排序
-k 3 -k 2 对第三列进行排序,相同的时候再按第二列排序
-t delimiter 按照某分隔符进行分割排序,一般和-k一起使用
-r 反序排列
-b 忽略行首的空白字符
-f 将小写按照大写来看待,就是忽略大小写的意思
-d表示对本域按照字典顺序排序(即,只考虑空白和字母)
5、uniq
uniq file > out.txt 对文件排重
uniq -d file 只显示有重复的行
uniq -u file 只显示没有重复的行
6、 diff
比较两个文件的不同,并把不同的地方打印出来
7、comm [- 123 ] file1 file2
说明:该命令是对两个已经排好序的文件进行比较。其中file1和file2是已排序的文件。comm读取这两个文件,然后生成三列输出:仅在file1中出现的行;仅在file2中出现的行;在两个文件中都存在的行。如果文件名用“- ”,则表示从标准输入读取。
选项1、2或3抑制相应的列显示。例如comm - 12就只显示在两个文件中都存在的行;comm - 23只显示在第一个文件中出现而未在第二个文件中出现的行;comm - 123则什么也不显示。