The UNIX and Linux Forums  

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > シェルプログラミングとスクリプティング
Googleのunix.com



シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
文字列から最初と最後の文字/コードを引っ張り。 LinuxRacr シェルプログラミングとスクリプティング 3 2008年6月16日 10:08午後
UNIXからLinuxへのスクリプトを引く pjconfig UNIXのダミー質問と回答のため 3 2005年12月21日 06:10午後
kshでのファイルから列を引く dangral シェルプログラミングとスクリプティング 8 2003年1月13日 04:10午後
ファイルからの次の行を引く peter.herlihy UNIXのダミー質問と回答のため 4 2002年8月29日 10:09午後
ファイルからのフィールドを抜く サス UNIXの詳細&エキスパートのためのユーザー 2 2001年9月30日 04:31午後

Reply
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2009年7月3日
MrKen MrKen is offline
登録ユーザー
  
 

参加日: 2009年7月
投稿: 5
Mapfileから引っ張り正しい値

こんにちはすべて、

私はMapfileから1つの値を引くが、午前試み、その結果は、私はすべての値を取得午前です。我々のネットワーク監視サーバのホスト名には、バックアップサーバからのMapfileマップは、ホスト名は、ここに表示:

Mapfile

コード:
cat zabbixhosts 
Helpdesk-fd:Server_Helpdesk
Knowledge-fd:Server_Knowledge
BaculaServer-fd:Server_Bacula
Zabbix-fd:Server_Zabbix_1.4.2


が失敗しているスクリプトのセクションはここです:

コード:
client=$(tail -n 38 /var/lib/bacula/log | grep -m 1 -F "Client" | awk -F" " '{ print $2; }')
echo Client is $client
echo

# get hostname from the Hostsfile
ZABBIX_HOST=`grep "[$client]" $ZABBIX_HOSTSFILE`

if [ $? -eq 0 ]; then
        hostname=`echo "$ZABBIX_HOST" | cut -f2 -d:`
else
        hostname=""
fi
echo Hostname is $hostname

私は、スクリプトを実行するときの出力は以下の通り:


コード:
./bacula2zabbix.sh 
Client is "BaculaServer-fd"

Hostname is Server_Helpdesk Server_Knowledge Server_Bacula Server_Zabbix_1.4.2


任意のアドバイスも大歓迎だろう。
ありがとう。

編集MrKenで最終; 2009年7月3日に 03:16午前..理由:バートカット、ペーストÑ
  #2固定リンク)  
Old 2009年7月3日
prasperl prasperl is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿: 22
あなたのホストのファイル名の初期化になりましたか?

私は、同じコードsnippet.The結果試行される

クライアント" BaculaServer - fd "

ホスト名ですServer_Bacula

マップのZABBIX_HOSTSFILE \u003d "パスファイル"
私は2つの変更:

1.Initialized ZABBIX_HOSTSFILEファイル名をマップするには


2.Removed [ ]
はgrep "[$クライアント]" $ ZABBIX_HOSTSFILE
はgrep " $クライアント" $ ZABBIX_HOSTSFILE
  #3固定リンク)  
Old 2009年7月3日
MrKen MrKen is offline
登録ユーザー
  
 

参加日: 2009年7月
投稿: 5
迅速な返事をいただきありがとうございます。

ときに' 'は、ホストのファイル名を初期化するという、私はあなた私はこの意味を推測している:

ZABBIX_HOSTSFILE \u003d "は/ etc / baculumの複数形/ zabbixhosts " ;

はい、私は既にしている。その理由は、最初の投稿で出力するための結果だよ。

ときは、 [削除]の提案は、出力する:


コード:
Client is "BaculaServer-fd"

Hostname is

これ以上のアイデアですか?
  #4固定リンク)  
Old 2009年7月3日
reddybs reddybs is offline
登録ユーザー
  
 

参加日: 2009年1月
場所:シハリコタ- APのインド
投稿: 53

コード:
hostname=`grep $client zabbixhosts | cut -f2 -d:`

私が試したところ、 Linuxマシンでのシナリオをシミュレートします。あなたのクライアント変数が含まれて<BaculaServer-fdと仮定すると> 。
成功している場合はgrepと失敗した場合にはない値を含む上記のコードから、変数Server_Baculaホスト名を含んでいます。このような何か....


コード:
$ cat zabbixhosts
Helpdesk-fd:Server_Helpdesk
Knowledge-fd:Server_Knowledge
BaculaServer-fd:Server_Bacula
Zabbix-fd:Server_Zabbix_1.4.2
 
$ echo $client
sai
 
$  hostname=`grep $client zabbixhosts | cut -f2 -d:` ; echo $hostname
 
$ client="BaculaServer-fd"
 
$ hostname=`grep $client zabbixhosts | cut -f2 -d:` ; echo $hostname
Server_Bacula
 
$ hostname=`grep -w $client zabbixhosts | cut -f2 -d:`; echo $hostname
Server_Bacula

  #5固定リンク)  
Old 2009年7月3日
MrKen MrKen is offline
登録ユーザー
  
 

参加日: 2009年7月
投稿: 5
reddybs 、ご返信いただきありがとうございます。

もし私"を変える[ $クライアント] " $ 〜クライアント、その後私はホスト名を出力する。
使用する場合はgrepワットとし、私はホスト名を出力する。

そこで今、私は、まだ出力が間違っていますしています。

コード:
echo Client is $client
echo

# get hostname from the Hostsfile
hostname=`grep "[$client]" $ZABBIX_HOSTSFILE | cut -f2 -d:` ; echo $hostname

と出力:

コード:
Client is "BaculaServer-fd"

Server_Helpdesk Server_Knowledge Server_Bacula Server_Zabbix_1.4.2

これ以上のアイデアですか?
Reply

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 10:25午後


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0