Основы использования командной строки

Оставлены две незатр. темы: собственно операторы и написание командных сценариев. Совсем не было про шелл в первой ипостаси, между тем грамотно настр. шелл хорошо помогет облегчить работу с ком. строкой.

Среди разл. удобств, которые предл. шелл, есть следующие:

Отделение выдачи и промпта: какое надо сделать PS1="[\[tput smso\]\u@\h \W\[tput rmso\]]\$ ". tput --- выводит упр. посл. для изм. режима вывода. Это свйства самого терминала, tput илшь интерфейс к св-ву, на самом деле все программы, которые работают с терминалом, польз. этими св-вами. Что собой явл. результат работы tput. Результатом являются символы, escape-последовательности, для того, чтобы заставить терминал работать как-то иначЕ, нужно вывести символы, спец. символы, например, [[38m, [[0m, которые, вместо того, чтобы выводиться, как-то упр. терминалом. Это пошло с тех времё1н, кгда были только алф-цифр. терминалом, который гоняет байты туд-сюда. Когда выясн., что нелох было бы , чтбы можно было разные вещи, стали думать, как можно сделать так, чтобы это устройство показать буквы спец цветом. И додумлись до того, что нек. символы непечатные, более того, при выдаче этого симв. на экран он переходит в режи, когда им управляют, и следующие неск. символов указывают комнды. Дело в тм, что было это в давних годах, и было много сотен рахных типов терминалов, казалось бы, что это должно вымереть, но существует с дюжину разных программ, которые изображают из себя терминал, и у них у всех разные упр. посл., поэтому это не стит запоминать наизусть, а лучше изучить локументацию по terminfo и пользоваться tput.

Если echo $PS1, т там уже раскрашено будет, ибо бэктики. Самая удобная программа для просмора этого --- hexdump -C

Зачем бэкслешквадратные скобки --- баш двольно глубенький, ему говришь "моя подсказка сстоит из...", он считает ширину промпта и остальне место --- строка ввода, но упр. посл. не сдвигают курсор, поэтому их надо брать в кв. стрки.

Понятие терминала

Мы его по факту приняли, но на самом деле там ещё моног интересного. Мы обнаружили такую штуку, как упр. последовательности. Это с тчки зрения терм. как железяки. А нет ли особых свйст, почему он имеет такое название, "оконечное устройство"? С точки зрения ОС, терминал не прсто передача байт, терминал эти байты преобразовывает. Когда мы запускали cat и потом ндо был, чтобы она закончилсь, мы бы нажимали D. Если бы мы его не зарег. как терминал, то ввод бы продолжался. Аналогично C. Здесь мы как раз имеем дело с тем фактом, что при передаче данных т и к терминалу данные обраб, при чём в обе строны. ут есть два вида обраю:

Две вещи:

Среди прочих вариантов работы есть целых три сивола работы --- erase, kill, werase (bs, u, w).

Возр. к шеллу, как к инт. ком. строки: разумеется, этих трёх команд недост., поэтому любой уваж. себя шелл имеет огрмное кол-во кманд редакт. ввда. Например, стрелочки вверх=вниз --- история, а втрелчки влево-вправо --- перемещ. по строке. Ctrl-R --- поиск по истории. На самом деле, таких функций --- десятки. И в шелле есть способ привязать клавиши к функции.

(рассказ про less)

Есть команда bind, которая пр. привязку многих программ, к тем функиям, которые есть, к клавишам. Эти привязки относятся не к шеллу как таковому, а к библиотеке readline. C- значет control, M- --- meta (esc)

В чём идея --- назначить какие команды какими клавишами выполнять. Как сделать хождение по словам по PgUp/PgDn:


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

0

1

1

1

1

ArtemSerebriyskiy, VladimirLysikov, VsevolodKrishchenko


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex