Гость

Нажмите для авторизации/регистрации

  • Назад
  • Меню
  • Статьи
    • Все
    • Интернет и технологии
    • Laravel и WebDev
    • Linux, Windows, Docker, Etc
    • Новости
    • Прочее
    • Геймдев
    • Смотри как я умею
  • Информация
    • Оферта на дополнительные функции
    • Политика конфиденциальности
    • Тарифы
    • Пользовательское соглашение

30 самых частых конструкций на bash

  1. Главная
  2. Статьи
  3. Linux, Windows, Docker, Etc
  4. 30 самых частых конструкций на bash
30 самых частых конструкций на bash
  • 02/03/2023
  • Chebukin Pavel
  • 34 просмотров
  • 0 комментариев

30 самых частых конструкций на bash

Как и в случае с Terraform, Shell-скриптинг можно так же рассматривать с точки зрения построения блоками кода. Иногда это удобно, когда у вас уже есть опыт разработки на других языках программирования и все что вам нужно - посмотреть как выглядят конструкции в bash. Сам я так же часто подглядываю в подобные материалы, по этому и составил текущий список.

  1. if-then-else - условный оператор, который выполняет определенный блок кода, если условие истинно или другой блок кода, если условие ложно. Пример:

    if [ $var -eq 10 ]; then
       echo "Переменная равна 10"
    else
       echo "Переменная не равна 10"
    fi
    
    
  2. for - цикл, который выполняет определенный блок кода для каждого элемента в заданном списке. Пример:

    for i in {1..5}; do
       echo $i
    done
    
    
  3. while - цикл, который выполняет определенный блок кода, пока заданное условие истинно. Пример:

    while [ $var -lt 10 ]; do
       echo $var
       var=$(($var+1))
    done
    
    
  4. case - оператор, который позволяет проверить значение переменной на несколько возможных значений и выполнить определенный блок кода для каждого из них. Пример:

    case $var in
       1)
          echo "Переменная равна 1"
          ;;
       2)
          echo "Переменная равна 2"
          ;;
       *)
          echo "Переменная не равна ни 1, ни 2"
          ;;
    esac
    
    
  5. function - блок кода, который может быть вызван из других частей скрипта или других скриптов. Пример:

    function hello() {
       echo "Привет, мир!"
    }
    
    hello
    
    
  6. echo - команда, которая выводит заданный текст на экран. Пример:

    echo "Hello World!"
    
    
  7. read - команда, которая считывает введенные пользователем данные в переменную. Пример:

    read var
    echo "Вы ввели: $var"
    
    
  8. grep - команда, которая ищет заданное выражение в файле или выводе командной строки и выводит строки, которые содержат это выражение. Пример:

    grep "hello" file.txt
    
    
  9. sed - команда, которая используется для поиска и замены текста в файле или выводе командной строки. Пример:

    sed 's/hello/world/g' file.txt
    
    
  10. awk - утилита, которая используется для обработки текстовых файлов и вывода данных в нужном формате. Пример:

    awk '{print $1}' file.txt
    
    
  11. cut - утилита, которая используется для вырезания определенных частей строк из файла или вывода командной строки. Пример:

    cut -d "," -f 1 file.txt
    
    
  12. sort - утилита, которая сортирует строки в файле или выводе командной строки. Пример:

    sort file.txt
    
    
  13. uniq - утилита, которая удаляет дубликаты строк в файле или выводе командной строки. Пример:

    uniq file.txt
    
    
  14. tr - утилита, которая используется для замены символов в файле или выводе командной строки. Пример:

    tr 'a-z' 'A-Z' file.txt
    
    
  15. expr - утилита, которая используется для выполнения математических операций в скриптах. Пример:

    expr 10 + 5
    
    
  16. let - команда, которая используется для выполнения математических операций в скриптах. Пример:

    let var1=10 var2=5
    let result=var1+var2
    echo $result
    
    
  17. (( )) - конструкция, которая используется для выполнения математических операций в скриптах. Пример:

    var1=10
    var2=5
    result=$((var1+var2))
    echo $result
    
    
  18. [ ] [ ] - конструкция, которая используется для проверки условий в скриптах. Пример:

    if [ $var -eq 10 ]; then
       echo "Переменная равна 10"
    fi
    
    
  19. [[ ]] - конструкция, которая используется для более сложной проверки условий в скриптах. Пример:

    if [[ $var -eq 10 && $var2 -lt 5 ]]; then
       echo "Переменная равна 10 и переменная 2 меньше 5"
    fi
    
    
  20. $ - символ, который используется для обращения к значению переменной. Пример:

    echo $var
    
    
  21. ${ } - конструкция, которая используется для обращения к значению переменной с дополнительными параметрами. Пример:

    echo ${var:0:5}
    
    
  22. [email protected] - переменная, которая содержит все аргументы, переданные скрипту. Пример:

    for i in "[email protected]"; do
       echo $i
    done
    
    
  23. $# - переменная, которая содержит количество аргументов, переданных скрипту. Пример:

    echo "Количество аргументов: $#"
    
    
  24. $? - переменная, которая содержит код возврата последней выполненной команды. Пример:

    grep "hello" file.txt
    echo $?
    
    
  25. $0 - переменная, которая содержит имя скрипта. Пример:

    echo "Имя скрипта: $0"
    
    
  26. $1, $2, ... - переменные, которые содержат значения переданных аргументов. Пример:

    echo "Первый аргумент: $1"
    echo "Второй аргумент: $2"
    
    
  27. >& - оператор, который перенаправляет вывод команды в файл. Пример:

    echo "Hello World!" >& output.txt
    
    
  28. < - оператор, который используется для перенаправления ввода из файла. Пример:

    while read line; do
       echo $line
    done < file.txt
    
    
  29. | - оператор, который используется для передачи вывода одной команды в качестве ввода для другой команды. Пример:

    cat file.txt | grep "hello"
    
    
  30. & - оператор, который используется для запуска команды в фоновом режиме. Пример:

    command &
    
    

Отзывы

Пока нет комментариев


Для того чтобы оставить комментарий, авторизуйтесь.
Понравился материал? Поделись!
Инструменты мониторинга доступности сайта, сервера. Блэклист мониторинг
Ноя27
Инструменты мониторинга доступности сайта, сервера. Блэклист мониторинг

Это не рекламный пост, в нем действительно описаны два сервиса, которыми я пользуюсь и которые могу без зазрения совести рекомендовать к использованию. Так как я уже, в некоторой степени, динозавр в сети и разработке, я привык мониторить свои проекты. Будь то сайт или сервер, неважно. Не один раз я сталкивался...

  • Chebukin Pavel
  • 0
  • 27.11.2021 19:26
Самые часто используемые блоки Terraform
Мар01
Самые часто используемые блоки Terraform

Чаще изучение комплексных технологий проще начинать с небольшого количества теории и составных кирпичиков технологии. Так как теории по терраформу уже и так много вводной, в этом материале я обозначу лишь основные блоки терраформа.   Terraform - это инструмент для управления инфраструктурой в виде кода. Он позволяет описывать инфраструктуру в виде...

  • Chebukin Pavel
  • 0
  • 01.03.2023 14:25
Онлайн-логирование ошибок сайта
Ноя27
Онлайн-логирование ошибок сайта

Предисловие - нужно ли онлайн-логирование? В поисках хорошего инструментария, мы, как разработчики, проводим очень не мало времени. Одним из таких инструментов, по мере профессионального взросления стает онлайн-логирование ошибок проекта. Те кто скажут что зачем логировать, нужно проводить тесты, упускают момент что и с окружением, и с сетью, и с другими...

  • Chebukin Pavel
  • 0
  • 27.11.2021 23:43
Программы удаленного управления Windows
Дек19
Программы удаленного управления Windows

По роду деятельности мне приходится подключиться и подключать разных специалистов к рабочим станциям. И на удивление общего стандарта устраивающего всех нет. В этом материале я перечислю основные программы для подключения к Windows, которыми пользуются многие. Если вы знаете еще какие-то пишите об этом в комментариях. AnyDesk Одна из самых популярных....

  • Chebukin Pavel
  • 0
  • 19.12.2021 13:15
DockerDesktop - перемещение файла образа DockerDesktop.vhdx с системного раздела на другой
Апр19
DockerDesktop - перемещение файла образа DockerDesktop.vhdx с системного раздела на другой

Так сложилось что докер я использую наряду с виртуалбоксом в ряде проектов. Но раздел C, на котором стоит винда не такой уж большой и к тому же HDD. Это не проблема для основного софта, но образ стал занимать 27Гб и постоянные сообщения, что осталось мало места меня достали. В итоге...

  • Chebukin Pavel
  • 0
  • 19.04.2022 17:06
Windows 10, Windows 11 - поверх всех окон и другие плюшки PowerToys
Апр29
Windows 10, Windows 11 - поверх всех окон и другие плюшки PowerToys

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

  • Chebukin Pavel
  • 0
  • 29.04.2022 17:49

Copyright 2023 © All rights reserved.

Мы в: