Linux命令之文件切割命令:split使用介绍

前端技术 2023/09/08 Linux

位置:/usr/bin/split
权限:所有用户
作用:
用法: split [OPTION]... [INPUT [PREFIX]]
选项:
           -b  后面可以接可以切割成文件的大小,可以加单位,例如:b,k, m

           -l    以行数来进行分割

           PREFIX:前导符,可作为切割文件的前导文字

这里col1就是前导符,生成了3个文件col1aa、col1ab、col1ac

复制代码
代码如下:

$ split -b 1k col col1</p> <p>$ ls -hl
总用量 80K
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 00:11 a
-rw-rw-r-- 1 cwjy1202 cwjy1202 39 一月 11 12:58 b
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 22:09 c
-rw-rw-r-- 1 cwjy1202 cwjy1202 3.0K 一月 11 18:50 col
-rw-rw-r-- 1 cwjy1202 cwjy1202 1.0K 一月 12 00:09 col1aa
-rw-rw-r-- 1 cwjy1202 cwjy1202 1.0K 一月 12 00:09 col1ab
-rw-rw-r-- 1 cwjy1202 cwjy1202 1006 一月 12 00:09 col1ac
-rw-rw-r-- 1 cwjy1202 cwjy1202 3.0K 一月 11 18:45 col.list
-rw-rw-r-- 1 cwjy1202 cwjy1202 75 十二 27 22:09 mudi
drwxr-xr-x 2 cwjy1202 cwjy1202 4.0K 十二 29 23:47 myDir
-rwxr-xr-x 1 cwjy1202 cwjy1202 15K 十二 28 23:20 nginx
-rw-rw-r-- 1 cwjy1202 cwjy1202 16K 十二 27 20:16 nginxlog
-rw------- 1 cwjy1202 cwjy1202 1004 八月 29 17:24 R语言做流程图.R
-rw-rw-r-- 1 cwjy1202 cwjy1202 33 一月 3 16:13 test.bc

把文件col以行数作为分隔,生成文件的前导符为col,分成了三个文件colaa、colab、colac和colad


复制代码
代码如下:

$ split -l 20 col col</p> <p>$ ls -hl
总用量 84K
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 00:11 a
-rw-rw-r-- 1 cwjy1202 cwjy1202 39 一月 11 12:58 b
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 22:09 c
-rw-rw-r-- 1 cwjy1202 cwjy1202 3.0K 一月 11 18:50 col
-rw-rw-r-- 1 cwjy1202 cwjy1202 921 一月 12 00:13 colaa
-rw-rw-r-- 1 cwjy1202 cwjy1202 1021 一月 12 00:13 colab
-rw-rw-r-- 1 cwjy1202 cwjy1202 807 一月 12 00:13 colac
-rw-rw-r-- 1 cwjy1202 cwjy1202 305 一月 12 00:13 colad
-rw-rw-r-- 1 cwjy1202 cwjy1202 3.0K 一月 11 18:45 col.list
-rw-rw-r-- 1 cwjy1202 cwjy1202 75 十二 27 22:09 mudi
drwxr-xr-x 2 cwjy1202 cwjy1202 4.0K 十二 29 23:47 myDir
-rwxr-xr-x 1 cwjy1202 cwjy1202 15K 十二 28 23:20 nginx
-rw-rw-r-- 1 cwjy1202 cwjy1202 16K 十二 27 20:16 nginxlog
-rw------- 1 cwjy1202 cwjy1202 1004 八月 29 17:24 R语言做流程图.R
-rw-rw-r-- 1 cwjy1202 cwjy1202 33 一月 3 16:13 test.bc</p> <p>

特殊例子:如何把下面的信息以5行分隔成多个文件


复制代码
代码如下:

$ ls -al
总用量 92
drwxrwxr-x 3 cwjy1202 cwjy1202 4096 一月 12 00:19 .
drwxrwxr-x 21 cwjy1202 cwjy1202 4096 十二 27 21:23 ..
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 00:11 a
-rw-rw-r-- 1 cwjy1202 cwjy1202 39 一月 11 12:58 b
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 22:09 c
-rw-rw-r-- 1 cwjy1202 cwjy1202 3054 一月 11 18:50 col
-rw-rw-r-- 1 cwjy1202 cwjy1202 921 一月 12 00:13 colaa
-rw-rw-r-- 1 cwjy1202 cwjy1202 1021 一月 12 00:13 colab
-rw-rw-r-- 1 cwjy1202 cwjy1202 807 一月 12 00:13 colac
-rw-rw-r-- 1 cwjy1202 cwjy1202 305 一月 12 00:13 colad
-rw-rw-r-- 1 cwjy1202 cwjy1202 3054 一月 11 18:45 col.list
-rw-rw-r-- 1 cwjy1202 cwjy1202 75 十二 27 22:09 mudi
drwxr-xr-x 2 cwjy1202 cwjy1202 4096 十二 29 23:47 myDir
-rwxr-xr-x 1 cwjy1202 cwjy1202 14698 十二 28 23:20 nginx
-rw-rw-r-- 1 cwjy1202 cwjy1202 16298 十二 27 20:16 nginxlog
-rw------- 1 cwjy1202 cwjy1202 1004 八月 29 17:24 R语言做流程图.R
-rw-rw-r-- 1 cwjy1202 cwjy1202 33 一月 3 16:13 test.bc

如下:split -l 5 后面的-,那个-表示需要stdout或者stdin
另外,lsal表示生成文件的名字前导符,生成的名字叫:lsalaa、lsalab、lsalac、lsalad

复制代码
代码如下:

$ ls -la| split -l 5 - lsal
$ ls -al
总用量 108
drwxrwxr-x 3 cwjy1202 cwjy1202 4096 一月 12 00:21 .
drwxrwxr-x 21 cwjy1202 cwjy1202 4096 十二 27 21:23 ..
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 00:11 a
-rw-rw-r-- 1 cwjy1202 cwjy1202 39 一月 11 12:58 b
-rw-rw-r-- 1 cwjy1202 cwjy1202 54 一月 8 22:09 c
-rw-rw-r-- 1 cwjy1202 cwjy1202 3054 一月 11 18:50 col
-rw-rw-r-- 1 cwjy1202 cwjy1202 921 一月 12 00:13 colaa
-rw-rw-r-- 1 cwjy1202 cwjy1202 1021 一月 12 00:13 colab
-rw-rw-r-- 1 cwjy1202 cwjy1202 807 一月 12 00:13 colac
-rw-rw-r-- 1 cwjy1202 cwjy1202 305 一月 12 00:13 colad
-rw-rw-r-- 1 cwjy1202 cwjy1202 3054 一月 11 18:45 col.list
-rw-rw-r-- 1 cwjy1202 cwjy1202 238 一月 12 00:21 lsalaa
-rw-rw-r-- 1 cwjy1202 cwjy1202 294 一月 12 00:21 lsalab
-rw-rw-r-- 1 cwjy1202 cwjy1202 302 一月 12 00:21 lsalac
-rw-rw-r-- 1 cwjy1202 cwjy1202 201 一月 12 00:21 lsalad
-rw-rw-r-- 1 cwjy1202 cwjy1202 75 十二 27 22:09 mudi
drwxr-xr-x 2 cwjy1202 cwjy1202 4096 十二 29 23:47 myDir
-rwxr-xr-x 1 cwjy1202 cwjy1202 14698 十二 28 23:20 nginx
-rw-rw-r-- 1 cwjy1202 cwjy1202 16298 十二 27 20:16 nginxlog
-rw------- 1 cwjy1202 cwjy1202 1004 八月 29 17:24 R语言做流程图.R
-rw-rw-r-- 1 cwjy1202 cwjy1202 33 一月 3 16:13 test.bc


复制代码
代码如下:

$ wc -l lsal*
5 lsalaa
5 lsalab
5 lsalac
3 lsalad
18 总用量</p> <p>

本文地址:https://www.stayed.cn/item/21764

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。