ディスク使用量データを収集しており、このコマンドに日付、時刻、およびホスト名を追加したいと思います。この形式でどうすればいいですか?
YYYY-MM-DD HH:MM:SS,HOSTNAME,DISK_USAGE_DATA
これまで私のコマンドは次のようになります。
df -H | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{ print $2 "," $3 "," $4 "," $1 }'
また、デフォルトの混合GB / MBサイズではなくKB単位でサイズを指定するコマンドの出力をどのように取得できますか?これにより、計算時に基礎を変えることができます。
答え1
awk
これは一人で行うことができます。
df -B KB | awk 'NR!=1&&$1!~/tmpfs|cdrom/{printf "'$(date "+%Y-%m-%d-%H:%M:%S")','$(hostname)',%s,%s,%s,%s\n", $2, $3, $4, $1}'
説明する:
df -B KB
:値をKB単位で印刷します。awk
NR!=1
: 最初の行を避ける$1!~/tmpfs|cdrom/
:最初のフィールドに除外されたファイルシステムが含まれていない場合printf
: 印刷の書式設定$(date +%Y-%m-%d)
:希望の形式の日付$(hostname)
:CPU名%s,%s,%s,%s\n
:そしてその残り