【问题标题】:Input multiple files for SAR command为 SAR 命令输入多个文件
【发布时间】:2014-07-01 20:16:33
【问题描述】:

我正在尝试为正在生成的图形输入多个 sar 文件。我可以像这样一次输入一个文件:

LC_ALL=C sar -A -f /var/log/sa/sa05 >> /tmp/sar.data3.txt

这个系统税不起作用,但这是我想要做的事情的想法:

LC_ALL=C sar -A -f /var/log/sa/sa* >> /tmp/sar.data3.txt

【问题讨论】:

    标签: bash wildcard sar


    【解决方案1】:

    sa* 文件似乎是二进制文件,即 saXX 文件之一上的 cat 不会回显有效的人类可读单词。以下内容可用于查看其人类可读的内容。

    strings /var/log/sa/sa01 or saXX 
    

    您可能需要的文件是 sarXX:您可以尝试上面提到的“LC_ALL=C ....”命令来代替我下面提到的。

    for file in /var/log/sa/sar*; do sar -A -f "$file"  >> /tmp/sar.data3.txt; done
    

    现在,以下命令将显示/拥有您需要的内容。

    cat /tmp/sar.data3.txt 
    

    我没有看到 SAR 命令的所有选项,建议你检查一下是否有支持 sar* 或 sar 的选项??

    【讨论】:

      【解决方案2】:

      您可以使用 find 命令聚合文件并将它们连接到您的输出文件中,类似于:

      find /var/log/sa -type f -name "sa*" \
      -exec LC_ALL=C sar -A -f '{}' >> /tmp/sar.data3.txt \;
      

      由于sar 不接受带有 -f 选项的多个输入文件,您尝试执行的操作似乎失败了。将来,您可能会考虑使用-o 选项来准备包含您想要在记录中的数据的文件,这些数据稍后可以使用-f 选项输出

      【讨论】:

      • 如果只需要二进制 sa 而不是文本 sar 文件,则使用正则表达式 "sa[0-9][0-9]" 查找
      【解决方案3】:

      要查看内存统计数据的多日 sar 报告:

      find /var/log/sa/ -type f|grep sar|xargs grep kbmem -A144
      

      要查看 CPU 状态,试试这个

      find /var/log/sa/ -type f|grep sar|xargs grep "CPU     %user" -A720
      

      工作原理

      目录 /var/log/sa/ 将包含 sar23、sar24、sar25、sar26、sar27 等文件。 sar 后缀对应于月份中的某天。

      • 首先仅查找和 grep sar 后缀文件
      • 然后将 sar 文件作为参数传递给“grep 关键字”命令。这将只为您提供您感兴趣的参数的标题(kbmem 表示内存,或“CPU %user”表示 cpu 状态)
      • 但您还希望 标头之后的下 144 行内存详细信息(或 CPU 的 720 行)。因此,在 grep 命令中包含 -A144 或 -A720 选项。

      注意:

      • 对于内存统计,每 10 分钟记录一行。因此每天有 144 行。
      • 对于 CPU 统计数据,每 10 分钟记录 5 行,因此每天 720 行(至少在我的环境中)。这可能在您的环境中有所不同,因此请在最后手动验证或计算。

      如果你喜欢别名:

      alias sarcpu='find /var/log/sa/ -type f|grep sar|xargs grep CPU     %user -A720'
      alias sario='find /var/log/sa/ -type f|grep sar|xargs grep bread -A144'
      alias sarmem='find /var/log/sa/ -type f|grep sar|xargs grep kbmem -A144'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-01-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多