2014-10-30 1 views
0

Я пытаюсь написать скрипт в работе, чтобы узнать информацию об оборудовании в кластере. Я пытаюсь запустить приведенный ниже сценарий, и он бросает ошибку «Ошибка памяти». Файл node.txt содержит имена соответствующих узлов в кластере. Может ли кто-нибудь помочь? Спасибо заранее!Bash Script, чтобы найти информацию об оборудовании, дающую «Memory Fault»

#!/bin/bash 
function ping() 
    { 
     ping -c 1 "$host" >> $results 
    } 
function hw_info_cpu() 
    { 
     hwinfo --cpu "$host" >> $results 
    } 
function hw_info_gpu() 
    { 
     hwinfo --gfxcard "$host" >> $results 
    } 
function os_info() 
    { 
     lsb_release -a "$host" >> $results 
    } 

results=res.txt 

while read -r host; do 
    ping "$host $results" 
    hw_info_cpu "$host $results" 
    hw_info_gpu "$host $result" 
    os_info "$host $result" 
done < nodes.txt 

ответ

0

Функция «ping» вызывает себя рекурсивно.

Переименовать функцию «звона», как «myping»

+1

Или просто использовать 'пинги ...' внутри функции, чтобы отключить функцию поиска и заставить внешнюю команду для запуска. – chepner