Обертка сценария оболочки для предотвращения рабочей команды без аргументов?

pdsh использует rsh по умолчанию, не ssh. Rsh, rlogin и rcmd “r сервисы”; они удерживаются от использования, и Ваша система справедливо не имеет их в наличии. Ssh является современной альтернативой r сервисам; это предпочтено, потому что это шифрует и аутентифицирует соединения (и также потому что это более гибко, чем старые, изворотливые команды r). Скажите pdsh использовать ssh:

pdsh -R ssh …

или набор PDSH_RCMD_TYPE переменная среды к ssh:

export PDSH_RCMD_TYPE=ssh
pdsh …

4
13.11.2014, 01:01
2 ответа

Вы можете проверить специальную переменную $ # :

if [ $# -eq 0 ]; then
  echo "No arguments provided!"
  exit 1
fi
/usr/bin/xyz "$@"

Затем добавьте псевдоним на ваш ~ / .bashrc ;

alias xyz="/path/to/script.sh"

Теперь, когда вы запускаете XYZ , псевдоним будет запущена вместо этого. Это позвонит скрипту, который проверяет, есть ли у вас какие-либо аргументы и запускаете только настоящие XYZ , если вы. Очевидно, изменить / usr / bin / xyz к тому, что полный путь команды.

10
27.01.2020, 20:48

В большинстве случаев кадр может быть

if [ "$1" ]
then
  /usr/bin/xyz "$@"
else
  echo "Errormessage"
fi 
0
27.01.2020, 20:48

Теги

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