Unix linux операциялы ж йе

Операторы объединения команд в Linux & | ; && ! || &&-|| \ ()

Цепочка команд Linux означает объединение нескольких команд и выполнение их на основе оператора, используемого между ними. Цепочка команд в Linux — это то, когда вы пишете короткие скрипты оболочки в самой оболочке и выполняете их непосредственно из терминала. Цепочка позволяет автоматизировать процесс. Более того, необслуживаемая машина может функционировать более систематически с помощью операторов цепочки.

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

1. Оператор амперсанда (&)

Функция ‘&‘ — заставит команду работать в фоновом режиме. Просто введите команду с пробелом и ‘&‘. Вы можете выполнить более одной команды в фоновом режиме за один раз.

Запустите одну команду в фоновом режиме:

Запустите две команды в фоновом режиме одновременно:

# sudo apt update & sudo apt upgrade &

2. Оператор точка с запятой (;)

Оператор точка с запятой позволяет запускать несколько команд за один раз, и выполнение команды происходит последовательно.

# sudo apt update ; sudo apt upgrade ; mkdir test

Приведенная выше комбинация команд сначала выполнит обновление репозитория, затем обновит систему и, наконец, создаст каталог «test» в текущей рабочей директории.

3. Оператор AND (&&)

Оператор AND (&&) будет выполнять вторую команду только в том случае, если при выполнении первой команды SUCCEEDS, т.е. состояние выхода первой команды равно «0» — программа выполнена успешно. Эта команда очень полезна при проверке состояния выполнения последней команды.

Например, я хочу посетить сайт sedicomm.com с помощью команды links в терминале, но перед этим мне нужно проверить, является ли хост доступным или нет.

# ping -c3 www.sedicomm.com && links www.sedicomm.com

4. Оператор OR (||)

Оператор OR (||) очень похож на оператор «else» в программировании. Вышеуказанный оператор позволяет вам выполнять вторую команду только в случае сбоя при выполнении первой команды, то есть состояние выхода первой команды равно «1» — программа выполнена НЕ успешно».

Например, я хочу выполнить «apt-get update» из учетной записи без полномочий root, и если первая команда не будет выполнена, тогда будет выполнена вторая команда «links www.sedicomm.com».

# sudo apt update || links sedicomm.com

В приведенной выше команде, поскольку пользователю не было разрешено обновить систему, это означает, что состояние выхода первой команды равно «1» и, следовательно, выполняется последняя команда «links sedicomm.com».

Читайте также:  Mercusys n150 driver linux

Что, если первая команда выполнена успешно, со статусом выхода «0«? Очевидно! Вторая команда не будет выполнена.

# mkdir test || links sedicomm.com

Здесь пользователь создает папку «test» в своем домашнем каталоге, где ему это разрешено. Команда выполнена успешно, что дает статус выхода «0«, и, следовательно, последняя часть команды не выполняется.

5. Оператор NOT (!)

Оператор NOT (!) очень похож на оператор «кроме«. Эта команда выполнит все, кроме предоставленного условия. Чтобы понять как это работает, создайте каталог «sedicomm» в вашем домашнем каталоге и перейдите к нему с помощью команды «cd«.

# mkdir sedicomm cd sedicomm

Затем создайте несколько типов файлов в папке «sedicomm».

# touch a.doc b.doc a.pdf b.pdf a.xml b.xml a.html b.html

Смотрите, мы создали все новые файлы в папке «sedicomm».

# ls a.doc a.html a.pdf a.xml a.doc b.html b.pdf b.xml

Теперь удалите все файлы, за исключением файла «html»одновременно, умным способом.

Просто чтобы проверить, последнее исполнение. Перечислите все доступные файлы с помощью команды ls.

6. Оператор AND-OR (&& — ||)

Вышеуказанный оператор фактически является комбинацией оператора «AND» и «OR». Это очень похоже на утверждение «если-еще».

Например, давайте сделаем ping на obu4alka.ru, если успешно то выведем на экран ‘Verified‘, если ping не успешный, то выведен на экран ‘Host Down‘.

# ping -c3 www.obu4alka.ru && echo"Verified" || echo"Host Down"
Пример вывода
--- www.obu4alka.ru ping statistics --- 3 packets transmitted, 2 received, 33% packet loss, time 2031ms rtt min/avg/max/mdev = 15.904/15.951/15.998/0.047 ms Verified

Теперь отключите интернет-соединение и повторите ту же команду.

# ping -c3 www.obu4alka.ru && echo "Verified" || echo "Host Down"
Пример вывода
ping: unknown host www.obu4alka.ru Host Down

7. Оператор потока PIPE (|)

Этот оператор потока PIPE очень полезен, когда выходные данные первой команды действуют как входные данные для второй команды. Например, направьте вывод команды «ls -l» на «less» и посмотрите вывод всего скрипта.

8. Оператор комбинации команд <>

Объедините две или более команд, вторая команда зависит от выполнения первой команды.

Например, проверьте, доступен ли каталог «bin», и выведите соответствующий вывод.

[ -d"bin" ] || < echo Directory does not exist, creating directory now.; mkdir bin; >&& echo Directory exists.

9. Оператор приоритета ()

Оператор позволяет выполнить команду в порядке приоритета.

# Command_x1 && Command_x2 || Command_x3 && Command_x4

В приведенной выше псевдокоманде, что если Command_x1 завершится неудачно? Ни один из Command_x2, Command_x3, Command_x4 не будет выполнен, для этого мы используем оператор приоритета вот так:

# (Command_x1 &&Command_x2) || (Command_x3 && Command_x4)

В вышеприведенном скрипте, если Command_x1 завершается ошибкой, Command_x2 также завершается ошибкой, но все же выполнение Command_x3 и Command_x4 зависит от состояния выхода Command_x3.

10. Оператор конкатенации (\)

Оператор конкатенации (\), как указывает имя, используется для объединения больших команд в нескольких строках оболочки. Например, команда ниже откроет текстовый файл test(1) .txt.

Источник

Операторы Linux — Полное руководство для самых популярных операторов Linux

Одна из наиболее широко используемых и рекомендуемых компьютерных операционных систем для целей разработки «Linux» поставляется с широким диапазоном команд выполнения. Эти команды являются однострочными инструкциями, выполняемыми на Терминале. Существует широкий спектр этих команд, выделенных для конкретного использования. Эти команды выполняются в Linux CLI (интерфейс командной строки). В этой теме мы собираемся узнать об операторах Linux.

Читайте также:  Good linux desktop environments

Если вы новичок в Linux CLI и не имеете представления об этих операторах или о том, как их использовать, просто откройте терминал и запустите команду «help», которая выведет список встроенных команд Linux Shell с синтаксисом.

Одним из таких мощных операторов является ‘&&’ (двойной амперсанд), который является типом цепной команды и при использовании выполняет вторую встроенную команду после успешного выполнения первой команды.

Пример: «apt-get update && apt-get upgrade», после чего при успешном выполнении команды обновления выполняется команда «Обновить».

Давайте погрузимся в мир безлимитных операторов Linux. Начнем с того, что Linux, как и любой другой язык программирования, имеет базовый набор операторов.

Ниже приводится основная классификация или операторы:

  • Арифметические операторы: используются для выполнения математических операций.
  • Операторы отношений: просто определяет отношение между двумя операндами.
  • Булевы операторы: также известные как логические операторы, они используются для выполнения логических операций.
  • Побитовые операторы: «&, |, <>», используемые для простых побитовых операций.
  • Операторы проверки файлов: воспроизводит свойства файла.

Список операторов Linux

Это несколько категорий для операторов. Помимо этого, Linux предлагает широкий спектр команд. Эти операторы в основном выполняются на Bourne Shell. Bourne Shell — это оригинальная UNIX-программа для выполнения команд, разработанная в AT & T Стивеном Борном и получившая название. Теперь давайте разберемся с каждым из этих операторов в примерах. Для дальнейших примеров мы примем две переменные X и Y со значениями 5 и 10.

1. Арифметические операторы

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

У нас есть 7 арифметических операторов следующим образом:

  • Добавление (+): просто добавляет значения двух данных переменных. Ex. X + Y приведет к 15.
  • Вычитание (-): вычитает значение одной переменной из другой. Ex. Y — X приведет к 5.
  • Деление (/): делит две переменные. Ex. X / Y даст нам 0, 5.
  • Умножение (*): Умножает две переменные. Ex. X * Y приведет к 50.
  • Оператор приращения (++): просто добавляет единицу к значению. Оператор приращения работает двумя способами: в качестве префикса и постфикса, и в зависимости от позиции оператора результаты могут отличаться.
  • Для префикса: с оператором перед переменной, Y ++, он вернет значение до увеличения, например. Y ++ = 5
  • Для Postfix: с переменной перед оператором ++ Y он вернет увеличенное значение, например. ++ Y = 6.
  • Оператор декремента (-): аналогичен инкременту, за исключением того, что удаляет одно значение. Работает двумя способами.
  • Для префикса: сначала задается значение Y, затем выполняется операция уменьшения, напр. Y — приведет к 5.
  • Для Postfix: сначала уменьшает значение на единицу, а затем дает результат, например. –Y вернется 4.

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

2. Операторы отношений

Просто возвращает «истина или ложь», в зависимости от отношения между переменными и поддерживается Bourne Shell.

Ниже представлено 6 типов реляционных операторов:

  • Равно (==): сравнивает две переменные и возвращает true, если они равны, и false, если иначе. Ex. X == Y приведет к ложному.
  • Не равно (! =): Аналогично равно, за исключением того, что возвращает значение true, если значения не совпадают, и значение false, если иное. Ex. X! = Y вернет истину.
  • Меньше чем ( <):если левое значение меньше правого, оно возвращает true, иначе false. Ex. X
  • Больше (>): возвращает true, если левое значение больше правого, иначе false. Ex. X> Y вернет false.
  • Меньше или равно ( <=):true, если левое значение меньше или равно правому значению.
  • Больше или равно (> =): true, если левое значение больше или равно правому значению.

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

3. Булевы операторы

Полностью поддерживаемые в Bourne Shell, булевы операторы используются в комбинации для улучшения результатов поиска. И, ИЛИ и НЕ являются логическими операторами, и использование результатов этих операторов экономит время.

  • И: сузить поиск. Ex. Тестовые оценки и итоговые оценки.
  • ИЛИ: расширить поиск. Ex. Бесплатные курсы ИЛИ под Rs.499.
  • НЕ: исключить ключевое слово (а). Ex. Последние дополнения НЕ выше 499 рупий.

4. Битовые операторы

Несколько похоже на логические операторы, за исключением того, что битовые операторы работают на более низком уровне при двоичном представлении данных. Здесь обе переменные (правое и левое значение) должны быть целочисленными.

Ниже приведены 6 побитовых операторов.

  • И (&): сравнение между двумя битами. Возвращает 1, если оба бита равны 1, иначе 0.
  • ИЛИ (|): сравнивает два бита и возвращает 1, если биты дополняют друг друга, иначе 0.
  • XOR (^): EXCLUSIVE-OR, аналогично вышеприведенным операторам, сравнивает оба бита и возвращает 1, если любой из битов равен 1. Иначе он дает 0, если оба бита равны 0 или 1.
  • Комплимент (~):
  • Сдвиг влево ( <<):просто сдвигает биты вправо, а слева назначается 0.
  • Сдвиг вправо (>>): точно так же, как SHIFT RIGHT, но наоборот. Он перемещает биты влево и присваивает 0 справа.

Битовые операторы используются для изменения отдельного бита. Операторы проверки файлов так же просты, как и операторы, для проверки свойств файла или разрешений, таких как чтение, запись и выполнение. Эти операторы используются вместе с предложением IF.

Следует отметить: вы могли столкнуться с тем, что пароли не отображаются на терминале при вводе. Чтобы было ясно, это не проблема, а хорошая точка безопасности. Когда вы вводите пароль, он остается в темноте, но Linux сохраняет каждое нажатие.

Вывод

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

Рекомендуемые статьи

Это руководство для операторов Linux. Здесь мы обсуждаем список операторов Linux, которые в основном выполняются в оболочке Bourne. Вы также можете посмотреть на следующую статью.

  1. Ведение журнала системы Linux
  2. Linux File System
  3. Типы оболочек в Linux
  4. Дистрибутивы Linux

Источник

Оцените статью
Adblock
detector