linux - 如何将一个文本文件拆分为多个 *.txt 文件?

我有一个文本文件 file.txt (12 MB),其中包含:

something1
something2
something3
something4
(...)

有没有办法将file.txt拆分成12个*.txt文件,比如说file2.txtfile3.txtfile4.txt等?

最佳答案

您可以使用 Linux Bash 核心实用程序 split:

split -b 1M -d  file.txt file

注意 MMB 都可以,但大小不同。 MB 为 1000 * 1000,M 为 1024^2

如果要按行分隔,可以使用 -l 参数。

更新

a=(`wc -l yourfile`) ; lines=`echo $(($a/12)) | bc -l` ; split -l $lines -d  file.txt file

Kirill 建议的另一种解决方案,您可以执行以下操作

split -n l/12 file.txt

注意是l不是onesplit -n有几个选项,像N,k/N, l/k/N, r/N, r/k/N.

https://stackoverflow.com/questions/19031144/

相关文章:

r - 在 Ubuntu 和 Mac 上安装 rgl : X11 not found

linux - 如何使用 Linux 命令获取可用内存百分比?

linux - 尝试使用 sudo 将文件附加到根拥有的文件时权限被拒绝

linux - curl 用于获取标题

php - 使用 WGET 运行 cronjob PHP

java - 如何下载较旧的 google play 服务?

linux - "Couldn' t 在 Windows 上的 Ubuntu bash 上找到引用控

linux - 如何在linux中停止 screen 进程?

linux - 如何运行 nohup 并将其 pid 文件写入单个 bash 语句

linux - 如何自动化 HTML 到 PDF 的转换?