组合 .txt 文件,但将组合文件限制为一定大小的块

组合 .txt 文件,但将组合文件限制为一定大小的块

我有一批.txt文件想要合并,以便可以导入到另一个程序中。该程序一次限制为 2GB 数据包,但文件总数为 20GB。

是否可以合并.txt文件,每次限制为 2GB,总共提供 10x 2GB 合并文件?我想将其添加到脚本中。

我正在运行脚本,命令如下:

cat $full/blank/ascii/*/*xyz > $full/blank/ascii/output.txt
split -b 2000m $full/blank/ascii/ouput.txt

但是当我运行这个时,它说

line 1: /blank/ascii/output.txt: no such file or directory.

我在文件的开头也有完整的路径。是否也可以拆分文件并将输出发送到单独的文件夹?

答案1

您尚未定义$full,因此该命令cat $full/blank/ascii/*/*xyz > $full/blank/ascii/output.txt将作为空字符串进行评估:

cat /blank/ascii/*/*xyz > /blank/ascii/output.txt

此外,由于解释器报告这是在脚本的第一行,我猜你#!还没有在那里定义解释器。我真的建议您习惯在编写的每个脚本的开头提供其中一个。

#!/bin/bash

full=/path/somewhere/...

cat $full/blank/ascii/*/*xyz > $full/blank/ascii/output.txt
split -b 2000m $full/blank/ascii/ouput.txt

相关内容