Что такое переменные Bash и как их использовать?

Как использовать избранные переменные Bash

Bash позволяет отображать целые строки текста в отдельные переменные, упрощая его использование и написание скриптов. Как они работают и как их использовать? Давай выясним.

Что такое переменная?

Переменные - это легко запоминающиеся имена, которые могут содержать разные буквенно-цифровые значения. Они полезны, потому что позволяют применять одну и ту же функцию к разным значениям без необходимости переписывать скрипт / фрагмент кода. Они также упрощают написание сценария / фрагмента кода, поскольку вместо работы с отдельными значениями вы можете использовать одно и то же имя для всех из них.

Переменные в реальном времени

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

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

Как использовать переменные реального времени Bash Variables

После этого, если вы захотите посетить наш сайт с помощью Firefox, вы можете просто ввести:

Как использовать переменные Bash Открыть переменную в Firefox

Намного проще - и читабельнее. Переменная $ sitea останется сопоставленной с сайтом, пока вы не измените ее содержимое вручную или не завершится сеанс Bash. И, конечно же, вы можете создать больше переменных, например siteb, sitec и sited.

При настройке новых переменных вы можете использовать любые имена по своему усмотрению и хранить в них любые буквенно-цифровые строки. Однако имейте в виду, что они по умолчанию чувствительны к регистру. Таким образом, $ sitea не будет таким же, как $ SiteA. Также обратите внимание, что вы должны использовать кавычки при сохранении строк со специальными символами внутри них (включая пробелы).

Переменные в скриптах

Переменные в Bash более полезны при написании сценариев, поскольку они позволяют вам написать один сценарий, который затем может перебирать разные строки или воздействовать на настраиваемые фрагменты данных. Допустим, вы пишете сценарий, который каждый может использовать на своем компьютере, но каждый раз будет отображать индивидуальное приветствие. Без переменных вам пришлось бы писать разные версии скрипта для каждого пользователя. С переменными вы сохраняете тот же сценарий и меняете только имя пользователя.

Такой сценарий выглядел бы примерно так:

Как использовать переменные Bash в простом скрипте

Приведенный выше пример может показаться излишним; однако по мере увеличения сложности кода переменные становятся незаменимыми. Скрипт может состоять из сотен или тысяч строк и содержать имя пользователя в разных местах. Чтобы лучше понять это, рассмотрим следующий несколько иной сценарий:

Как использовать повторяющиеся экземпляры переменных Bash

Вышеупомянутый сценарий будет использовать имя, определенное как переменная username, для завершения текста. Если вы используете настоящее имя пользователя, вам придется ввести его четыре раза. Затем сделайте то же самое для следующего пользователя и еще четыре раза для следующего. Снова и снова. Назначив его переменной, вам нужно изменить его только один раз для каждого пользователя, и каждое упоминание имени пользователя в тексте будет обновлено.

Постоянные переменные и псевдонимы Bash

Мы видели, как вы можете временно устанавливать переменные и как, для чего-то более постоянного, вы можете включать их в свои собственные скрипты. Но разве нельзя постоянно устанавливать переменные в Bash? Ответ - большое "ага!" и вам нужно отредактировать только один файл: "~ / .bashrc".

Откройте файл "~ / .bashrc" в вашем любимом текстовом редакторе. Поскольку я предпочитаю нано, я сделал это с помощью:

Как использовать переменные Bash Open Bashrc

Мы предлагаем вам начать с пробного запуска, добавив только одну переменную, чтобы вы знали, где искать, если процесс не сработает. Переместитесь в конец файла и в новой строке добавьте свою переменную. Например, я установил переменную для своего имени как:

Как использовать переменные Bash Bashrc с новой переменной

Сохраните файл и выйдите из редактора. Изменения вступят в силу не сразу. Введите в свой терминал следующее, чтобы оно вступило в силу:

Теперь вы можете использовать вновь установленную переменную в сеансе Bash:

Вы можете установить столько переменных, сколько захотите, и значительно упростить свои ежедневные приключения в Bash.

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

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

В заключение, даже если вы установили переменную в .bashrc навсегда, вы можете временно переназначить ей другое значение, как мы видели ранее. Переменная будет представлять новое содержимое до завершения текущего сеанса Bash (после выхода из системы или перезапуска) или до тех пор, пока вы не повторно загрузите файл. bashrc.

По теме: