Секция «InputDevice" – описание устройств ввода (клавиатур, манипуляторов мышь)
Identifier – идентификатор устройства ввода
Driver – драйвер устройства ввода:
Option – опция:
Секция “Monitor” – описание монитора
Identifier – идентификатор монитора
DisplaySize – размер дисплея (пропорции – 320 240)
Option – опция:
Секция “Device” – описание устройства видеовывода
Identifier – идентификатор видеокарты
Driver – драйвер видеокарты (nv, nvidia, radeon, fglrx, ...)
Секция “Screen” – описание экрана
Identifier – идентификатор экрана
Device – идентификатор устройства видеовывода, видеокарта (описана в секции “Device”)
Monitor – идентификатор монитора (описан в секции “Monitor”)
DefaultDepth – глубина цвета устанавливаемая по умолчанию
SubSection “Display” – подсекция экрана (описывает допустимые разрешения с глубинами цвета):
Секция «ServerLayout" – обобщающая конфигурационная секция (корень)
Identifier – идентификатор сервера
Screen – идентификатор экрана используемого сервером (описан в секции “Screen”)
InputDevice – идентификатор устройства ввода (описано в секциях «InputDevice")
Секция “Module” – секция описания дополнительных модулей расширения
Load – загрузка указанного модуля:
Управление звуком:
\007 – издать звук;
\033[10;#] – установить частоту звукового сигнала в герцах;
\033[11;#] – установить продолжительность звукового сигнала в миллисекундах.
Управление цветом:
\033[0m – все атрибуты по умолчанию;
\033[1m – жирный шрифт (интенсивный цвет);
\033[2m – полу яркий цвет (тёмно-серый, независимо от цвета);
\033[4m – выделение (ярко-белый, независимо от цвета);
\033[5m – мигающий;
\033[7m – реверсия (знаки приобретают цвет фона, а фон – цвет знаков);
\033[22m – установить нормальную интенсивность;
\033[24m – отменить подчеркивание;
\033[25m – отменить мигание;
\033[27m – отменить реверсию;
\033[30 – чёрный цвет знаков;
\033[31 – красный цвет знаков;
\033[32 – зелёный цвет знаков;
\033[33 – коричневый цвет знаков;
\033[34 – синий цвет знаков;
\033[35 – фиолетовый цвет знаков;
\033[36 – цвет морской волны знаков;
\033[37 – серый цвет знаков;
\033[40 – чёрный цвет фона;
\033[41 – красный цвет фона;
\033[42 – зелёный цвет фона;
\033[43 – коричневый цвет фона;
\033[44 – синий цвет фона;
\033[45 – фиолетовый цвет фона;
\033[46 – цвет морской волны фона;
\033[47 – серый цвет фона.
Управление положением курсора
\033[#A – передвинуть курсор вверх на # строк;
\033[#B – передвинуть курсор вниз на # строк;
\033[#С – передвинуть курсор вправо на # столбцов;
\033[#D – передвинуть курсор влево на # столбцов;
\033[#E – передвинуть курсор вниз на # строк и поставить в начало строки;
\033[#F – передвинуть курсор вверх на # строк и поставить в начало строки;
\033[#G – переместить курсор в указанный столбец текущей строки;
\033[#;#H – задает абсолютные координаты курсора (строка, столбец).
Управление палитрой
\033]Pnrrggbb – изменяет палитру. n – номер цвета; rr, gg и bb – значения RGB-компонент в шестнадцатеричной форме;
\033]R – восстанавливает палитру, принятую по умолчанию.
Управление виртуальными консолями
\033[12;#] – сделать текущей консоль с указанным номером.
Управление xterm
\033]0;text\007 – присваивает имя окну и иконке;
\033]1;text\007 – присваивает имя иконке;
\033]2;text\007 – присваивает имя окну.
Общее
\033c – сброс терминала;
\033(K – переключение на загружаемый шрифт.
![numb] — запуск строки <numb> из истории (history);
!str — запуск ближайшей строки соответствующей маске str из истории (history);
\ — продолжение текущей строки на другой строке или экранирование специального символа после данного символа (\$);
; — разделитель команд;
() — выполнения сценария в скобках в другой подоболочке;
(()) — включение выражений с «С» синтаксисом;
[] — включение условных операций с синтаксисом команды test;
“pwd” — определение строки с разрешением подстановки значений переменных;
'pwd' — определение строки с запрещением подстановки значений переменных;
`pwd` — результат выполнения команды pwd;
$(x) — выполнение команды x и возврат результата (подобно `x`);
x=pwd — определение переменной окружения x и присвоение ей строки pwd;
x='34' — определение переменной окружения x и присвоение ей строки '34';
x[2]=pwd — определение массива x и присвоение его элементу 2 строки pwd;
x=(zero one two three) — определение массива x и заполнение четырех его элементов;
x=([0]=zero [3]=three [2]=two [1]=one) — определение массива x и заполнение четырех его элементов по выбору;
$(( 100/3 )), $[100/3] — выполнение простых целочисленных операций.
$x, ${x} — подстановка значения переменной/параметра x
${!x} — косвенная подстановка значения переменной/параметра указанного в x;
${#x} — косвенная подстановка значения переменной/параметра указанного в x,
${x:?»Error, no bar»} — генерировать ошибку если x не определена или равна нулю;
${x?»Error, no bar»} — -//-;
${x:="foose"} — присвоить значение по умолчанию если x не определена или равна нулю;
${x="foose"} — -//-;
${x:offset:lenght}, ${x:offset} — возвращает часть от x начиная с offset длиной lenght;
${x:+"foose"} — если переменная определена то вместо неё используется “foose”;
${x+"foose"} — -//-;
${x:-"foose"} — если переменная определена то она используется иначе используется “foose”;
${x-"foose"} — -//-;
${пар#шабл} — ??
${пар##шабл} — ??
${пар%шабл} — ??
${пар% %шабл} — ??
${пар/шабл/стр} — заменяется первая, самая длинная подстрока значения параметра, на указанную строку;
${пар/ /шабл/стр} — заменяются все самые длинные подстроки значения параметра, на указанную строку;
${array[@]} — обращение сразу ко всему массиву;
$'\n' — вставка управляющего символа в строку;
Comm && — выполняет действие после выражения если команда <Comm> неудачна;
Comm || — выполняет действие после выражения если команда <Comm> удачна;
MYVAR#*fo — отсекает от начала переменной MYVAR самую короткую часть удовлетворяющую маске *fo;
MYVAR##*fo — отсекает от начала переменной MYVAR самую длинную часть удовлетворяющую маске *fo;
MYVAR%fo* — отсекает от конца переменной MYVAR самую короткую часть удовлетворяющую маске fo*;
MYVAR% %fo* — отсекает от конца переменной MYVAR самую длинную часть удовлетворяющую маске fo*;
MYVAR:2:5 — возвращает часть строки MYVAR которая начинается с 2 символа и заканчивается 5;
$# — количество фактических аргументов;
$- — флаги (однобуквенные), указанные при запуске shell или установленные посредством set.
$? — код возврата последней команды;
$$, $PPID — PID текущего процесса (скрипта);
$! — PID последнего запущенного фонового процесса;
$* — раскрывает единственное слово, содержащее список всех позиционных парам;
$@ — ссылка на все аргументы команды отделенные пробелами;
$0 — имя команды в командной строке;
$n, ${n} — аргумент n командной строки (n = 1...);
PWD — текущий рабочий каталог;
UID — цифровой идентификатор текущего пользователя;
umask — содержит маску прав доступа по которой создаются новые файлы;
BASH — полный путь вызова BASH;
BASH_VERSION — версия данного экземпляра BASH;
EDITOR — содержит имя редактора используемого для редактирования некоторых конфигурационных файлов;
PAGER — содержит имя программы для отображения информационных страниц (типа more);
SHLVL — количество запущенных BASH;
REPLY — содержит последнюю строку ввода;
RANDOM — содержит случайное число в диапазоне 0..32767;
SECONDS — время в секундах от запуска BASH;
HISTCMD — номер текущей команды в истории;
IFS — цепочка символов разделителей полей;
PATH — пути поиска команд;
HOME — домашний каталог текущего пользователя;
MAIL — имя файла в который поступает электронная почта;
LOGNAME — имя пользователя использованное для входа в систему;
SHELL — имя интерпретатора команд;
LD_LIBRARY_PATH — описания пользовательских путей к динамическим библиотекам;
DISPLAY — описывает адрес дисплея для X-приложений;
LANG — переменная локали;
TERM — тип пользовательского терминала;
INPUTRC — содержит имя файла параметров для библиотеки readline, определяющей параметры ввода с клавиатуры;
PS1,PS2 — описывает вид приглашения в командной строке;
TZ — информация о часовом поясе;
MALLOC_CHECK_ — указывает что делать с ошибками в функциях malloc, free:
MALLOC_TRACE — определяет путь для команды mtrace и функции в программе mtrace;
& — выполнить команду до него в фоновом режиме;
if [ Condition ] — условный оператор ( if ( Condition ) – tch);
then — тело выполнения условия;
else — тело невыполнение условия;
elif [ Condition ] — совмещенная команда else if;
fi — окончание условного оператора;
for x in 1 2 3 4 — оператор цикла, в x перебираются значения за in ( foreach x (1 2 3 4) – tch ). Общая структура циклов:
while [ Condition ] — выполняет цикл пока верно условие Condition ( while ( Condition ) -tch );
until [ Condition ] — выполняет цикл до равенства условия Condition;
(repeat x expression – tch ) — выполняет повторение выражения <expression> x раз;
select x in list; — запрашивает выбор из списка <list> и присваивает выбранное значение переменной <x>;
do — начало тела цикла определенного for, while, until;
done — конец тела цикла определенного for, while, until;
break — завершение цикла;
continue — продолжение цикла сначала;
case x in — команда выбора. Имеет структуру:
function func() { } — определяет функцию с именем func;
func a1 a2 a3 — вызов функции;
. file — выполнить все команды в файле после точки;
eval [attr] — выполнить команду заданную аргументами;
exec [prog] — сменить программу текущего процесса указанной, т.е. выполнить в данном процессе новую программу;
exit n — выход из сценария с кодом <n>;
shift [n] — сдвиг параметров командной строки на единицу (для доступа к параметрам с номером > 9 );
cd [dir] — сменить директорию;
pwd — получение имени текущей директории;
read x y — ввод строки из двух слов;
set x = str — инициализация переменной и установка различный настроек интерпретатора;
-A Name_A 1 2 3 4 5 — инициализация массива;
-V,-X — включение отладочного режима;
+V,+X — выключение отладочного режима;
unset x — отмена инициализации переменной;
export x — создает переменную окружения x и экспортирование её в систему;
-p — вывод всех экспортированных переменных.
local x — создает локальную переменную окружения которая не перекрывает глобальной (часто используется для функций);
declare — декларирование переменных и изменение их атрибутов;
trap — установка обработчиков сигналов в скрипте;
alias [имя=синоним] — создание псевдонимов или альтернативных имен команд;
unalias — удаление псевдонима;
test — проверка условий, используется в циклах;
getopts — разбор опций.
-e — существует;
-d — каталог;
-f — обычный файл;
-c — специальный файл;
-b — специальный блочный файл;
-p — специальный файл именованного канала;
-L — символическая ссылка;
-r — для чтения;
-w — для записи;
-x — исполняемый;
-z — файл пуст;
-s,(-z) — имя файла не нулевой длины;
(-o) — пользователь является владельцем файла;
fname1 -nt fname2 — fname1 новее fname2;
fname1 -ot fname2 — fname1 старше fname2;
-z — строка пуста;
-n — строка не пуста;
=, (==) — строки равны;
!= — строки неравна;
-eq — равно;
-ne — неравно;
-lt,(< ) — меньше;
-le,(<=) — меньше или равно;
-gt,(>) — больше;
-ge,(>=) — больше или равно;
! — отрицание логического выражения;
-a,(&&) — логическое «И»;
-o,(||) — логическое «ИЛИ»
| — перенаправление вывода в канал;
< file — file записать в STDIN;
> file — STDOUT записать в file;
<> file — чтение и запись в файл;
>> file — STDOUT добавить в file;
<< str — определяет слово <str> как признак окончания ввода;
2> file — STDERR записать в file (могут указываться дескрипторы других файлов);
1>&2 — STDOUT записать в STDERR;
2>&1 — STDERR записать в STDOUT;
&> file — STDOUT и STDERR записать в file;
\n — новая строка
\b — возврат на один символ
\c — печать строки без символа новой строки
\f — переход к новой странице/экрану
\r — возврат каретки
\t — табуляция
\v — табуляция по вертикали
\\ — обратная косая черта
0nnn — восьмеричное число
xNN — шестнадцатеричное число
* — производная цепочка символов;
? — производный символ;
[...] — символ в скобках [A-Z]; "! и ^" – исключение символа.
045 — восьмеричное число (начинается с 0)
0x45, 0X32 — шестнадцатеричное число
[основание#]n — число с основанием <n> (по умолчанию основание 10)
wc -l # получить количество строк
wc -w # получить количество слов
sed -n 4p # получить указанную строку
ls -1 /etc # получить содержимое каталога по строкам
head -c8 /dev/random | uuencode -m - | sed -n '2s/=*$//;2p' # cгенерировать случайный пароль
run – запуск отлаживаемой программы
break func – установка точку прерывания на функцию func
list func – просмотр содержимого функции или исходного файла
next – следующая команда;
quit – выход;
Формат правила:
Цель это некий желаемый результат может представлять собой:
Зависимость, также может быть файлом или командой которая должна выполнится ранее.
.cpp.o: – файлы с расширением *.o зависят от соответствующий файлов с расширением *.cpp
%.o: %.cpp – проверяет все файлы с расширением .cpp и заменяет цель на расширение .o
.PHONY: x – объявление специальной цели (не файл)
all: – выполняет эту цель при отсутствие параметров команды make
=,:= – оператор объявления переменных (x = test)
+= – добавление текста к существующей переменной
#define – определение переменных. (#define x «test 1")
include – включение внешнего файлы и его обработка, с прерыванием при отсутствие файла
-include – включение внешнего файлы и его обработка, без прерывания при отсутствие файла
$(function par1, par2 ...) – вызов функции и получение значения переменной
addprefix – добавляет префикс в первом параметре к каждому элементу в списке второго параметра
addsuffix – добавляет суффикс в первом параметре к каждому элементу в списке второго параметра
wildcard – расширяет переданные шаблоны до списка файлов соответствующих этим шаблонам
notdir – выделение имени файла из полного пути
patsubst – изменяет указанным образом слова подходящие под шаблон
override – позволяет изменять переменные заданные через пораметры make
for x in 1 2 3 4; – оператор цикла, в x перебираются значения за in
do – начало цикла определенного for
done – конец цикла определенного for
VPATH – описывает список каталогов для поиска зависимостей
CC – указывает компилятор языка С
СXX – указывает компилятор языка С++
СFLAGS – указывает флаги компилятора С
CXXFLAGS – указывает флаги компилятора С++
LDLIBS – описывает опции линкера
`command` – вставить в сценарий выхлоп команды <command>
$@ – имя цели обрабатываемого правила
$< – имя первой зависимости обрабатываемого файла
$^ – список зависимостей обрабатываемого правила
bin_PROGRAMS – определяет имя программы
<prog>_SOURCES – определение исходников от которых зависит программа
CXX – имя C++ компилятора
CXXFLAGS – определение опций С++ компилятора
AUTOMAKE_OPTIONS – определение опций automake:
AC_INIT(file) – инициализация скрипта и проверка на наличие исходников
AC_CONFIG_AUX_DIR(dir) – использовать скрипты типа install-sh из каталога <dir>
AM_INIT_AUTOMAKE(prog, 1.0) – определение имени и версии проекта
AC_PROG_CC – проверка наличия С компилятора
AC_PROG_CXX – проверка наличия С++ компилятора
AC_OUTPUT([file ... [, extra-cmds [, init-cmds] ] ]) – создаёт выходные файлы <file> типа Makefile (копирует входной file.in и подставляет значения переменных).
AC_OUTPUT_COMMANDS(extra-cmds [, init-cmds] ]) – дополнительные команды с их инициализацией в init-cmds. Выполняются в конце config.status
--bindir – директория для исполняемых файлов
--build – платформа сборки
--cache-file – файл для помещения результатов проверок
--datadir – директория для хранения файлов данных
--enable-...(-disable-...) – включить(выключить) возможность/функцию
--exec-prefix – похож на опцию – -prefix
--help – список всех опций командной строки
--host – имя платформы домашнего(host) компьютера
--includedir – директория заголовочного файла
--infodir – директория информации типа <info>
--libdir – директория библиотек
--mandir – директория c руководствами
--no-create – не создавать конечные файлы
--norecursion – не вызывать вложенные configure
--prefix – директория корневого каталога
--sbindir – директория для системных исполняемых файлов
--silent – подавляет вывод результатов исполнения на экран
--srcdir – каталог исходных текстов
--sysconfdir – каталог данных только для чтения(/etc)
--target – имя целевой платформы
--tmpdir – каталог для хранения временных файлов Configure
[!NameProg] <facility>.[op]<level>[;<facility>.<level>] <Name file>
где:
<level> – Уровень детализации:
<op> – Метод журналирования. При отсутствие выводит сообщения указанного и более высокого уровня:
alias [class] [module] – определяет модуль/драйвер, как определенный класс устройств
alias [class] off – обозначает, что этому классу не соответствует ни одно устройство
options [класс или модуль] [знач1] [знач2] – определяет дополнительные параметры модуля
pre-install [класс или модуль] command – выполняет программу <command> перед инсталляцией модуля
post-install [класс или модуль] command – выполняет программу <command> после инсталляции модуля
pre-remove [класс или модуль] command – выполняет программу <command> перед удалением модуля
post-remove [класс или модуль] command – выполняет программу <command> после удаления модуля
Пример выделение частоты процессора:
Запросы:
a – вставить текст после текущей строки
c – заменить указанные строки
d – исключить текущую строку
e – открыть для редактирования указанный файл с проверкой старого
E – начать редактирование файла без проверки
f – напечатать имя редактируемого файла
g – применить указанный запрос ко всем строкам
i – вставить текст перед текущей строкой
j – объединить строки
k – поменять строки
l – напечатать строку
m – переставить группу строк в другое место
n – напечатать строки вместе с их номерами
p – напечатать строки
q – выйти из редактора с проверкой сохранения текущего файла
Q – выйти без проверки
r – считать файл в буфер
s – заменить текст в пределах строки
t – скопировать группу строк
u – аннулировать результат последней замены s
v – применить указанный запрос ко всем строкам не содержащим заданный образец
w – записать группу строк в файл
W – дозаписать группу строк в конец файла
= – напечатать номер строки
! – выполнить системную команду
+ – шаг вперёд на одну строку
- – шаг назад на одну строку
Выражения:
. – любая литера, кроме новой строки
[s] – любая литера из цепочки s
[^s] – любая литера не входящая в цепочку s
e* – все соседние вхождения;
\(e\) – выделить подвыражение, на подвыражение можно ссылаться используя \n
\n – n-е выделенное подвыражение
^ – начало строки
$ – конец строки
\с – экранировать специальный символ
Адреса:
. – текущая строка
n – n-я строка
$ – последняя строка редактируемого текста
'x – строка, помеченная меткой x
/e/ – ближайшая следующая строка, содержащая e
?e? – ближайшая предыдущая строка, содержащая e
Формат записи: awk '{print $2,$1}'
print $1,$3 – печатает указанные поля, разделённые пробелом, для всех строк
printf "%s/*\n", $2 – печать форматированных данных
root=/dev/hda – расположение корневого раздела
ro, rw – режим монтирования – только для чтения или полный
hdd=ide-scsi – на каком ide диске эмулировать scsi
init=/bin/bash – программа инициализации, выполняется сразу после загрузки ядра
syngle – загрузится в одиночном режиме
1,3,5 – режим загрузки INIT:
Репозиторий CVS хранит полные копии всех файлов и каталогов, находящихся под контролем версий.
$ export CVSROOT=/home/Roman/progects/CVS_R # Указание на каталог, где находится репозиторий CVS.
$ export CVSROOT=:pserver:user@serv.comp.org:/CVS_R # Указание на удалённый репозиторий.
$ cvs -d /usr/local/cvsroot init # Создание пустого репозитория.
$ cvs -d:pserver:user@serv.comp.org:/usr/local/cvsroot init # Создание пустого репозитория на удалённом сервере.
$ cvs import MyProg MyName start # Импортирует проект MyProg от имени создателя MyName в CVS.
$ cvs -z 3 co tc # Экспорт проекта tc для работы над ним. В результате чего будет создан каталог `tc', в который будут помещены все файлы.
$ cvs co -r revise Prog # Загрузить дерева проекта с ревизией(тегом) <revise>.
$ cvs up # Синхронизация исходных текстов со всеми изменениями (выполнять перед фиксацией своих изменений).
$ cvs up -r revise # Привести содержимое дерева в соответствии с ревизией <revise>.
$ cvs ci backend.c -r revise # Зафиксировать изменения в backend.c и запускает редактор (ENV: CVSEDITOR), чтобы ввести журнальную запись об изменениях.
$ cvs ci -r revise # Зафиксировать изменения в дереве под ревизией <revise> для всего дерева.
$ cvs tag revise # Привести вершину дерева к <revise>.
$ cvs release -d tc # Выполняет удаления вашей копии проекта и при этом проверяет, что все ваши изменения были зафиксированы.
$ cvs log file.cc # Вывести лог изменений в файле file.cc.
$ cvs diff driver.c # Вывести описание изменений внесенных в файл `driver.c'.
$ cvs add readmi.cc # Внесение файла readmi.cc под контроль CVS.
$ cvs rm readmi.cc # Сообщение CVS о том что файл readmi.cc должен быть удалён из репозитория при следуйщей команде <ci>.