синтаксическая ошибка около неожиданного маркера 'затем'

Замедление удаления может произойти из-за того, что MSI-un-installer не может удалить файлы под %windir%winsxs'. Однако вручную не удаляйте вещи из %windir %\WinSxS. Одно решение могло бы удалять все Платформы.NET и все связанные с SQL приложения, возможно моясь с утилитой очистки установщика Windows. Затем переустанавливая Платформы.NET и наконец переустанавливая SQL Server.

0
задан 27 July 2012 в 22:12
2 ответа

Почему xargs ? Мне пришлось поискать его в спецификации POSIX, чтобы напомнить, что по умолчанию используется echo , но я редко вижу, чтобы он использовался таким образом. На странице руководства Gnu об этом даже не упоминается.

44  CURDUPLEX=`ethtool $IFACE|grep "Duplex" ...`
45  CURSPEED=`ethtool $IFACE|grep "Speed" ...`

Двойной вызов ethtool ставит под сомнение производительность Nagios.

Попробуйте что-нибудь вроде:

toolsays=$( ethttool $IFACE )
CURDUPLEX=$( echo "$toolsays" | grep Duplex ... )
CURSPEED=$( echo "$toolsays" | grep Speed ... )

Затем исходный сценарий сокращает последние четыре символов от скорости, но в дальнейшем код все равно будет принимать "Мб / с". Сделайте это предположение явным, чтобы сценарий завершился ошибкой при обнаружении хоста, на котором ethtool не сообщает скорость в Мб / с.

Вы можете пойти дальше и заменить две функции конвейера, например:

function duplex_state { typeset toolsaid=$1 s=
    : ${toolsaid:?}
    s=${toolsaid##*Duplex: }
    echo ${s%%$'\n'*}
}
function speed_value { typeset toolsaid=$1 s=
    : ${toolsaid:?}
    s=${toolsaid##*Speed: }
    echo ${s%%Mb/s*}
}

А вот как вы их называете:

0
ответ дан 4 December 2019 в 14:25

Поскольку вы пишете для bash, вам действительно следует использовать [[, а не [, для тестов. О, и ИСПОЛЬЗУЙТЕ БОЛЬШЕ ЦИТАТОВ!

Вот несколько руководств и статей часто задаваемых вопросов, чтобы вы начали улучшать скрипт:

Почему `` плохо

Использование цитат

Общие методы

2
ответ дан 4 December 2019 в 14:25

Теги

Похожие вопросы