我有一个大文件,每一行都包含一个字符串。我希望能够快速确定文件中是否有字符串。理想情况下,这将使用二进制斩波类型算法来完成。
一些谷歌搜索揭示了look带有-b标志的命令,该标志承诺使用二进制搜索算法定位和输出以给定前缀开头的所有字符串。不幸的是,它似乎无法正常工作,并为我知道在文件中的字符串返回空结果(它们由等效grep搜索正确返回)。
有谁知道有效搜索此文件的另一种实用程序或策略?
$ (echo hello; echo there) | sed ':a;$!N;s/\n/string/;ta'
hellostringthere
Run Code Online (Sandbox Code Playgroud)
上面的sed命令用字符串“string”替换换行符。但我不知道:a;$!N;s/\n/string/;ta单引号内的含义。我知道中间部分s/\n/string/。但我不知道 first ( :a;$!N;) 和 last ( ta) 部分的功能。
让我们假设有一个命令,例如:
cat /boot/config-3.19.0-32-generic | grep CONFIG_ARCH_DEFCONFIG
Run Code Online (Sandbox Code Playgroud)
输出是这样的:
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
Run Code Online (Sandbox Code Playgroud)
现在,我的问题是:是否有任何命令只会打印引号内的内容,即" "?
你能解释一下这个命令吗?谢谢!提前。
目前,我有多个文本文件,内容如下(多行):
565 0 10 12 23 18 17 25
564 1 7 12 13 16 18 40 29 15
Run Code Online (Sandbox Code Playgroud)
我希望将每一行更改为以下格式:
0 565:10:1 565:12:1 565:23:1 565:18:1 565:17:1 565:25:1
1 564:7:1 564:12:1 564:13:1 564:16:1 564:18:1 564:40:1 564:29:1 564:15:1
Run Code Online (Sandbox Code Playgroud)
有没有办法使用 sed 执行上述操作?还是我需要求助于 Python?
我想在匹配之前显示所有行,例如不仅是 10、7 或 14 行,如如何在 bash 中的 grep 结果之前/之后获取行中所述?.
我该怎么做?是否包含匹配的行并不重要。
例如,而不是:
... | grep -B 10 -- "foo"
Run Code Online (Sandbox Code Playgroud)
我想要:
... | grep -B -- "foo"
Run Code Online (Sandbox Code Playgroud)
但是这最后的代码不起作用。
我有一个包含我的个人详细信息 (.txt) 的文件。如何通过终端仅从文件中复制一些详细信息并将其放入新.txt文件中?
例如,如果这是文件的内容:
name : farah age : 23 phone number : 0123 education : degree
Run Code Online (Sandbox Code Playgroud)
如何仅复制年龄和电话号码并将其输出到新.txt文件?
我有一个大约 37MB 的非常大的文本日志文件。
使用cat file | more我可以一次查看一页的文件内容。
问题是这总是从顶部开始 - 旧条目。
如何使它从底部开始,然后将较新的条目逐页向上移动?
我有一个 .txt 文件,其中的数字是这样排序的(在同一行):
106849_01373 106849_01967 106850_00082 23025.7_01059
Run Code Online (Sandbox Code Playgroud)
我想像这样转换它们:
106849_01373
106849_01967
106850_00082
23025.7_01059
Run Code Online (Sandbox Code Playgroud)
我不知道要使用哪个命令。有人可以帮我解决这个问题吗?
我也许可以使用<or>或|。也许我需要使用grep?
我有一个来自运行 shell 脚本的 output.txt,如下所示:
abc.txt
errorstatus1
Fri Nov 11 02:00:09 2016
def.txt
errorstatus2.txt
Sat Nov 12 03:00:09 2016
Run Code Online (Sandbox Code Playgroud)
文本文件以相同的方式一行一行地有多个条目。我想将这些值打印到列中:文件名、状态和时间戳,如下所示:
Filename Status Timestamp
abc.txt errorstatus1 Fri Nov 11 02:00:09 2016
def.txt errorstatus2 Sat Nov 12 03:00:09 2016
Run Code Online (Sandbox Code Playgroud)