我想仅使用命令行在给定位置打印字符。例如:
<command> 5
Run Code Online (Sandbox Code Playgroud)
将输出a
,如果该文件的第5个字符是a
。
由于我正在处理大文件,因此理想情况下这将能够处理大文件。
我想计算一个非常大的文件中重复模式的数量aa
。所以我使用以下命令:
grep -o "aa" ./bwt/dblp.txt | wc -l
Run Code Online (Sandbox Code Playgroud)
这是有效的,除非我有一个字符串,例如aaa
,然后它仅将其匹配为 1 个模式。在我的用例中,我需要前 2 a
s 表示一个模式,但最后 2 a
s 是第二个模式(这意味着中间的a
fromaaa
可以重复使用)。
我怎样才能实现这个目标?
请注意,该文件非常大,因此如果可能的话,“优化”方式会更好。无论如何,任何可行的解决方案显然都是受欢迎的。
我需要 grep 所有以“[”开头并以某个字符串结尾的字符串,例如“apal”。因此,这两个字符之间的所有字符也将显示出来。给定一个输入,例如:
[44060]apal223reaea[55000]opoer4nr4on[95749]assad fdfdf Bhassrj sdaapald33qdq3d3da3ded[66000]dsfsldfsfldkj[77000]porpo4o4o3j3mlkfxxxx[101335]KaMMMM MMM lapa[131322]sadasds ddd apaladsdas[138133]sadasdadasddsss KMMapaldsadsadwe[150000]idhoqijdoiwjodwiejdw
Run Code Online (Sandbox Code Playgroud)
输出将是谎言
[44060]apal
[95749]assad fdfdf Bhassrj sdaapal
[101335]KaMMMM MMM lapal
[131322]sadasds ddd apal
[138133]sadasdadasddsss KMMapal
Run Code Online (Sandbox Code Playgroud)