如何尾部所有文件并通过通配符名称排除某些文件?
How do I tail all files and exclude some files by wildcard name?
我想跟踪目录中的所有文件,文件名中包含特定字符串的文件除外。另外,我想突出显示文件中包含的某些单词,因为命令是 运行.
这是针对 CentOS 的,专门用于跟踪所有 domlogs 或 httpd 访问日志。
虽然这些直接通过 bash 起作用,但它们在包含在脚本中时不起作用。
添加到脚本时,我还会在以下代码片段之前添加 #!/bin/bash。
这是我正在使用的命令:
!#/bin/bash
export GREP_COLOR='1;37;41'
tail -f /var/log/apache2/domlogs/!(*bytes*) | grep --color=auto -E '(^|Ubuntu|xmlrpc|spider|spider|python|crawler|Crawler|wp-login|wp-admin|zoom)'
当它命中第一个 (.
我期待它继续显示所有带有突出显示文本的 domlog。
扩展通配符默认不启用,您需要使用shopt
启用它们。
#!/bin/bash
shopt -s extglob
export GREP_COLOR='1;37;41'
tail -f /var/log/apache2/domlogs/!(*bytes*) | grep --color=auto -E '(^|Ubuntu|xmlrpc|spider|spider|python|crawler|Crawler|wp-login|wp-admin|zoom)'
我想跟踪目录中的所有文件,文件名中包含特定字符串的文件除外。另外,我想突出显示文件中包含的某些单词,因为命令是 运行.
这是针对 CentOS 的,专门用于跟踪所有 domlogs 或 httpd 访问日志。
虽然这些直接通过 bash 起作用,但它们在包含在脚本中时不起作用。
添加到脚本时,我还会在以下代码片段之前添加 #!/bin/bash。
这是我正在使用的命令:
!#/bin/bash
export GREP_COLOR='1;37;41'
tail -f /var/log/apache2/domlogs/!(*bytes*) | grep --color=auto -E '(^|Ubuntu|xmlrpc|spider|spider|python|crawler|Crawler|wp-login|wp-admin|zoom)'
当它命中第一个 (.
我期待它继续显示所有带有突出显示文本的 domlog。
扩展通配符默认不启用,您需要使用shopt
启用它们。
#!/bin/bash
shopt -s extglob
export GREP_COLOR='1;37;41'
tail -f /var/log/apache2/domlogs/!(*bytes*) | grep --color=auto -E '(^|Ubuntu|xmlrpc|spider|spider|python|crawler|Crawler|wp-login|wp-admin|zoom)'