Как устранить ошибку bash "синтаксическая ошибка в строке 3: 'CYBER_UNAME=$' непредвиденный"?

Эта ошибка возникает, когда я запускаю программное обеспечение, содержащее скрипт bash, с чего-то вроде этого:

#! /bin/sh 

CYBER_UNAME=$(uname)
CYBER_UNAME_M=$(uname -m)

Я попытался выполнить эти две команды в терминале, и он работает нормально. Эта ошибка возникает только при запуске сценария оболочки. Что я должен делать?

Результат "uname" - SunOS. Этот сценарий оболочки нельзя изменить, поскольку он защищен на нашем сервере.

1 ответ

Линия

#! /bin/sh

должен прочесть:

#!/bin/bash

Таким образом, этот сценарий, вероятно, никогда не будет работать.

Если вы не можете изменить сценарий на месте, вы можете скопировать его в локальный каталог и исправить его.

Иначе,

tail +2 scriptname|/bin/bash 

может работать.

Другие вопросы по тегам