![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| Tirer le premier et le dernier caractère et le nombre à partir d'une chaîne. | LinuxRacr | De programmation et de script Shell | 3 | 06-16-2008 10:08 PM |
| tirant des scripts d'Unix à Linux | pjconfig | UNIX pour les nuls Questions et réponses | 3 | 12-21-2005 06:10 PM |
| tirant sur une colonne à partir d'un fichier en ksh | dangral | De programmation et de script Shell | 8 | 01-13-2003 04:10 PM |
| tirant sur la ligne suivante à partir d'un fichier | peter.herlihy | UNIX pour les nuls Questions et réponses | 4 | 08-29-2002 10:09 PM |
| Retirer les champs d'un fichier | Saz | UNIX for Advanced & Expert Users | 2 | 09-30-2001 04:31 PM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Pulling valeur correcte de Mapfile
Salut à tous,
Je suis en train de tirer une valeur à partir d'un Mapfile, mais le résultat est que je reçois toutes les valeurs. Les cartes Mapfile le nom d'hôte du serveur de sauvegarde pour le nom d'hôte dans notre réseau de surveillance du serveur, comme illustré ici: Mapfile Code:
cat zabbixhosts Helpdesk-fd:Server_Helpdesk Knowledge-fd:Server_Knowledge BaculaServer-fd:Server_Bacula Zabbix-fd:Server_Zabbix_1.4.2 La section de script qui est défaut est ici: Code:
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
Code:
./bacula2zabbix.sh Client is "BaculaServer-fd" Hostname is Server_Helpdesk Server_Knowledge Server_Bacula Server_Zabbix_1.4.2 Tout conseil serait grandement appréciée. Merci. Dernière édition par MrKen; au 07.03.2009 03:16 AM.. Motif: Bad couper coller n |
|
||||
|
Avez-vous d'initialiser le nom du fichier d'accueil?
J'ai essayé le même code snippet.The résultat est
Le client est "BaculaServer-fd" Nom de l'hôte est Server_Bacula ZABBIX_HOSTSFILE \u003d "chemin de fichier de carte" J'ai fait deux changements: 1.Initialized ZABBIX_HOSTSFILE à la carte le nom du fichier 2.Removed [] grep "[$ client]"$ ZABBIX_HOSTSFILE grep "$ client" $ ZABBIX_HOSTSFILE |
|
||||
|
Merci pour la réponse rapide.
Quand vous dites "initialiser" le pays hôte le nom du fichier, je suppose que tu dois-je dire ceci: ZABBIX_HOSTSFILE \u003d "/ etc / Bacula / zabbixhosts"; Oui, j'ai déjà. C'est la raison pour laquelle il ya un résultat à la sortie dans le premier message. Quand je enlever les [] comme l'a suggéré, la sortie est maintenant: Code:
Client is "BaculaServer-fd" Hostname is |
|
||||
|
Code:
hostname=`grep $client zabbixhosts | cut -f2 -d:` Depuis le code ci-dessus, la variable hostname contient Server_Bacula si grep est couronnée de succès et ne contiennent pas de valeur si elle échoue. Quelque chose comme ça .... Code:
$ 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 |
|
||||
|
reddybs, merci pour votre réponse.
Si je change "[$ client]" à $ client, puis-je obtenir aucune hostname sortie. Si je utiliser avec grep-w, je n'obtiens pas de sortie d'hôte. Alors maintenant, je l'ai, mais la sortie est toujours incorrecte. Code:
echo Client is $client echo # get hostname from the Hostsfile hostname=`grep "[$client]" $ZABBIX_HOSTSFILE | cut -f2 -d:` ; echo $hostname Code:
Client is "BaculaServer-fd" Server_Helpdesk Server_Knowledge Server_Bacula Server_Zabbix_1.4.2 |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|