我试图找到以某个名称开头的所有文件,然后遍历每个文件以查找包含字符串的行,然后仅打印出包含该字符串的每个文件的最后一行。一步一步,我首先找到我的目录中以“A123”开头的所有文件
find . -name 'A123*'
Run Code Online (Sandbox Code Playgroud)
然后获取文件中包含“Trial”的每一行
find . -name 'A123*' -exec grep 'Trial' {} \;
Run Code Online (Sandbox Code Playgroud)
然后从这里我只想打印最后一行,
find . -name 'A123*' -exec grep 'Trial' {} | tail -1 \;
Run Code Online (Sandbox Code Playgroud)
但是,最后一个命令不起作用。我该如何解决这个问题才能得到我想要得到的东西?
我有一个大约 3.5 GB 的巨大日志文件,并且想在 10 MB 中间采样随机部分,以便调试我的应用程序正在执行的操作。
我可以使用 head 或 tail 命令来获取文件的开头或结尾,如何从文件中间获取任意部分?我想我可以做类似的事情,head -n 1.75GB | tail -n 10MB但这似乎很笨拙,我需要确定文件中点的行号以获得 1.75GB 和 10MB 的行数。
我想基本上持续更新目录的文件列表,类似于 tail 处理-f文件上的标志的方式。
有什么合理的方法可以做到这一点吗?
我最近从 Ubuntu 转移到 OS X,我发现“tail”命令的行为有所不同。
在 Ubuntu 上我可以运行
tail -f xyzzy.log | espeak
Run Code Online (Sandbox Code Playgroud)
(例如,让计算机读取 IRC 上发生的事情。)
但是在 OS X 上
tail -F xyzzy.log | say
Run Code Online (Sandbox Code Playgroud)
(我希望它是等效的)不会产生任何结果。
大概这是因为管道想要发送 tail 的完整输出 to say,但由于 tail 不断运行(使用 -f),它永远不会到达进程的末尾,因此输出永远不会被传递给 say。老实说,如果我理解正确的话,这种行为比我在 Ubuntu 上的行为更有意义——只是没那么有用。
那么有没有另一种方法可以达到相同的结果?(我关于为什么会发生这种情况的假设是否正确?)
我试图找到一种方法(通过转义字符或软件)在我的 php 错误日志中显示彩色线条。
现在我正在阅读他们(现场)
tail -n 50 -f /var/log/apache2/error.log
这很棒,但我希望能够将error_log()某些行变为红色,例如,标记身份验证错误。有没有办法做到这一点?
我在 Ubuntu 12.04 上使用 PHP 5.3
可以执行cat logfile | tail -f吗?出于某种原因,它只是读取初始日志,但随后不会更新传入的条目。我知道我可以直接做tail -f logfile。
我只是想知道为什么这不起作用,如果tail -f必须始终先是,然后是另一个管道?
在 UNIX(准确地说是 OS X BSD)中,我在日志文件上有一个“tail -f”命令。有时我想删除这个日志文件,这样我就可以更容易地在我的文本编辑器中查看它。
我删除该文件,然后我的程序在新活动后重新创建它。但是,我的 tail 命令(以及其他任何监视旧日志文件的命令)没有更新;它仍在监视已删除的旧日志文件。
我想我明白为什么会这样(文件名只是指向文件数据块的指针)。我想知道如何解决这个问题。理想情况下,当文件名被删除和重新创建时,我的 tail 命令(以及我指向文件的任何其他内容)将能够从新文件中读取数据。
我该怎么做?
我一直在尝试提取固件的内容并将其放入二进制文件,但没有成功。
我看到了正确的十六进制内容,但不确定如何将它们按位放入文件中。
objdump -s -j .text firmware.ko | 尾 -n +5 | awk '{print "dd if='firmware.ko' of='content.bin' bs=1 count=$["$2 $3 $4 $5 "]"}'
我正在阅读这篇文章,但我并不完全理解答案。
我想知道我是否可以修改它,它叫什么,命令重定向?
我想要什么:
&继续执行下一个命令data.json这可能吗?
例如我目前有这个命令:
bq query --max_rows=1000000 --use_legacy_sql=false --format=json --batch=true --headless=true 'select * from `ga4-extract.analytics_123456789.events_'"$RUNDATE"'`;' > data.json
Run Code Online (Sandbox Code Playgroud)
大约 30 分钟后失败,我看不到输出或问题是什么。这是在 github actions runner 上,工作流的控制台输出仅给出失败状态,但对于此工作流来说,没有控制台输出指示错误。
我想修改我的命令,以便可以像我已经拥有的那样输出到 data.json,但也可以继续下一步监视 bqlog.txt 文件tail -F bqlog.txt