Мы можем восстановить файл, вернувшись к предыдущей версии JDK. Кажется глупым решением, но оно работает.
$ cd /var/cache/apt/archives
$ sudo dpkg -i oracle-java8-installer_8u77+8u77arm-1~webupd8~1_all.deb
Когда вы вызываете функцию, она должна быть определена и известна, когда вы вызываете function1 следующим образом:
u) function1 ;;
Интерпретатор понятия не имеет, где эта функция, потому что она еще не видел; поэтому поставьте свои функции над предложением case.
Это устранит проблему.
@kashyap (и другие). Мне непонятно, есть ли у вас достаточно ответа, чтобы исправить вашу проблему? Я немного изменил ваш код, чтобы действительно увидеть, что происходит:
function1()
{
echo "I am function 1"
}
function2()
{
echo "I am function 2"
}
opt=$1
case $opt
in
u) function1 ;;
g) function2 ;;
*) echo "Nothing to do"
exit ;;
esac
Я назвал файл dummyFunc, дал ему x-биты, и это результаты.
$ ./dummyFunc u
I am function 1
$ ./dummyFunc g
I am function 2
$ ./dummyFunc
Nothing to do
$
Я надеюсь, что это поможет dummyFunc ? [D1] Если нет, покажите нам, как выглядит ваш скрипт, и добавьте вывод, который он генерирует.
Когда вы вызываете функцию, она должна быть определена и известна, когда вы вызываете function1 следующим образом:
u) function1 ;;
Интерпретатор понятия не имеет, где эта функция, потому что она еще не видел; поэтому поставьте свои функции над предложением case.
Это устранит проблему.
@kashyap (и другие). Мне непонятно, есть ли у вас достаточно ответа, чтобы исправить вашу проблему? Я немного изменил ваш код, чтобы действительно увидеть, что происходит:
function1()
{
echo "I am function 1"
}
function2()
{
echo "I am function 2"
}
opt=$1
case $opt
in
u) function1 ;;
g) function2 ;;
*) echo "Nothing to do"
exit ;;
esac
Я назвал файл dummyFunc, дал ему x-биты, и это результаты.
$ ./dummyFunc u
I am function 1
$ ./dummyFunc g
I am function 2
$ ./dummyFunc
Nothing to do
$
Я надеюсь, что это поможет dummyFunc ? [D1] Если нет, покажите нам, как выглядит ваш скрипт, и добавьте вывод, который он генерирует.