标签: tail

尾管grep管xmllint不工作

我正在尝试使下面的命令工作,但没有打印o/p:

tail -f mylog.log | grep --line-buffered -Eo '<S:Envelope .+Envelope>' | xmllint --format --recover -
Run Code Online (Sandbox Code Playgroud)

但是,如果我从文件中grep相同的模式,并将其传递给xmllint,它的工作原理如下:

grep --line-buffered -Eo '<S:Envelope .+Envelope>' tmp.xml | xmllint --format --recover -
Run Code Online (Sandbox Code Playgroud)

我在第一个命令中缺少什么?

grep pipe tail xmllint

1
推荐指数
1
解决办法
2364
查看次数

尾部一个日志文件,如果匹配触发一个actrion

我目前正在使用以下代码行通过PowerShell返回最新的日志行

Get-Content -Path C:\folder\thisisalog.log -Tail 1 -Wait |
    Where {$_ -match "Remote_http"}
Run Code Online (Sandbox Code Playgroud)

这可以正常工作,并且每次记录与"Remote_http"匹配的日志时都会写入控制台.

但是,我想要做的是在返回时运行另一个脚本.到目前为止,我已经尝试添加到一个变量并检查它是否为空而没有运气,我尝试使用if语句但没有成功.尝试这两个脚本无限期地运行,没有输出到控制台或triigers.

我认为这可能与-Wait导致问题的因素有关.

powershell tail

1
推荐指数
1
解决办法
3828
查看次数

Haskell:一串"a"的尾巴

为什么String只有一个字母的尾部是空字符串而不是空列表?

例:

tail "a"
= ""
Run Code Online (Sandbox Code Playgroud)

但您可以创建一个String作为:

'a' : []
= "a"
Run Code Online (Sandbox Code Playgroud)

所以我认为尾巴应该是空列表[].

如果你这样做的话

tail ["x"]
Run Code Online (Sandbox Code Playgroud)

然后你得到空列表[].

这有点令人困惑.

string haskell tail

1
推荐指数
1
解决办法
301
查看次数

如何添加 -F 尾部,但仅在最后 5 行中滚动输出

我希望能够得到tail -F一些输出,但不能让它回滚整个缓冲区,而只能在有限的行数(例如 5 行)内滚动。

我怎样才能做到这一点?

我试过

tail -F -n 5 /tmp/dump

但这似乎不起作用 - 滚动行占据了整个缓冲区

bash tail

1
推荐指数
1
解决办法
1454
查看次数

在Perl中是否有相同的`tail -f`?

我正在编写一个脚本来监听日志文件的更改并采取适当的行动.目前我正在使用open my $fh, "tail -f $logfile |";但理想情况下我不想使用系统调用.

我已经尝试过File :: Tail但它的最小间隔为1秒(我尝试传递较少,但默认为1秒,即使我传递0).我已经检查了它的来源,它似乎使用sleep(),它采用整数.在我尝试自己编写之前,还有其他选择吗?

谢谢.

linux perl tail

0
推荐指数
1
解决办法
2979
查看次数

在bash上从STDOUT中删除n行

你有任何bash解决方案从stdout中删除N行吗?

像'head'命令一样,打印所有行,只有最后一个N.

关于bash的简单解释:

找到./test_dir/ | sed'$ d'| sed'$ d'| sed'$ d'| ...

但我需要复制sed命令N次

更好的解决方案?除了awk,python等......

bash sed tail unix-head

0
推荐指数
1
解决办法
1972
查看次数

Bash free命令停止工作

我想做以下事情:

获取输出free -mo,取第二行并每30秒将其记录到一个文件中.

我跑的时候

$free -mo -s 30 
Run Code Online (Sandbox Code Playgroud)

它每30秒运行并显示一次输出.

但是当我跑步的时候

$ free -mo -s 30 | head -2 | tail -1
Run Code Online (Sandbox Code Playgroud)

它只运行一次.我无法弄清楚出了什么问题.

free手册说free -s 30每隔30秒运行一次命令.

linux bash tail free-command

0
推荐指数
1
解决办法
286
查看次数

unix命令'tail'丢失选项' - line-buffered'

随着我们的SuSE Enterprise Linux 11的最新更新(现在是bash 3.2.51(1)-release),命令"tail"似乎已经失去了流文件的选项:

tail: unrecognized option '--line-buffered'
Run Code Online (Sandbox Code Playgroud)

我们的尾巴来自"GNU coreutils 8.12,2013年3月".还有另一种等效的解决方案吗?

unix streaming tail

0
推荐指数
1
解决办法
5665
查看次数

在日志中搜索的最佳方法是什么?

在任何类型的服务中,在日志中搜索以下情况的最佳方法是什么:

1 - 如果错误已经发生。
2 - 如果错误被重现并且想要捕获发生的异常/错误。

我知道但效率低下的一些方法是:

tail -f production.log => log flows and you have to check manually.
tail -n1000 production.log => log for last 1000 lines
tail -f production.log | grep '500 Internal Server Error' => shows the flow of log for only one particular line that says 500.

我想打印日志上方的 100 行,以便在这两种情况下也打印回溯(尤其是第二行)。

unix search logging grep tail

0
推荐指数
1
解决办法
7206
查看次数

Grep问题与shell脚本中的if语句有关

我在shell脚本if语句中有tail&问题grep。如果我tail -5 mylog.log | grep -c "Transferred: 0"在shell中运行,它将按预期运行,但是在此shell脚本中,如果if语句:

# Parse log for results
if [ tail -1 "$LOGFILE" | grep -c "Failed" ] ; then
        RESULT=$(tail -1 "$LOGFILE")
elif [ tail -5 "$LOGFILE" | grep -c "Transferred:            0" ] ; then
        RESULT=""
else
        RESULT=$(tail -5 "$LOGFILE")
fi
Run Code Online (Sandbox Code Playgroud)

我懂了

... [: missing `]'
grep: ]: No such file or directory
Run Code Online (Sandbox Code Playgroud)

对于两个grep行。

显然,关闭]被视为grep的一部分(因此丢失),但是我使用的是正确的空格,所以我不知道发生了什么?我在这里做错了什么?

谢谢,PJ

bash shell grep if-statement tail

0
推荐指数
1
解决办法
3312
查看次数

如何在Haskell中返回长度为n的列表的前n-1个元素?

我知道tail函数返回列表的最后n-1个元素(其中n是列表的长度),所以我定义了自己的"cotail"函数来返回前n-1个元素:

cotail = (reverse . tail . reverse)
Run Code Online (Sandbox Code Playgroud)

这是最好的方法,还是有内置函数或更聪明的方法来实现这一目标?

haskell list tail

-1
推荐指数
2
解决办法
1253
查看次数