9

私はシェルプログラミングに比較的慣れていないので、sarコマンドの結果をcsvファイルに出力する簡単な方法があるかどうか知りたい. を使用するsar > file1.csvと機能しますが、適切にフォーマットされていません。すべてのデータが 1 つの列に表示されます。やってみたけどダメだった

sar -d -u -w 1 1 | grep -v Average | grep -v Linux | tr -s ' ' ',' | tr -d '\n' > file1.csv

sarコマンドの出力をファイルに保存するための適切なスクリプトを誰かに教えてもらえますかcsv。助けていただければ幸いです。

4

2 に答える 2

49

これはちょっと古いことは知っていますが、使用する必要があるか、使用できますsadf -dh -- <sar command>。これはsysstatawkパッケージの一部であり、正規表現を必要とせずに csv 出力を提供します。実際、最新バージョンでは、情報を JSON および XML に出力することもできます。あなたはただあなたの毒を選ぶことができます:)

簡単な例:

$ sadf -dh -- -p
localhost.localdomain;-1;2014-06-13 08:47:02 UTC;LINUX-RESTART
# hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%idle[...]
localhost.localdomain;600;2014-06-13 09:00:01 UTC;-1;8.80;0.01;1.65;9.51;0.00;80.03
localhost.localdomain;600;2014-06-13 09:10:01 UTC;-1;3.03;0.71;2.41;0.81;0.00;93.05
于 2014-06-13T13:24:29.163 に答える
3
sar -d -u -w 1 1 | grep -v Average | grep -v Linux |awk '{if ($0 ~ /[0-9]/) { print $1","$2","$4","$5","$6; }  }'



22:14:04,CPU,%nice,%system,%iowait
22:14:05,all,0.00,8.53,0.00
22:14:04,proc/s,,,
22:14:05,0.00,,,
22:14:04,DEV,rd_sec/s,wr_sec/s,avgrq-sz
22:14:05,dev8-0,0.00,0.00,0.00

上記の出力をお楽しみください

于 2013-03-11T22:14:21.567 に答える