Как сохранить команду в переменной в сценария Bash

Linux позволяет автоматизировать задачи с помощью команд оболочки и скриптов. Обычно мы храним числа или строки в переменных shell и скриптах. Но иногда вам может понадобиться сохранить определенную команду в переменной Bash. В этой статье мы узнаем, как сохранить команду в переменной в сценарии shell.

Как сохранить команду в переменной в сценарии Shell

Вот типичный синтаксис для хранения значения в переменной в shell.

После того, как значение сохранено в переменной, вы можете ссылаться на него, добавляя к переменной префикс $.

Допустим, вы хотите сохранить в переменной shell следующую команду.

Если вы хотите сохранить приведенную выше команду в shell-переменной x, вам нужно сделать это, как показано ниже.

Обратите внимание, что команду нужно заключить в кавычки, как строку. Эту строку нужно присвоить переменной shell.

Если вы хотите выполнить команду, хранящуюся в переменной, вы можете сделать это с помощью команды eval.

На некоторых системах вы можете выполнить приведенную выше функцию eval, даже не заключая переменную оболочки $x в кавычки.

Если вы хотите присвоить значение x другой переменной y, вы можете легко сделать это так же, как вы присваиваете любую переменную оболочки другой.

Теперь, если вы выполните команду eval для новой переменной, вы увидите тот же результат.

Но, пожалуйста, обратите внимание, используйте функцию eval только в том случае, если в вашей команде нет переменных shell, или вы абсолютно доверяете команде, иначе вы позволите другим внедрить переменные в ваш скрипт. Например, если вы сохраните следующую команду в своем shell-скрипте, то вредоносные пользователи и программы смогут изменить значение shell-переменной $x, просто изменив значение $name.

Заключение

В этой небольшой статье мы узнали, как сохранить команду в переменной в сценарии оболочки. Вы можете настроить его в соответствии с вашими требованиями.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий