Tag: 文本处理

摆脱性格

printf “%s\t” Nt n{1..1600} >file_a printf “%s\t” R cha 2 987 > file_aa awk ‘{print}’ file_a file_aa > newfile 创建标题看起来像的文件 Nt /t n1 /t n2 /t n3 …. 问题在于,当看到它如何打印时,结果certificate它在最后的n中是 \tn 1 5 9 8 \tn 1 5 9 9 \tn 1 6 0 0 \t \n 所以有一些东西在1600之后 – 我怎么能在awk中输掉最后一个? 还是某个地方? 我在谈论最后的\t \tn 1 5 9 […]

SED或者在第一个空格之后删除所有内容的东西,直到`|`

我有一个小bash片段我正在研究: $ stat –printf=%A\|%U\|%G\|%s\|%y\|%N’\n’ /usr/src/linux-headers-4.4.0-124/zfs/cmd/zhack drwxr-xr-x|root|root|4096|2018-05-17 05:54:49.361904361 -0600|’/usr/src/linux-headers-4.4.0-124/zfs/cmd/zhack 日期相当丑陋,所以我想使用sed (或其他任何工作)删除第一个空格之后的所有内容 。 当然,如果stat命令可以正常打印日期也可以! 有关sed任何提示sed挑战吗?

awk – 比较两个文件中的文件和打印行

我正在寻找一种比较两个文件的第2列和第1列的方法,如果它们与第一个文件中的所有列相同,而第二个文件中的列为$ 2。 file_1.txt apple tree 5 great see 10 see apple 3 tree bee 11 make change 2 file_2.txt apple 5.21 around 6.21 great 2 bee 1 see 7.43 tree 3 输出应如下所示: apple tree 5 3 great see 10 7.43 see apple 3 5.21 tree bee 11 1 我试过了 awk ‘NR==FNR{a[$2];next} ($1 in a) {print}’ […]

sort,uniq,cut保留额外的字段

我有一个包含三列/字段的文本文件:time,ip source address和type(tcp,udp,icmp)。 请参见底部的示例。 我不得不按IPsource地址排序,以确定那些包含100个或更多数据包的地址,并且只保留这些地址。 我用cut,uniq,awk来获得这样的东西: 149 109.67.66.151 165 110.139.3.179 204 110.4.80.107 112 111.118.55.173 169 111.240.103.56 但是在这个过程中我丢失了tcp / udp / icmp字段。 有没有办法保持相应的IP地址的这个字段,并得到类似的东西: 149 109.67.66.151 TCP 165 110.139.3.179 UDP 204 110.4.80.107 TCP 112 111.118.55.173 ICMP 169 111.240.103.56 TCP 原始文件样本: 1385940727.551004 111.8.17.50 TCP 1385940735.434301 111.8.17.50 TCP 1385940739.646539 111.8.17.50 TCP 1385940755.767752 111.8.17.50 TCP 1385940758.258988 111.8.17.50 TCP 1385940762.911809 111.8.17.50 […]

在多个文件中查找并替换正则表达式(匹配unicode字符类Devanagari)

假设您有一个名为test.txt的文件,其中包含以下行: ಕದಂಬ कदम्ब 然后,假设您想用D替换每个devanagarI unicode字符(即在कदम्ब中)。然后,您可能认为以下内容可行: find . -name ‘test.*’ | xargs perl -w -i -p -e ‘s/(\p{Devanagari})/D/g’ 但事实并非如此。 怎么做到这一点?

在数组中存储一些字符串

我有这个 sCSISmart1 TRAP-TYPE 企业旋风 VARIABLES {cycHostAdapterNumber,cycHostAdapterID,cycManagerID} 描述 “SNMP代理已启动。” – #TYPE“SNMP代理已启动。” – #SUMMARY“SNMP代理已启动” – #ARGUMENTS {} – #SEVERITY INFORMATIONAL – #TIMEINDEX 100 – #STATE OPERATIONAL – #HELP“scsismrt.hlp” – #HELPTAG 101 :: = 101 我想做的事 有些命令将VARIABLE每个名称复制到名为var的数组中 所以上面的输出 echo“$ {var [0]}” cycHostAdapterNumber echo“$ {var [1]}” cycHostAdapterID echo“$ {var [2]}” cycManagerID 另一个例子 sCSISmart1 TRAP-TYPE 企业旋风 VARIABLES {scellNameDateTime, scellSWComponent, scellECode, […]

对于同一行上的多个实例,使用grep重复整行匹配

这个问题的一个分支: 在从以下文件中搜索字符串“banana”时,我们分别想要1,2,3和7行的1,2,3和7个实例。 grep输出的数量应该等于匹配实例的数量,同时仍然返回整行。 There is one banana here There are two banana banana here There are three banana banana banana here Basically there is no limit to how many banana banana banana banana banana banana banana we can have In fact we need not have any too! 注意:如果我们删除输出中整行的限制,我们有: grep -no “banana” tempfile 返回 1:banana 2:banana […]

将特定字符串添加到数组sed / awk / grep

我有这个 ciscoFlashCopyStatus OBJECT-TYPE 语法整数 { copyOperationPending(0), copyInProgress(1), copyOperationSuccess(2), copyInvalidOperation(3), copyInvalidProtocol(4), copyInvalidSourceName(5), copyInvalidDestName(6), copyInvalidServerAddress(7), copyDeviceBusy(8), copyDeviceOpenError(9), copyDeviceError(10), copyDeviceNotProgrammable(11), copyDeviceFull(12), copyFileOpenError(13), copyFileTransferError(14), copyFileChecksumError(15), copyNoMemory(16), copyUnknownFailure(17), copyInvalidSignature(18) } MAX-ACCESS只读 状态当前 我想做的事 有些命令将VARIABLE每个名称复制到名为var的数组中 所以输出的例子 echo“$ {var [0]} copyOperationPending echo“$ {var [1]} copyInProgress echo“$ {var [2]} copyOperationSuccess 等等.. 任何想法我怎样才能做到这一点? 注意这是一个类似的问题,我之前曾问过一些事情是如何改变的,我不能再使用旧问题中提供的相同解决方案了。

从html文件的单引号中获取文本

我有一个html源文件,我需要提取其中的链接,链接数量因文件而异,链接格式如此,并且在单引号内: ../xxx/yyy/ccc/bbbb/nameoffile.extension 我需要在单引号之间获取文本,用http://替换..并将结果输出到文件。 我是一个新手,正在寻找一个解决方案来自动化终端中的这个过程。 它的html源文件和链接在文件中无处不在,我需要在文件中输出每行一个链接传递给我现有的xargs curl进行下载。 样本文件几乎是这样的: blabla blibli afg fgfdg sdfg blo blo href= ‘../xxx/yyy/ccc/bbbb/nameoffile1.extension’ target blibli bloblo href= ‘../xxx/yyy/ccc/bbbb/nameoffile2.extension’ blibli bloblo href= ‘../xxx/yyy/ccc/bbbb/nameoffile3.extension’ … 查找的结果是包含以下内容的文件: http://zzcom/xxx/yyy/ccc/bbbb/nameoffile1.extension http://zzcom/xxx/yyy/ccc/bbbb/nameoffile2.extension http://zzcom/xxx/yyy/ccc/bbbb/nameoffile3.extension 请有人帮助我找到解决方案。 源文件尽可能接近: Inter num num – nil Test d’épreuveReçu le 11/03/2018 à 17:49 Client : zzz – Référence : 232323 – Désignation : Fiche d’accueil […]

保存没有尾随换行符的文件

最近我发现,经过多年的思考,各种软件在我的文件末尾添加了一个换行符,实际上是Pluma(或Gedit – 相同的区别)一直默默地添加它们。 目前我正在开发一个包含大量PHP包含的网站,解析保存在磁盘上的数据等等,这样可以让我的生活更容易消除添加到每个文件末尾的额外行。 据我所知,没有办法阻止这种行为。 我想要对它进行排序或找到类似于Gedit的文本编辑器而不会出现此问题。 我真的不想通过Wine使用Notepad ++,但这可能是一个选择。 终端文本编辑器也是一种可能性,但我更愿意使用带有GUI的文件,而不仅仅是对文件的轻微编辑。