Как вернуть строку из функций Bash

How Return String From Bash Functions



Функции Bash не могут возвращать значения, как другие стандартные языки программирования. Функции Bash поддерживают оператор return, но он использует другой синтаксис для чтения возвращаемого значения. Вы можете получить значение из функций bash по-разному. В этом руководстве вы узнаете, как передать строковые данные из функции bash вызывающей стороне, используя различные типы синтаксиса bash. Откройте текстовый редактор, чтобы проверить следующие примеры функций bash, чтобы понять, как строковые или числовые значения могут быть возвращены из функций bash.

Пример-1: Использование глобальной переменной

Функция Bash может возвращать строковое значение с помощью глобальной переменной. В следующем примере глобальная переменная ‘ retval ’ используется. Строковое значение назначается и печатается в этой глобальной переменной до и после вызова функции. Значение глобальной переменной будет изменено после вызова функции. Это способ возврата строкового значения из функции bash.







функцияF1()
{
Retvalзнак равно'Я люблю программировать'
}

Retvalзнак равно'Ненавижу программирование'
выбросил $ retval
F1
выбросил $ retval

Создайте файл bash с именем func1.sh с приведенным выше кодом и запустите скрипт из терминала. Здесь вывод ' Мне нравится программировать ’Присваивается и печатается после вызова функции.





Пример-2: Использование функциональной команды

Вы можете получить возвращаемое значение функции bash и сохранить его в переменной во время вызова. В следующем примере локальная переменная, Retval используется, а значение локальной переменной возвращается функцией F2 присваивается в глобальной переменной, Getval который печатается позже.





функцияF2()
{
местный Retvalзнак равно'Использование функции BASH'
выбросил '$ retval'
}

Getval= $(F2)
выбросил $ getval

Создайте сценарий bash с именем func2.sh с приведенным выше кодом и запустите скрипт.




Пример-3: Использование переменной

В следующем примере возвращаемое значение функции устанавливается на основе переменной аргумента функции. Здесь значение передается в функцию F3 с использованием переменной аргумента getval1 во время вызова функции. После проверки условного оператора возвращаемое значение присваивается и печатается.

функцияF3()
{
местный arg1знак равно1 доллар

если [[ $ arg1 !знак равно'' ]];
тогда
Retvalзнак равно'Функция BASH с переменной'
еще
выбросил «Нет аргументов»
быть
}

getval1знак равно'Функция Bash'
F3$ getval1
выбросил $ retval
getval2= $(F3)
выбросил $ getval2

Создайте сценарий bash с именем func3.sh с приведенным выше кодом и запустите его.

Пример-4: Использование оператора возврата

Большинство стандартных языков программирования используют оператор return для возврата значения из функции. Значения функции возвращаются без использования оператора возврата в приведенных выше примерах. В следующем примере оператор return используется для возврата числового значения из функции F4 . Здесь, $? используется для чтения значения 35, которое возвращается функцией с использованием возвращение утверждение.

функцияF4() {
выбросил 'Заявление о возврате Bash'
возвращение 35 год
}

F4
выбросил 'Возвращаемое значение функции - $?'

Создайте сценарий bash с именем func4.sh с приведенным выше кодом и запустите скрипт.

Вы можете использовать функции bash по-разному, чтобы вернуть любое строковое или числовое значение после вызова функции. Для получения дополнительной информации смотрите видео !