Уильям Шоттс - Командная строка Linux. Полное руководство
- Название:Командная строка Linux. Полное руководство
- Автор:
- Жанр:
- Издательство:Питер
- Год:2016
- ISBN:978-5-496-02303-0
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Уильям Шоттс - Командная строка Linux. Полное руководство краткое содержание
Книга Уильяма Шоттса "Командная строка Linux: Полное руководство" представляет обширный обзор «жизни» в командной строке Linux. В отличие от других книг, посвященных одной программе, такой как командный интерпретатор bash, в этой книге автор попытается рассказать, как поладить с интерфейсом командной строки в более широком аспекте. Как он работает? Что можно сделать с его помощью? Как лучше его использовать? Эта книга не об администрировании системы Linux. Эта книга исключительно о Linux.
В книге материал излагается в тщательно выверенной последовательности, как в школе, где учитель руководит вами и направляет вас по правильному пути. Многие авторы грешат тем, что подают материал в «систематическом» порядке, имеющем определенный смысл для писателя, но способном вызывать путаницу у начинающих пользователей. Цель данной книги — познакомить вас с идеологией Unix, которая отличается от идеологии Windows.
Командная строка Linux. Полное руководство - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
[me@linuxbox ~]$ alias
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
Существует одна маленькая проблема, связанная с определением псевдонимов в командной строке. Они исчезают по завершении сеанса работы с командной оболочкой. В одной из последующих глав будет показано, как добавить определения псевдонимов в файлы, чтобы они восстанавливались при каждом запуске командной оболочки, а пока насладимся нашим первым, пусть и крошечным, шагом в мир программирования на языке командной оболочки!
Навестите старых друзей
Теперь, когда мы узнали, как найти документацию с описанием команд, поупражняйтесь самостоятельно и найдите описание всех команд, встретившихся вам в этой книге. Познакомьтесь с их дополнительными параметрами и опробуйте их!
2Некоторые разделы справки Linux переведены на русский язык, а некоторые — нет. Для переведенных разделов мы будем приводить русский текст, выводимый системой на консоль, для непереведенных — указывать перевод в сносках. — Примеч. ред.
3Перевод:
Делает указанный каталог DIR текущим. Если каталог DIR не указан, по умолчанию используется значение переменной $HOME. Переменная CDPATH определяет пути поиска каталога, содержащего DIR. Альтернативные имена каталогов в CDPATH отделяются друг от друга двоеточием (:). Пустое имя каталога соответствует текущему каталогу, то есть `.'. Если DIR начинается с символа «слеш» (/), переменная CDPATH не используется. Если каталог не найден и установлен параметр `cdable_vars' командной оболочки, выполняется попытка интерпретировать слово как имя переменной. Если эта переменная имеет значение, тогда команда cd использует значение этой переменной. Параметр –P требует использовать физическую структуру каталогов вместо следования по символическим ссылкам; параметр -L требует следовать по символическим ссылкам.
4Перевод:
create_floppy_devices (8) - вызов udev для создания всех возможных устройств
накопителей на гибких дисках на основе типа CMOS
fdformat (8) - выполняет низкоуровневое форматирование гибкого диска
floppy (8) - выполняет форматирование гибких дисков
gfloppy (1) - простая программа форматирования гибких дисков для GNOME
mbadblocks (1) - тестирует гибкий диск и помечает плохие
блоки в FAT
mformat (1) - создает файловую систему MSDOS на гибком диске,
отформатированном на низком уровне
5Перевод:
Файл: coreutils.info, Узел: команда ls, Следующий: команда dir, Up:
Содержимое каталога
10.1 `ls’: выводит содержимое каталога
==================================
Программа `ls’ выводит информацию о файлах (любого типа, включая
каталоги). Параметры и аргументы могут смешиваться произвольно, как
обычно.
Для аргументов без параметров, представляющих каталоги, по умолчанию `ls’
выводит содержимое каталогов нерекурсивно и пропускает файлы с именами,
начинающимися с `.’. Для других аргументов без параметров по умолчанию `ls’
выводит только указанный файл. В отсутствие аргументов без параметров `ls’ выводит содержимое текущего каталога, действуя, как если бы была вызвана с единственным аргументом `.’.
По умолчанию вывод сортируется в алфавитном порядке, согласно
--zz-Info: (coreutils.info.gz)команда ls, 63 строки --Top----------
6. Перенаправление
В этом уроке мы познакомимся с самой крутой возможностью командной строки: перенаправлением ввода/вывода. Благодаря этой возможности мы сможем перенаправлять ввод и вывод команд из файлов и в файлы, а также составлять из команд целые конвейеры. Для демонстрации этой возможности введем в обиход следующие команды:
• cat — объединяет файлы.
• sort — сортирует строки текста.
• uniq — сообщает о повторяющихся строках или удаляет их.
• wc — выводит число символов перевода строки, слов и байтов в каждом указанном файле.
• grep — находит и выводит строки, соответствующие шаблону.
• head — выводит первые строки из файла.
• tail — выводит последние строки из файла.
• tee — читает данные со стандартного ввода и записывает в стандартный вывод и в файлы.
Стандартный ввод, вывод и вывод ошибок
Многие программы, которыми мы уже пользовались, что-нибудь выводят на консоль. Этот вывод часто делится на два типа. Первый — результаты работы программы, то есть данные, для получения которых создавалась программа. Второй — сообщения о состоянии или об ошибках, извещающие нас о самочувствии программы. Например, если взглянуть на вывод программы ls, можно увидеть, что она выводит на экран результаты своей работы и иногда сообщения об ошибках.
Согласно центральной идее Unix, что «все сущее есть файл», такие программы, как ls, в действительности выводят свои результаты в специальный файл, который называется стандартным выводом (standard output, часто обозначается как stdout), а сообщения о состоянии — в специальный файл стандартный вывод ошибок (standard error, stderr). По умолчанию оба файла, стандартный вывод и стандартный вывод ошибок, связаны с экраном и не сохраняются на диске.
Кроме того, многие программы принимают ввод из специального файла с названием стандартный ввод (standard input, stdin), который по умолчанию связан с клавиатурой.
Механизм перенаправления ввода/вывода позволяет изменять направление вывода и ввода. Обычно вывод осуществляется на экран, а ввод — с клавиатуры, но механизм перенаправления ввода/вывода позволяет изменить этот порядок вещей.
Перенаправление стандартного вывода
Механизм перенаправления ввода/вывода позволяет явно указать, куда должен осуществляться стандартный вывод. Чтобы перенаправить стандартный вывод в другой файл вместо экрана, нужно добавить в команду оператор перенаправления > и имя файла. Где это может пригодиться? Иногда полезно сохранить вывод команды в файл. Например, можно сообщить командной оболочке, что она должна направить вывод команды ls в файл ls-output.txt вместо экрана:
[me@linuxbox ~]$ ls -l /usr/bin > ls-output.txt
Здесь мы создали длинный список содержимого файла /usr/bin и отправили результаты в файл ls-output.txt. Давайте исследуем перенаправленный вывод команды:
[me@linuxbox ~]$ ls -l ls-output.txt
-rw-rw-r-- 1 me me 167878 2012-02-01 15:07 ls-output.txt
Неплохой файл получился. Если вывести содержимое ls-output.txt с помощью команды less, можно увидеть, что он действительно содержит результаты работы команды ls:
[me@linuxbox ~]$ less ls-output.txt
Давайте теперь повторим эксперимент с перенаправлением, но с небольшим усложнением: укажем имя несуществующего каталога:
[me@linuxbox ~]$ ls -l /bin/usr > ls-output.txt
ls: невозможно получить доступ к '/bin/usr': Нет такого файла или каталога
Мы получили сообщение об ошибке. Все логично — мы указали несуществующий каталог /bin/usr, но почему же сообщение появилось на экране, а не было перенаправлено в файл ls-output.txt? Дело в том, что программа ls не выводит сообщения об ошибках в стандартный вывод. Как и многие добропорядочные программы для Unix, она выводит сообщения об ошибках в стандартный поток вывода ошибок. Поскольку мы перенаправили только стандартный вывод, а стандартный вывод ошибок — нет, сообщение об ошибке появилось на экране. Как перенаправить стандартный вывод ошибок, будет показано чуть ниже, но перед этим посмотрим, что произошло с нашим файлом:
Читать дальшеИнтервал:
Закладка: