Главная » Просмотр файлов » Э. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание

Э. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание (1114666), страница 80

Файл №1114666 Э. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание (Э. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание) 80 страницаЭ. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание (1114666) страница 802019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 80)

Если переменнаяимеет значение ignoredups, то в журнал команд не заносятся строки, совпадающие с последней строкой журнала. Значение ignoreboth объединяет оба случая.HISTFILEИмя файла журнала команд, с которым происходит работа.HISTFILESIZEМаксимальное количество строк, хранимых в файле журнала команд.

По умолчанию равно 500.HISTSIZEМаксимальное количество команд, хранимых в журнале. По умолчанию равно 500.Таблица 7.21. Почтовые переменныеПеременнаяОписаниеMAILИмя файла, который проверяется на наличие новых писем.MAILCHECKИнтервал (в секундах) проверки наличия новой почты (60 секундпо умолчанию).MAILPATHСписок имен файлов (элементы разделяются двоеточием), которыенеобходимо проверять на наличие новых писем.Арифметические выражения539Таблица 7.22. Переменные состоянияПеременнаяОписаниеBASHПуть текущего экземпляра интерпретатораBASH_VERSIONНомер версии текущего интерпретатораCOLUMNSКоличество доступных колонок дисплеяDIRSTACKПеречень каталогов, с которыми работают команды pushd и popdEUIDЭффективный идентификатор владельца процесса, выполняющего данную копию интерпретатора, в виде числа, опознаваемого системойGROUPSСписок групп, к которым принадлежит пользователь, в виде чисел, опознаваемых системойHOMEИмя домашнего (начального) каталога пользователяHOSTNAMEУзел, на котором выполняется интерпретаторHOSTTYPEКраткое имя, указывающее тип машины, на которой выполняется интерпретатор; например i486LINESКоличество доступных строк дисплеяMACHTYPEДлинное имя, указывающее тип машины, на которой выполняется интерпретатор; например i486-pc-linux-gnuOLDPWDПредыдущий рабочий каталогOSTYPEКраткий идентификатор операционной системы; например «11nux-gnu»PPIDИдентификатор процесса, породившего текущий интерпретаторPWDТекущий рабочий каталогSECONDSКоличество секунд, прошедших с начала работы интерпретаторав данном сеансеSHELLПуть текущего интерпретатораSHLVLГлубина вложенности работающих интерпретаторовTERMТип терминала, с которым работает пользовательUIDРеальный идентификатор процесса, вызвавшего текущий интерпретатор, в виде числа, опознаваемого системойАрифметические выраженияКоманда let позволяет выполнять целочисленные операции.

Интерпретаторbash предоставляет способ подстановки целых значений (в качестве аргументов команд или в переменные), а также средства перехода от одной системы счисления к другой.Глава 7. bash: командный интерпретатор Борна540ВыражениеЗначение$(( ехрг ))Использовать значение арифметического выражения в скобкахОператорыВ bash применяются операторы языка программирования С; они представлены в нижеследующем списке в порядке понижения приоритета. Для изменения порядка вычисления выражений используются скобки.ОператорЗначениеУнарный минусЛогическое отрицание; двоичная инверсия (дополнение единицы)Умножение, деление, взятие остатка от деления*/%Сложение, вычитаниеПоразрядный сдвиг влево, поразрядный сдвиг вправо<=>=Меньше либо равно, больше либо равноМеньше, большеПроверка на равенство и неравенство (ассоциативность - слева направо)Поразрядное И (AND)Поразрядное исключающее ИЛИ (OR)Поразрядное ИЛИЛогическое И&&Логическое ИЛИПрисваивание значенияПрисваивание после сложения/вычитания*=/=%= Присваивание после умножения/деления/взятия остаткаЛ&= = |=Присваивание после выполнения операции поразрядного AND/XOR/OR«= »= Присваивание после выполнения операции поразрядного сдвига влево/вправоПримерыБолее подробная информация приведена в описании встроенной командыlet.let "count=0" "i=i+1"let "num % 2"Присвоить значения переменным i и countПроверка числа на четностьЖурнал команд541Журнал командbash позволяет отображать и редактировать ранее введенные команды.

По механизму работы эта возможность сходна с журналом интерпретатора С shell.Команды из журнала можно изменять:• В режиме построчного редактирования•С помощью команды fсКроме того, подстановки команд, описанные в главе 8 «Интерпретаторы cshи tcsh», также действительны в bash.Режим построчного редактированияРежим построчного редактирования позволяет эмулировать многие возможности редакторов vi и Emacs. Список команд журнала хранится в файле.После запуска редактора можно с помощью команд перемещаться по строкам файла в поисках нужной строки. Клавиши управления курсором работают на большинстве терминалов как в режиме Emacs, так и в режиме vi.Перед применением найденной строки ее можно изменить.

В табл. 7.23 приведены примеры распространенных команд редактирования строки. Длявыполнения команды необходимо лишь нажать клавишу <Enter>.По умолчанию в режиме построчного редактирования работают сочетанияклавиш Emacs. Чтобы переключиться на vi-редактирование, введите команду:$ set -о viПомните, что vi запускается в режиме вставки; для того чтобы ввести команду vi, необходимо сначала нажать клавишу <Esc>.Режим, установленный для редактирования команд bash, никак не связан свыбором редактора, который автоматически запускается при выполнениимногих команд (в частности, в почтовых клиентах при создании новогописьма). Чтобы изменить стандартный редактор, необходимо установить переменную VISUAL или EDITOR в соответствующее значение (полный путьредактора):$ export EDITOR=emacsТаблица 7.23.

Распространенные сочетания клавиш, используемые дляредактированияviEmacsДействиеkCtrl-PПолучить предыдущую командуjCtrl-NПолучить следующую команду/stringCtrl-R stringПолучить предыдущую команду, которая содержит строку stringhCtrl-BПереместить курсор на символ влевоГлава 7. bash: командный интерпретатор Борна542viEmacsДействие1Ctrl-FПереместить курсор на символ вправоbEsc ВПереместить курсор на слово влевоwEsc FПереместить курсор на слово вправоXDelУдалить предыдущий символXCtrl-DУдалить один символdwEsc DУдалить слово после курсораdbEsc HУдалить слово перед курсоромxpCtrl-TПоменять местами два символаКоманда fcКоманда fc —1 перечисляет команды из журнала, a fc —e позволяет их редактировать. Более подробное описание fc см.

в разделе о встроенных командах.Примеры$$$$historyfc -I 20 30fc -1 -5fc -1 cat$ fc -In 5 > doit$ fc -e vi 5 20$ fc -e emacs$ !!$ !cat$ !cat foo-fileВывести список команд из журнала 1Перечислить команды с 20 по 30Перечислить пять последних командНачиная с последней команды из журнала, вывести списоккоманд, начинающихся с cat 2Сохранить в файле doit все команды, начиная с пятой(без номеров команд) 3Редактировать с 5 по 20 команды с помощьюviРедактировать предыдущую команду с помощью EmacsПовторно выполнить последнюю командуПовторно выполнить последнюю командуcatПовторно выполнить последнюю команду cat, добавив файлfoo-file в конец списка аргументовПодстановка командСинтаксисЗначениеУказание интерпретатору на начало подстановки из журнала командВыполнить последнюю команду123Обещанные 16 команд можно увидеть, если применить команду history 16.

Команда fc —1 выводит список последних 17 команд из журнала. - Примеч. науч. ред.Данная команда делает именно это, а не то, что обещано в книге. — Примеч. науч.ред.Аналогично предыдущему примеру действие команды отлично от обещанного. Примеч. науч. ред.Журнал команд543СинтаксисЗначениеINКоманда номер Л/ из журналаl-NКоманда, отстоящая от текущей на NIstringСамая недавняя команда, начинающаяся со строки stringllstringlСамая недавняя команда, содержащая строку string\1string1%Аргумент самой недавней команды, содержащий строку string!$Последний аргумент предыдущей команды!#Текущая команда до этой точки\\stringВыполнить предыдущую команду с добавлением строки stringIN stringВыполнить команду с номером W с добавлением строки string!{s7}s2Самая недавняя команда, начинающаяся со строки s 1; выполнить с добавлением строки s2~old~new~Быстрая замена; в последней команде заменить строку old на строкуnew и выполнить измененную командуПеременные в приглашенияхПеречисленные ниже переменные позволяют выводить информацию о состоянии интерпретатора или системы непосредственно в приглашении командной строки.

Необходимо инициализировать переменную PS1 строкой,включающей необходимые ключи-переменные. Например, следующая команда инициализирует PS1 строкой, которая содержит переменную \w,обеспечивающую отображение текущего рабочего каталога, и переменную \!,которая позволяет отобразить номер текущей команды. Следующая строкаотражает изменение в приглашении.$ PS1='\w: Command \!$ '"/book/linux: Command 504$Некоторые из переменных являются относительно новыми, как \j и \1, поэтому они могут не поддерживаться более старыми версиями bash.Переменная Результат подстановки\аЗвуковой сигнал\dДата в формате «Mon May 8»\еТерминальная escape-последовательность (не путать с символом обратного слэша)\ЬИмя узла\jЧисло фоновых заданий (активных или приостановленных)544Глава 7.

bash: командный интерпретатор БорнаПеременная Результат подстановки\1Имя текущего терминала\пСимвол новой строки\гВозврат каретки\8Текущий интерпретатор\tВремя в 24-часовом формате; 3:30 p.m. отображается как 15:30:00\UРегистрационное имя пользователя\vВерсия и выпуск bash\wТекущий рабочий каталог\HАналогично \h\TВремя в 12-часовом формате; 3:30 p.m. отображается как 03:30:00\VВерсия, выпуск и patch-версия bash\wПоследний компонент (следующий за последним разделителем /) имени текущего рабочего каталога\\Символ «обратный слэш»\!Порядковый номер текущей команды в журнале\#Порядковый номер текущей команды; отсчет начинается с моментазапуска интерпретатора, первая команда имеет номер 1\@Время в 12-часовом формате; 3:30 p.m. отображается как 03:30 p.m.\$Индикатор пользователя; отображается как # для пользователя root икак $ - для всех остальных пользователей\[Начало последовательности неотображаемых символов; последовательность должна заканчиваться символами \]\]Окончание последовательности неотображаемых символов, начатойсимволами \[\nnnASCII-символ, соответствующий восьмеричному числу пппВстроенные командыПримеры, которые можно использовать в командной строке, начинаются сприглашения $.

В ином случае приведенный код можно рассматривать какпригодный к применению в сценариях. Для удобства включены некоторыеиз зарезервированных слов, используемых многострочными командами.Встроенные команды#545#Игнорировать весь текст, следующий за символом «#» в тойже строке. Символ используется в сценариях для записикомментариев и по сути не является командой.#\shellИспользуется в качестве первой строки сценария для вызовауказанного командного интерпретатора (возможна передача аргументов). Некоторые из старых не-Linux систем не работают со сценариями, начинающимися с такой строки.Например:#!/bin/bashПустая команда. Код возврата— 0.

Если является первымсимволом файла, обозначает сценарий bash. За символом «:»может следовать переменная интерпретатора; в таком случае комбинация заменяется значением переменной.ПримерПроверить, работает ли конкретный пользователь в системе:if who | grep $1 > /dev/nullthen :# ничего не происходит# если найдено соответствие шаблонуelse echo "User $1 is not logged in"fi. file [arguments}Идентично source.alias [—p] [name[='cmd']]Создать псевдоним для применения в качестве синонима команды cmd. Если опущен параметр ='cmd', отображается текущее значение для псевдонима пате; если и параметр пате опущен или указан параметр —р, отображаются все существующие псевдонимы. См.

Характеристики

Тип файла
PDF-файл
Размер
13,55 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее