csplit

通过模式匹配将文件拆分为特定的输出文件名
csplit

通过模式匹配将文件拆分为特定的输出文件名

我有一个包含以下内容的文件: # new file text in file 1 # new file text in file 2 # new file text in file 3 这里的模式是# new file。 我没有将每个文件保存到 xx00、xx01 和 xx02,而是保存到特定文件:another file、file new、last one。 这3个文件存在于当前目录中,所以我想将它们作为数组提供,覆盖它们: csplit -z infile '/# new file/' "${array[*]}" 可以直接提供数组 array=('a...

Admin

如果不需要,csplit 是否将整个行读入内存?
csplit

如果不需要,csplit 是否将整个行读入内存?

假设我有一个 100GB 的文件,我想将其拆分为多个部分,不同的部分由固定标记分隔。标记只是一个大约 20 个字符的固定字符串,因此要匹配的正则表达式只是 /MARKER/。 鉴于这个低复杂度的正则表达式,如果我运行 csplit file /MARKER/ 我希望 csplit 只读取小块的文件,以保持其内存占用较低。它真的这样做吗?或者它将整个文件读入内存,然后处理内存中的全部内容? ...

Admin

使用csplit根据正则表达式将一个文件拆分为多个文件
csplit

使用csplit根据正则表达式将一个文件拆分为多个文件

我有一个文本文件,其中包含以下示例的内容,我想将该文件拆分为多个文件。 [TXT] /path/to/[TXT] [BAT] /path/to/[BAT] [TXT] /path/to/blah/[TXT] [BAT] /path/to/blah/[BAT] 所以我发现我可以用来csplit至少部分地实现我想要实现的目标。 csplit -f 'paths-' -b '%04d.txt' 'path/to/filelist.txt' '/^\[(.*)]\t/' '{*}' 然而这会分裂成paths-0000.txt. 我希望有更多类似pa...

Admin

如何在 Mac 上使用现代 coreutils?
csplit

如何在 Mac 上使用现代 coreutils?

如何在 Mac 上获取现代 coreutils? 我使用以下方法遇到了这个问题csplit: foo.txt: foo 1 foo 2 foo 3 $: csplit foo '^foo$' '{*}' # error 仔细检查Mac 上的manpage, man csplit,csplit是 FreeBSD 版本,并且不提供该'{*}'选项。事实上,我必须提前提供准确的分割次数。这要么会触发czplit我重新实现,要么我可以GNU coreutils在 mac 上登录。 有办法吗? ...

Admin

将带有脚手架的 fasta 文件分成相同长度的文件,并尊重脚手架 ID 和序列
csplit

将带有脚手架的 fasta 文件分成相同长度的文件,并尊重脚手架 ID 和序列

我目前正在处理一个大的 fasta 文件(3.7GB),其中有脚手架。每个支架都有一个唯一的标识符,从>第一行开始,在连续的行上,它具有如下所示的 DNA 序列: >9999992:0-108 AAAGAATTGTATTCCCTCCAGGTAGGGGGGATAGTTGAGGGGATACATAG TGGGAAGGCTTTTCATGCGGAGGGACTAGAATGTGCTCCCGACTGACAAA GCAGCTTG >9999993:0-118 AGGGACTAGAAATGAGATTAAAAAGAGTAAAAGCACTGATACAAGTACAA...

Admin

帮助我理解使用 csplit 和 sed 的脚本
csplit

帮助我理解使用 csplit 和 sed 的脚本

我想要一种从参考管理器 Zotero 导出笔记的简单方法。我首先选择多个笔记并将它们拖到一个空白文本文件中。我还希望实现笔记的“原子性”,因此我需要分割生成的文本文件,其中包含由破折号线分隔的各个部分中的各个笔记。然后,我想使用我给每个注释的标题来命名新文件,即:用每个部分的第一行重命名。我想将这些新文件保存为 markdown 文件。 我整理的脚本由网络上的贡献者对每个功能的建议组成。在与与我有类似用例的同事共享脚本之前,我试图确保我正确理解脚本中的命令。我对“head”命令中“$f”周围需要引号的理解(从阅读吉尔斯对另一个问题的回答 - 请参阅下面的参考...

Admin

如何在出现N次模式后将一个文件拆分为多个文件?
csplit

如何在出现N次模式后将一个文件拆分为多个文件?

我在 Linux 上有一个文件,其中包含数千个分子的坐标。每个分子都以始终包含相同模式的行开头: @<TRIPOS>MOLECULE 然后继续其他线路。我想将文件拆分为多个文件,每个文件包含一定数量的分子。做到这一点最简单的方法是什么? ...

Admin

如何让csplit开始输出文件名从001开始的文件?
csplit

如何让csplit开始输出文件名从001开始的文件?

我使用 csplit 将一个复杂的文件分割file.docked.pdb为小文件。 csplit -k -s -n 3 -f file.docked. file.docked.pdb '/^ENDMDL/+1' '{'7'}' man csplit完美解释了以下代码 NAME csplit - split a file into sections determined by context lines -k, --keep-files do not remove output files ...

Admin

Bash - 将缩进的代码块提取到新文件中
csplit

Bash - 将缩进的代码块提取到新文件中

我有一堆荷花池以下格式的文件: \score { \new StaffGroup = "" \with { instrumentName = \markup { \bold \huge \larger "1." } } << \new Staff = "celloI" \with { midiInstrument = #"cello" } \relative c { \clef bass \key c \major \time 3/4 \tuplet 3/2...

Admin

根据匹配模式旁边的值拆分文件
csplit

根据匹配模式旁边的值拆分文件

我有一个文件 input.txt,其中包括约 50,000 行和约 100 列。我想根据匹配条目进行分割,后跟匹配模式。文件分隔符有空格和制表符。 输入.txt #information #dateofcreation #file type AA BB CC DD EE FF GG HH II AA bb ac aD FF GG hg ad DA ga Dt pp Ee FF gg pm TT DA bR AT GT Gg FF GG Hb Yh NM gt Jh GT FF hb TH KM...

Admin

csplit 的替代方案 - 在模式之后分割
csplit

csplit 的替代方案 - 在模式之后分割

我想在分隔符之后分割文件,而不是在分隔符之前,这就是 csplit 的作用。我到处都找不到任何东西! (另外,为什么会有一种专门在模式之前进行分割的工具,而不是在模式之后进行分割的工具?) 文件: a b c d 在 c 处分割 输出:文件1: a b c 文件 2d ...

Admin

csplit 无法识别提供的正则表达式
csplit

csplit 无法识别提供的正则表达式

我正在处理这个大文件(数据.DAT,~900MB)其中包含几个其他文件。它来自 PS2 游戏。 声音样本(位于.AIFF格式),正是我所追求的,构成了它的大部分大小。 在网上搜索 PS2 后.DAT我发现它们基本上依赖于开发人员,并且由于这个游戏/工具相当晦涩并且在网上找不到太多相关信息,所以我考虑自己自动化该过程。 在十六进制编辑器上检查文件时我遇到了一些.AIFF标头,将块克隆到新的.AIFF文件,无需任何进一步的工作,它们就可以播放。 我花了一段时间从我非常有限的 bash 知识中摆脱出来,并在这里阅读了类似的问题,我想出了这个表达方式: g...

Admin

文本处理块的行到列
csplit

文本处理块的行到列

我有一个包含 Solaris 上的列表的文件: List A hi hello hw r u List B Hi Yes List C Hello 我需要转置列表,如下所示: List A List B List C hi Hi Hello hello Yes hw r u 我如何在 Solaris 上执行此操作? ...

Admin

如何根据上下文拆分文件?
csplit

如何根据上下文拆分文件?

lldpneighbors我有一些文件包含来自我们所有服务器的命令结果。我想将这些文件拆分为每个服务器的单独文件,以便更轻松地将这些数据导入到我们的库存系统中。 示例输入 === Output from 00000000-0000-0000-0000-000000000000 (SERVERNAME1): Interface 'ixgbe0' has 1 LLDP Neighbors: Neighbor 1: Chassis ID: MAC Address - 00 01 02 03 04 05 Port ID: ...

Admin

带管道 (|) 的 csplit 正则表达式
csplit

带管道 (|) 的 csplit 正则表达式

我想通过正则表达式分割文件,我的文件格式如下 0|t| lorem ... some text 138|t| title some text 如果我执行,egrep "[0-9]+\|t\|" file | wc -l它会正确计算出现次数,但如果我执行csplit filename /[0-9]+\|t\|/,它会说找不到匹配项,并且不会拆分文件。 模式中的管道似乎存在一些问题,但无法找到解决方案。 ...

Admin