Questions tagged «text-processing»

通过程序,脚本等操作或检查文本

1
使用tail时将换行符转换为以空分隔符
如何将输出更改tail为使用以空终止的行而不是换行? 我的问题与此相似:如何在bash中以空定界输入执行“ head”和“ tail”操作?,但不同之处在于我想执行以下操作: tail -f myFile.txt | xargs -i0 myCmd {} "arg1" "arg2" 我没有使用find,因此无法使用-print0 所有这些都是为了避免在xargs中发生错误: xargs: unmatched double quote; by default quotes are special to xargs unless you use the -0 option


1
用另一个文件的内容替换文件中的模式
我有一个文本文件(devel.xml)。 我在其中添加了单词REPLACETHIS,以便将该字符串替换为其他文件(temp.txt)中的内容。 我最接近的是: sed -i -e "/REPLACETHIS/r temp.TXT" -e "s///" devel.txt; 这会将内容插入字符串后,然后再删除字符串。 这是最好的方法吗?

4
将长输出分成两列
是否有一个简单的实用程序或脚本来对我的一个脚本的输出进行列化?我有某种形式的数据: A aldkhasdfljhaf B klajsdfhalsdfh C salkjsdjkladdag D lseuiorlhisnflkc E sdjklfhnslkdfhn F kjhnakjshddnaskjdh 但是如果这变成两个长,则以以下形式写入数据(仍然按垂直顺序排列): A aldkhasdfljhaf D lseuiorlhisnflkc B klajsdfhalsdfh E sdjklfhnslkdfhn C salkjsdjkladdag F kjhnakjshddnaskjdh 通过阅读手册页,我认为这column不适合,但我不确定。拆分表格很容易: A B C D E F 通过仅\n每隔两行打印一次(我当前脚本执行的操作)。有任何想法吗?谢谢!

6
如何部分提取压缩的巨大纯文本文件?
我有一个大小为1.5 GB的zip文件。 它的内容是一个荒谬的大型纯文本文件(60 GB),并且我目前在磁盘上没有足够的空间来提取所有文件,即使有,我也不想提取所有文件。 至于我的用例,只要我可以检查部分内容就足够了。 因此,我想将文件解压缩为流并访问文件的范围(就像可以通过普通文本文件的头部和尾部通过)。 通过内存(例如,从32GB标记开始提取最大100kb)或通过行(给我纯文本行3700-3900)。 有办法实现吗?

18
如何向后读取IP地址?
如果我们有以下字符串(IP地址):192.168.1.1 如何从此字符串派生(DNS反向记录形式),因此它将像1.1.168.192.in-addr.arpa使用Shell脚本一样显示?

7
如何使用patch和diff合并两个文件并自动解决冲突
我已经阅读了有关diff和patch的内容,但我不知道如何应用所需的内容。我想这很简单,因此为了显示我的问题,请使用以下两个文件: xml文件 <resources> <color name="same_in_b">#AAABBB</color> <color name="not_in_b">#AAAAAA</color> <color name="in_b_but_different_val">#AAAAAA</color> <color name="not_in_b_too">#AAAAAA</color> </resources> b.xml <resources> <color name="same_in_b">#AAABBB</color> <color name="in_b_but_different_val">#BBBBBB</color> <color name="not_in_a">#AAAAAA</color> </resources> 我想要一个输出,看起来像这样(顺序无关紧要): <resources> <color name="same_in_b">#AAABBB</color> <color name="not_in_b">#AAAAAA</color> <color name="in_b_but_different_val">#BBBBBB</color> <color name="not_in_b_too">#AAAAAA</color> <color name="not_in_a">#AAAAAA</color> </resources> 合并应包含遵循以下简单规则的所有行: 仅在其中一个文件中的任何行 如果一行具有相同的名称标签但值不同,则从第二行取值 我想在bash脚本中应用此任务,因此如果另一个程序更合适,那么它不一定需要完成diff和patch的操作。




7
解析XML以获取bash脚本中的节点值?
我想知道如何通过以下路径获取节点的值: config/global/resources/default_setup/connection/host config/global/resources/default_setup/connection/username config/global/resources/default_setup/connection/password config/global/resources/default_setup/connection/dbname 来自以下XML: <?xml version="1.0"?> <config> <global> <install> <date><![CDATA[Tue, 11 Dec 2012 12:31:25 +0000]]></date> </install> <crypt> <key><![CDATA[70e75d7969b900b696785f2f81ecb430]]></key> </crypt> <disable_local_modules>false</disable_local_modules> <resources> <db> <table_prefix><![CDATA[]]></table_prefix> </db> <default_setup> <connection> <host><![CDATA[localhost]]></host> <username><![CDATA[root]]></username> <password><![CDATA[pass123]]></password> <dbname><![CDATA[testdb]]></dbname> <initStatements><![CDATA[SET NAMES utf8]]></initStatements> <model><![CDATA[mysql4]]></model> <type><![CDATA[pdo_mysql]]></type> <pdoType><![CDATA[]]></pdoType> <active>1</active> </connection> </default_setup> </resources> <session_save><![CDATA[files]]></session_save> </global> <admin> <routers> <adminhtml> <args> <frontName><![CDATA[admin]]></frontName> </args> …


3
如何将makefile中给定的依赖关系显示为树?
问题 我想查看makefile的一个或多个目标的依赖关系。因此,我正在寻找一个程序,该程序可以解析makefile,然后以树状格式(缩进,ascii-art,...)或图形(点,...)表示依赖项。 类似 有一些程序可以在其他情况下执行此操作: pactree或btreeree可以树状格式(例如ascii格式)或dot图形形式显示相应格式软件包的依赖关系, gcc -M source_file.c 将C源文件的依赖性显示为生成规则, pstree显示进程树的ascii表示。 进展 在网上搜索时,我发现没有什么帮助。那导致我尝试 make --always-make --silent --dry-run some_target | \ grep --extended-regexp 'Considering target file|Trying rule prerequisite' 但看起来我必须在perl或python中破解一些其他解析代码,才能将其表示为漂亮的树/图。而且我还不知道我是否真的会以这种方式获得完整正确的图表。 要求 最好以某种方式限制图形(没有内置规则,只有给定的目标,只有一定的深度),但是在大多数情况下,我只是在寻找一种工具,该工具将给我一些“合理的”,人类的依赖关系。 -可见格式(例如“相似”下的程序)。 问题 是否有任何程序可以做到这一点? 我会从中获得完整和正确的信息make -dnq ...吗? 有没有更好的方法来获取此信息? 是否已经存在用于解析此信息的脚本/尝试?

9
从文件中删除多余的标题行,但第一行除外
我有一个看起来像这个玩具示例的文件。我的实际文件有400万行,其中大约10行需要删除。 ID Data1 Data2 1 100 100 2 100 200 3 200 100 ID Data1 Data2 4 100 100 ID Data1 Data2 5 200 200 我想删除看起来像标题的行,但第一行除外。 最终文件: ID Data1 Data2 1 100 100 2 100 200 3 200 100 4 100 100 5 200 200 我怎样才能做到这一点?

3
使用awk,sed提取具有特定图案的部分线
我对awk / sed运算符有疑问。我有一个大文件,重复了以下几行 Expression loweWallrhoPhi : sum=-6.97168e-09 Expression leftWallrhoPhi : sum=6.97168e-09 Expression lowerWallPhi : sum=-5.12623e-12 Expression leftWallPhi : sum=5.12623e-12 Expression loweWallrhoUSf : sum=-6.936e-09 Expression leftWallrhoUSf : sum=6.97169e-09 Expression lowerWallUSf : sum=-5.1e-12 Expression leftWallUSf : sum=5.12624e-12 我想在每种情况下将总和后的值提取到单独的文件中。可以一次这样做吗?

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.