« | »

前回は O でしたが今回は Dです。

パッケージ名 datefudge
バージョン datefudge-1.24-1.3.x86_64
動作 ◎
詳細
datefudge はシステム時刻をごまかすユーティリティです。例えば以下のようになります。

% date
2021年  4月  3日 土曜日 22:09:35 JST
% datefudge "2007-04-01 10:23" date
2007年  4月  1日 日曜日 10:23:00 JST
% datefudge "2 weeks ago" date
2021年  3月 20日 土曜日 22:11:39 JST

さらに、 –static オプションというのがあり、これを使うと、日付を固定してしまうことが出来ます。

% datefudge "2007-04-01 10:23" sh -c "sleep 3; date"
2007年  4月  1日 日曜日 10:23:03 JST
% datefudge --static "2007-04-01 10:23" sh -c "sleep 3; date"
2007年  4月  1日 日曜日 10:23:00 JST

このように、3秒後でも時刻が変わっていません。
datefudge は、時刻に絡んだテストや、テスト結果の取得時に便利に使えそうです。

パッケージ名 datamash
バージョン datamash-1.7-1.9.x86_64
動作 ◎
詳細
datemash は、種々の演算をコマンドライン上で行えるツールです。たとえば、行や列の処理、数値の集計、統計機能などがあります。dirname(1) 、 basename(1)、cut(1)などの機能を持っています。
たとえば中身が

%cat sar.txt
06:25:01        %user   %nice   %system %iowait %steal  %idle
06:35:01        7.26    0.00    1.18    0.06    0.00    91.51
06:45:01        7.23    0.00    1.19    0.04    0.00    91.54
06:55:01        7.89    0.00    1.34    0.13    0.00    90.65
07:05:01        7.23    0.00    1.24    0.04    0.00    91.49
07:15:01        7.61    0.00    1.32    0.10    0.00    90.96
07:25:01        7.69    0.00    1.32    0.06    0.00    90.93
07:35:01        7.62    0.00    1.31    0.05    0.00    91.02

となっているファイルの縦横は、

% datamash  transpose <sar.txt
06:25:01        06:35:01        06:45:01        06:55:01        07:05:01        07:15:01        07:25:01  07:35:01
%user   7.26    7.23    7.89    7.23    7.61    7.69    7.62
%nice   0.00    0.00    0.00    0.00    0.00    0.00    0.00
%system 1.18    1.19    1.34    1.24    1.32    1.32    1.31
%iowait 0.06    0.04    0.13    0.04    0.10    0.06    0.05
%steal  0.00    0.00    0.00    0.00    0.00    0.00    0.00
%idle   91.51   91.54   90.65   91.49   90.96   90.93   91.02

と言うように変換できます。また、2列目の合計と平均を出すには、

%  tail -n +2 sar.txt |datamash sum 2 mean 2
52.53   7.5042857142857

とします(最初の1行が非数値を含む行なのでスキップしています)。
datamash を使うと、awk などを駆使したり、perlや python などで小さなプログラムを書いていた処理を書かなくても済む可能性があります。うまく使えば作業の効率化に繋がりそうです。

パッケージ名 dfc
バージョン dfc-3.1.1-2.6.x86_64
動作 ◎
詳細
コンソール上で見栄え良くディスクの使用状況を表示するツールです。df の見栄えが良い版です。たとえば、

% df
ファイルシス   1K-ブロック    使用  使用可 使用% マウント位置
devtmpfs           4961412       0 4961412    0% /dev
tmpfs              4972560       0 4972560    0% /dev/shm
tmpfs              1989028    1172 1987856    1% /run
tmpfs                 4096       0    4096    0% /sys/fs/cgroup
/dev/sda2         14669824 6630060 8039764   46% /
tmpfs              4972564       0 4972564    0% /tmp
/dev/sda3          8581120 1338444 7242676   16% /home
tmpfs               994512      16  994496    1% /run/user/461
tmpfs               994512      12  994500    1% /run/user/1000

の時に、

のように表示されます。また、dfc にはいくつかオプションがあり、

% dfc -e csv
FILESYSTEM,%USED,AVAILABLE,TOTAL,MOUNTED ON
devtmpfs,0%,4.7G,4.7G,/dev
tmpfs,0%,4.7G,4.7G,/dev/shm
tmpfs,0%,1.9G,1.9G,/run
tmpfs,0%,4.0M,4.0M,/sys/fs/cgroup
/dev/sda2,45%,7.7G,14.0G,/
tmpfs,0%,4.7G,4.7G,/tmp
/dev/sda3,16%,6.9G,8.2G,/home
tmpfs,0%,971.2M,971.2M,/run/user/461
tmpfs,0%,971.2M,971.2M,/run/user/1000

というように、csv 形式で表示させることも出来ます。そのほか、html,json,tex 形式でも出力させることが出来ます。これは、出力結果を何らかの形で加工したり、そのまま表示させるようなときに便利です。
このコマンドは、df の代わりに常用して使っても良いコマンドでしょう。

パッケージ名 dhex
バージョン dhex-0.69-1.11.x86_64
動作 ◎
詳細
curses ベースで動く16進エディタ+ファイル比較ツールです。最初に起動すると、キーの定義を行います。その後、実作業に移ります。

下記の画面が、キーの定義をした後の画面です。先に定義したカーソルキーで自由にカーソルを動かすことが出来ます。カーソル位置の値は直接書き換えることが可能です。

また、2つのファイルのバイナリ比較をすることも出来ます。

dhex は ちょっとしたデータの修正や結果の比較などに使うのであれば便利に使えそうです。

パッケージ名 dhtest
バージョン dhtest-1.5-2.5.x86_64
動作 ◎
詳細
dhtest は、DHCP 要求を送ってIPアドレスを取得するためのテストプログラムです。結果を NIC に割り当てるとかはせず、単にDHCPリース操作を行わせるためだけのプログラムです。実行した例は以下の通りです。

# dhtest -i ens18 -L 180
DHCP discover sent       - Client MAC : 4a:23:a6:ba:3a:b1
DHCP offer received      - Offered IP : 192.168.3.214
DHCP request sent        - Client MAC : 4a:23:a6:ba:3a:b1
DHCP ack received        - Acquired IP: 192.168.3.214

DHCP サーバのテストをするときに覚えておくと良いかもしれません。

コメント/トラックバック