Администрирование Linux: различия между версиями
Mllnr (обсуждение | вклад) Нет описания правки |
Mllnr (обсуждение | вклад) |
||
Строка 63: | Строка 63: | ||
<syntaxhighlight lang="bash"> |
<syntaxhighlight lang="bash"> |
||
sort -t: -k3,3 -n /etc/group |
sort -t: -k3,3 -n /etc/group |
||
</syntaxhighlight> |
|||
===== Подсчет строк, слов и символов ===== |
|||
Команда '''wc''' считает количество строк, слов и символов в файле. По умолчанию выводит все три значения. |
|||
'''Ключи''' |
|||
* '''-l''' - выводит только число строк |
|||
* '''-w''' - выводит только число слов |
|||
* '''-c''' - выводит только число символов |
|||
'''Примеры:''' |
|||
<syntaxhighlight lang="bash"> |
|||
sort -t: -k3,3 -n /etc/group |
|||
</syntaxhighlight> |
|||
===== Копирование входного потока в два места ===== |
|||
Команда '''tee''' отправляет входной поток в STDOUT и в файл. |
|||
'''Примеры:''' |
|||
<syntaxhighlight lang="bash"> |
|||
wc /etc/passwd | tee /dev/tty | wc -l |
|||
</syntaxhighlight> |
|||
<small>Устройство /dev/tty - синоним текущего терминала.</small> |
|||
===== Чтение файла с начала или с конца ===== |
|||
Команды '''head''' и '''tail''' по умолчанию отображают по 10 строк файла с начала или с конца. |
|||
'''Примеры:''' |
|||
<syntaxhighlight lang="bash"> |
|||
head /etc/passwd |
|||
tail /etc/passwd |
|||
</syntaxhighlight> |
|||
===== Поиск текста ===== |
|||
Команда '''grep''' выводит строки, которые совпадают с шаблоном. |
|||
'''Ключи:''' |
|||
* '''-c''' - выводить количество совпавших строк |
|||
* '''-i''' - игнорировать регистр букв |
|||
* '''-v''' - вывод только несовпавших строк |
|||
* '''-l''' - вывод только имен файлов, содержащих совпавшие с шаблоном строки |
|||
'''Примеры:''' |
|||
<syntaxhighlight lang="bash"> |
|||
sudo grep -l mdadm /var/log/* |
|||
</syntaxhighlight> |
</syntaxhighlight> |
||
Версия от 22:55, 24 июля 2013
Учебник - краткий справочник по администрированию Linux систем. Для лучшего усваивания информации, все примеры реккомендуется применять на практике по мере прочтения.
Сценарии и командная оболочка
Основы работы с командной оболочкой
Каналы и потоки
Каждому процессу доступны, как минимум три информационных канала: STDIN, STDOUT и STDERR.
Инструкции по изменению направления передаваемых командой данных:
- < - связывает STDIN с содержимым файла
- > - направляет STDOUT в файл, перезаписывая его
- >> - направляет STDOUT в конец файла
- | - связывает канал STDIN одного процесса с каналом STDOUT другого.
Примеры:
echo "Hello." > filename
rm notfile > filename 1>&2
ps -ef | /usr/
1. Пишет текст "Hello." в файл filename
2. Направляет STDOUT команды rm в файл filename и STDERR направили туда же, куда направлен STDOUT
3. Выводит только те процессы, которые содержат в пути /usr/
Использование переменных
В командной строке возможно объявление, присваивание значений и обращение к переменным. Важно не ставить пробелов до и после "=".
Примеры:
var='value'
echo $value
version=12
echo "Saved ${12}th version"
Фильтры
Разбивка строк на поля
Команда cut выводит выбранные части входных строк.
Ключи:
- -d позволяет изменить разделитель (По умолчанию это символ <Tab>)
- -f позволяет указать, какие поля включить в результат.
Примеры:
cut -d: -f7 < /etc/passwd
Сортировка строк
Команда sort сотрирует входные строки.
Ключи
- -b - игнорировать ведущие пробелы
- -f - сортировать без учета регистра букв
- -k - указать столбцы, формирующие сортировочный ключ
- -n - сравнивать поля как целые числа. По умолчанию они сравниваются лексикографически.
- -r - изменить порядок сортировки на противоположный
- -t - установить разделитель полей (по умолчанию - пробел)
- -u - выводить только уникальные записи
Примеры:
sort -t: -k3,3 -n /etc/group
Подсчет строк, слов и символов
Команда wc считает количество строк, слов и символов в файле. По умолчанию выводит все три значения.
Ключи
- -l - выводит только число строк
- -w - выводит только число слов
- -c - выводит только число символов
Примеры:
sort -t: -k3,3 -n /etc/group
Копирование входного потока в два места
Команда tee отправляет входной поток в STDOUT и в файл.
Примеры:
wc /etc/passwd | tee /dev/tty | wc -l
Устройство /dev/tty - синоним текущего терминала.
Чтение файла с начала или с конца
Команды head и tail по умолчанию отображают по 10 строк файла с начала или с конца.
Примеры:
head /etc/passwd
tail /etc/passwd
Поиск текста
Команда grep выводит строки, которые совпадают с шаблоном.
Ключи:
- -c - выводить количество совпавших строк
- -i - игнорировать регистр букв
- -v - вывод только несовпавших строк
- -l - вывод только имен файлов, содержащих совпавшие с шаблоном строки
Примеры:
sudo grep -l mdadm /var/log/*