Questions tagged «split»


6
分割文件后再次加入文件的最佳方法是什么?
如果我有一个大文件,需要将其拆分为100兆字节的块,我会做 split -b 100m myImage.iso 通常给我这样的东西 xaa xab xac xad 为了让他们重新在一起,我一直在使用 cat x* > myImage.iso 似乎应该有一种比读取一组文件中每一行代码cat并将输出重定向到新文件更有效的方法。就像只打开两个文件,EOF从第一个文件中删除标记并连接它们的方式一样-无需浏览所有内容。 Windows / DOS具有二进制文件的复制命令。帮助中提到该命令旨在能够合并多个文件。可以使用以下语法:(/b用于二进制模式) copy /b file1 + file2 + file3 outputfile 在Linux上,有没有比cat相似或更好的方法来联接大文件? 更新资料 看来这cat实际上是加入文件的正确方法和最佳方法。很高兴知道我一直在使用正确的命令:)谢谢大家的反馈。


5
通过第一次出现的分隔符分割字符串
我有以下格式的字符串 id;some text here with possible ; inside 并希望在第一次出现时将其拆分为2个字符串;。因此,应为:id和some text here with possible ; inside 我知道如何分割字符串(例如,使用cut -d ';' -f1),但是由于我;位于左侧,因此它将分割为更多部分。

3
逐行分割文件并控制生成的文件扩展名
有一个用于文件拆分的标准命令-split。 例如,如果我想将单词文件分成几行(每行10000行),则可以使用: split -dl 10000 words wrd 它将生成几个格式为wrd.01,wrd.02等的文件。 但是我想为这些文件指定特定的扩展名-例如,我想获取wtd.01.txt,wrd.02.txt文件。 有办法吗?
28 shell  filenames  split 


4
将文件分成两部分
我的文件很大,需要分成两个文件。假设在第一个文件中应选择1000行并将其放入另一个文件,然后在第一个文件中删除这些行。 我尝试使用,split但它正在创建多个块。


3
根据正则表达式拆分文本文件
根据《易经》的64个卦,我有一个文本文件,希望将其分成64个不相等的部分。由于每个卦的开头都是一些数字,一个句点和两个换行符,因此正则表达式应该很容易编写。 但是,实际上如何根据此正则表达式将文本文件拆分为64个新文件?似乎更像是一项任务perl。但是也许有一种更明显的方式让我完全迷失了。

5
如何通过使用关键字边界分割文件
我有一个vcf文件,其中包含许多vcard。 将vcf文件导入Outlook时,似乎仅导入第一个vcard。 因此,我想将它们分开。 假设vcard以 BEGIN:VCARD 并以 END:VCARD 将每个vcard拆分成自己的文件的最佳方法是什么。 谢谢 更新 感谢您的所有回复。与这种性质的问题一样,有多种方法可以为猫皮。这就是为什么我选择自己选择的理由。 围捕 这是我对每个答案的喜好以及促使我选择其中一个的摘要。 csplit:我真的很喜欢这种方法的简洁性。我只是希望它能够设置文件扩展名。 gawk:它满足了我的所有要求。 paralell:工作。但是我必须安装新东西。(它还决定在我的主目录中创建一个新的/ bin目录) perl:我喜欢它根据联系人的姓名创建了vcf。但是-o选项并没有真正起作用 结论 所以第一个要去的是perl因为它有点破 接下来是paralell因为我必须安装新东西 接下来是csplit,因为据我所知,它无法在输出文件上创建扩展名 因此,该奖项颁给了gawk,因为它是一个易于使用的实用程序,而且用途广泛,足以让我可以稍微修改一下文件名。也有奖金标记cmp:)
15 files  split 



4
从一个文件中提取数据并基于一个列值将其放置在不同的文件中
我们将生成一个具有以下值的csv文件 yp1234,577,1,3 yp5678,577,3,5 yp9012,132,8,9 我需要提取数据并根据第二列创建文件。如果是577,则必须提取整行并将其放在单独的文件中。我的意思是我需要一个第二行的行单独为577的文件,第二行的行单独为132的文件 我尝试使用IF,但是没有用
14 csv  split 

3
将文件拆分为多个小文件,以换行符分隔
是否有按换行符分割文件的实用程序?例如,如果文件包含以下几行, aa bbb cccc 如果我要将其拆分为3个文件,则所需的输出将是: aa,bbb和cccc(在3个不同的文件中) 我已经检查了split命令,它仅按文件大小剪切文件,而不是我想要的文件。 如果我自己没有编写实用程序,是否有任何标准工具可以使用?

9
将stdin传播到并行进程
我有一个处理标准输入上的文件列表的任务。程序的启动时间很长,每个文件花费的时间差异很大。我想产生大量的这些进程,然后将工作分派给不忙的人。有几种不同的命令行工具几乎可以满足我的要求,我将其缩小为两个几乎可以使用的选项: find . -type f | split -n r/24 -u --filter="myjob" find . -type f | parallel --pipe -u -l 1 myjob 问题是split进行纯循环,因此其中一个进程落后于并停留在后面,从而延迟了整个操作的完成;而parallel想要每N行或每字节输入生成一个进程,而我花了太多时间在启动开销上。 是否有这样的东西可以重用进程和馈送线到任何具有无阻塞标准输入的进程?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.