文件处理之前,因为系统限制,需要提前进行预处理,比如文件合并、拆分等
常用文件级别命令
文件合并
直接使用cat命令
代码语言:javascript复制cat 1.sql 2.sql 3.sql > merged.sql
cat *.sql > merged.sql
文件拆分
split命令可以把一个文件拆分成多个
- 命令格式
split [OPTION]... [INPUT [PREFIX]]
- 常用选项
-l: 每个文件的行数
-b: 每个文件的大小(字节)
-d: 使用数字作为序号
- 用例
# 拆分文件,每个文件一行
split -l 1 merged.sql
# 拆分文件,并且设置文件前缀
split -l1 merged.sql user_
文件内容随机
shuf命令可以对文件内容行进行随机变换
代码语言:javascript复制shuf -n merged.sql
-n
: 最多输出行数
文件对比
使用comm命令
代码语言:javascript复制$ cat file1
line 1
line 2
line 3
$ cat file2
line 3
line 4
$ comm file1 file2
line 1
line 2
line 3
line 4
第一列:存在file1,不在file2 第二列:存在file2,不在file1 第三列:共同所有
可以组合使用选项-1,-2,-3分别禁止对应的列输出,比如
代码语言:javascript复制# 输出file1和file2的共同行
$ comm -13 file1 file2
line 3