Компьютерные сети и технологии
Привет
Пользователь:

Пароль:



[ ]
[ ]

В сети
Гостей: 9
Участников: 0
На странице: 1
Участников: 3949, Новичок: Lelandabisp

Разное


(Занятие 8) Shell - интерпретатор командного языка
Операционная система UNIX (руководство пользователя)
на Wednesday 02 August 2006
от список авторов отправить по email статья печатать статья
в Сетевые Операционные Системы ОС > Linux - Unix



8.2. Специальные символы

shell имеет также и другие символы, которые выполняют различные полезные функции.

8.2.1. Запуск команды в фоновом режиме (символ &)

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

    command &<CR>

Примечание. Интерактивные команды shell (например, read) нельзя запускать в фоновом режиме.

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

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

8.2.2. Последовательное выполнение команд (символ ;)

В одной командной строке вы можете указать несколько команд. Эти команды должны быть разделены символом ; (точка с запятой) или символом & (амперсанд):

    command1; command2; command3<CR>

Система UNIX выполняет команды в том порядке, в котором они стоят в командной строке, и печатает вывод этих команд в том же порядке. Этот процесс называется последовательным выполнением.

Например, введите:

    cd; pwd; ls<CR>

shell выполнит эти команды последовательно:

  • cd изменит ваше местоположение, переместив вас в регистрационный справочник;
  • pwd распечатает полное имя пути вашего текущего справочника;
  • ls перечислит файлы в вашем текущем справочнике.


8.2.3. Отмена специального значения (метасимвол \)

Символ \ позволяет вам отменить специальное значение следующего за ним символа. Например, у вас есть файл trail, который содержит следующий текст:

        The all * game
        was held in Summit.

Чтобы найти символ звездочка (*) в файле, воспользуйтесь командой grep:

        $ grep \* trail<CR>

        The all * game
        $

команда grep найдет символ * в тексте и отобразит строку, в которой она появилась. Без символа \, символ звездочка будет интерпретироваться shell как метасимвол.

8.2.4. Отмена специального значения (метасимвол кавычки)

Отменить специальное значение символа вы также можете с помощью метасимвола кавычки. Одиночные кавычки ('...') отменяют специальное значение всех символов за исключением самих одиночных кавычек. Двойные кавычки ("...") отменяют специальное значение всех символов, за исключением символов двойные кавычки, $ и `(слабое ударение). Использование кавычек удобно для цифровых специальных символов.

Например, ваш файл trail содержит строку:

    He really wondered why? Why???

Чтобы найти строку, содержащую три вопросительных знака, воспользуйтесь командой grep:

    $ grep '???' trail<CR>

    He really wondered why? Why???
    $

8.2.4.1. Использование кавычек для отмены значения символа пробел

Кавычки аналогично обратной косой черте часто используются для отмены специального значения пробела. shell интерпретирует пробел в командной строке как разделитель между аргументами команды. Одиночные и двойные кавычки и обратная косая черта позволяют отменить это значение.

Например, чтобы в тексте разместить два или более слова, сделайте эти два слова одним аргументом, заключив их в кавычки. Чтобы найти два слова "The all" в файле trail, введите следующую команду:

        $ grep 'The all' trail<CR>

        The all * game
        $

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

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

    banner happy birthday to you<CR>

то команда banner напечатает ваше сообщение на 4-х строках. Если вы введете:

    banner happy birthday "to you"<CR>

то команда banner напечатает ваше сообщение на 3-х строках, причем слова "to" и "you" напечатает на одной строке.

Команда banner печатает сообщения на экране терминала большими плакатного размера буквами.



Поиск Компьютерные сети и технологии

Copyright © 2006 - 2020
При использовании материалов сайта ссылка на xnets.ru обязательна!