リモートコマンドにて特定の文字を置換したい

いつもフォーラムではお世話になっています。

前に、アクションのリモートコマンドでシェルに改行項目を渡したいという内容を質問させていただきました。
 http://www.zabbix.jp/node/1532

その際に提示していただいた方法(メディアタイプに登録しメール送信設定)で実現できました。
ありがとうございました。

また、この内容に絡むのですが、
改行コードをスペースなどに置換して渡すことは可能でしょうか?

現在、考えている項目は
 トリガーコメント({TRIGGER.COMMENT})
 最新の値({ITEM.LASTVALUE})
となります。

これらの項目内に改行が存在する場合、スペースなどに置換し、1行にしたいのです。

例)
<トリガーコメント{TRIGGER.COMMENT}>
-----------------------
TH[改行]
トリガーコメント欄
--- ↓↓↓ ------------
TH トリガーコメント欄
-----------------------

すみませんが、よろしくお願いします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

リモートコマンドでは、先日も回答させて頂いた通りの動きのよう
ですので、改行を含む引数は渡せないようです。
呼び出す前の部分に置換の処理は組み込むためには、Zabbixのソー
スの変更が必要だと思われます。

こちらの場合も、メディアを利用してシェルスクリプト内で引数か
ら変数に取得する際に、ダブルクォーテーションで括ると改行が生
かされ、括らないとスペースで区切られてつなげられるという動作
を利用されてはいかがでしょうか。

 例1:
  echo "$@" >> /tmp/Shell_dbg.log

 例2:
  echo $@ >> /tmp/Shell_dbg.log

他にも、sedなどと組み合わせると柔軟な置換が行えると思います。
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231161/

ユーザー GUITU の写真

TNK様

いつもありがとうございます。

やはりZabbixのソースに手を加えないと駄目ですか。
了解しました。

メディアを使用した方法でしたら、改行付きのデータもシェルに
渡せることを確認してありますので、渡した後に置換するように
してみます。

ありがとうございました。