Командная строка Linux: Полное руководство. 2 изд

Командная строка Linux: Полное руководство. 2 изд

Командная строка Linux: Полное руководство. 2 изд
Автор: Шоттс Уильям
Дата выхода: 2020
Издательство: Питер
Количество страниц: 544
Размер файла: 2.5 MB
Тип файла: PDF
Добавил: katyaprogamer
 Проверить на вирусы

Об авторе....24

О научном редакторе....25

Благодарности....26

К первому изданию....26

Ко второму изданию....27

Введение....28

Зачем нужна командная строка?....29

О чем эта книга....29

Кому адресована эта книга....30

Что дается в этой книге....31

Как читать эту книгу....31

Предварительные условия....32

Что нового во втором издании....33

Ваши отзывы важны для нас!....33

От издательства....34

Часть I. КОМАНДНАЯ ОБОЛОЧКА....35

Глава 1. Что такое командная оболочка....36

Эмуляторы терминалов....36

Первые удары по клавишам....36

История команд....38

Управление курсором....38

Некоторые простые команды....38

Завершение сеанса работы с терминалом....39

Заключение....40

Глава 2. Навигация....41

Дерево каталогов файловой системы....41

Текущий рабочий каталог....42

Вывод содержимого каталога....43

Смена текущего рабочего каталога....43

Абсолютные пути....43

Относительные пути....44

Некоторые полезные сокращения....46

Заключение....46

Глава 3. Исследование системы....47

Любопытные возможности ls....47

Параметры и аргументы....48

Пристальный взгляд на длинный формат....49

Определение типов файлов командой file....50

Просмотр содержимого файлов командой less....51

Обзорное путешествие....53

Символические ссылки....57

Жесткие ссылки....58

Заключение....58

Глава 4. Операции с файлами и каталогами....59

Групповые символы....60

mkdir — создание каталогов....62

cp — копирование файлов и каталогов....63

Параметры команды cp и примеры ее использования....63

mv — перемещение и переименование файлов....64

Параметры команды mv и примеры ее использования....64

rm — удаление файлов и каталогов....65

Параметры команды rm и примеры ее использования....65

ln — создание ссылок....67

Жесткие ссылки....67

Символические ссылки....68

Постройка песочницы....68

Создание каталогов....68

Копирование файлов....69

Перемещение и переименование файлов....70

Создание жестких ссылок....71

Создание символических ссылок....72

Удаление файлов и каталогов....73

Заключение....75

Глава 5. Работа с командами....76

Что такое команды?....76

Идентификация команд....77

type — получение типа команды....77

which — определение местоположения выполняемого файла....77

Получение документации с описанием команд....78

help — получение справки для встроенных команд....78

--help — вывод инструкции по использованию....80

man — вывод страниц справочного руководства....80

apropos — вывод списка подходящих команд....82

whatis — вывод очень краткого описания команды....83

info — вывод записи из справочного руководства Info....83

README и другие файлы с описанием программ....85

Создание собственных команд с помощью alias....85

Заключение....87

Глава 6. Перенаправление....88

Стандартный ввод, вывод и вывод ошибок....88

Перенаправление стандартного вывода....89

Перенаправление стандартного вывода ошибок....91

Перенаправление стандартного вывода и стандартного вывода ошибок в один файл....91

Удаление нежелательного вывода....92

Перенаправление стандартного ввода....93

cat — объединение файлов....93

Конвейеры....95

Фильтры....95

uniq — поиск или удаление повторяющихся строк....96

wc — вывод числа строк, слов и байтов....97

grep — поиск строк, соответствующих шаблону....97

head/tail — вывод первых/последних строк из файлов....98

tee — чтение со стандартного ввода и запись в стандартный вывод и в файлы....99

Заключение....101

Глава 7. Взгляд на мир глазами командной оболочки....102

Подстановка....102

Подстановка путей....103

Подстановка тильды....104

Подстановка результатов арифметических выражений....105

Подстановка фигурных скобок....106

Подстановка параметров....107

Подстановка команд....108

Экранирование....109

Двойные кавычки....109

Одиночные кавычки....111

Экранирование символов....111

Управляющие последовательности....112

Заключение....113

Глава 8. Продвинутые приемы работы с клавиатурой....114

Редактирование командной строки....114

Перемещение курсора....115

Изменение текста....115

Вырезание и вставка (удаление и возврат) текста....117

Дополнение....117

Использование истории....119

Поиск в истории....119

Подстановка записей истории....121

Заключение....122

Глава 9. Привилегии....123

Владельцы, члены группы и все остальные....124

Чтение, запись и выполнение....126

chmod — изменение режима доступа к файлу....128

Установка режима доступа к файлу с помощью графического интерфейса....131

umask — определение разрешений доступа к файлам по умолчанию....132

Некоторые специальные разрешения....134

Изменение идентичности....135

su — запуск командной оболочки с подстановкой идентификаторов пользователя и группы....136

sudo — выполнение команды от имени другого пользователя....137

chown — изменение владельца и группы файла....139

chgrp — изменение группы файла....140

Использование привилегий....140

Изменение своего пароля....142

Заключение....143

Глава 10. Процессы....144

Как действует процесс....144

Просмотр списка процессов....145

Просмотр состояния процессов в динамике с помощью top....148

Управление процессами....150

Прерывание процесса....151

Перевод процессов в фоновый режим....151

Возврат процесса на передний план....152

Приостановка процесса....152

Сигналы....153

Посылка сигналов процессам командой kill....154

Посылка сигналов нескольким процессам с помощью killall....156

Остановка системы....157

Другие команды управления процессами....158

Заключение....158

Часть II. ОКРУЖЕНИЕ И НАСТРОЙКА....159

Глава 11. Окружение....160

Что хранится в окружении?....160

Исследование окружения....161

Некоторые интересные переменные....162

Как устанавливается окружение?....163

Что находится в файлах запуска?....165

Изменение окружения....167

Какие файлы следует изменять?....167

Текстовые редакторы....167

Использование текстового редактора....168

Активация изменений....172

Заключение....172

Глава 12. Плавное введение в vi....173

Зачем осваивать vi....173

Немного предыстории....174

Запуск и завершение vi....174

Режимы редактирования....176

Переход в режим вставки....177

Сохранение изменений....177

Перемещение курсора....178

Основы редактирования....179

Добавление текста в конец....179

Вставка строки....180

Удаление текста....181

Вырезание, копирование и вставка текста....182

Объединение строк....183

Поиск и замена....184

Поиск в пределах строки....184

Поиск во всем файле....184

Глобальный поиск и замена....185

Редактирование нескольких файлов....186

Переключение между файлами....187

Открытие дополнительных файлов для редактирования....188

Копирование содержимого из одного файла в другой....188

Вставка целого файла в другой файл....189

Сохранение результатов работы....190

Заключение....191

Глава 13. Настройка приглашения к вводу....192

Устройство строки приглашения к вводу....192

Альтернативные варианты оформления приглашения....194

Добавление цвета....196

Перемещение курсора....198

Сохранение определения приглашения....200

Заключение....200

Часть III. ТИПИЧНЫЕ ЗАДАЧИ И ОСНОВНЫЕ ИНСТРУМЕНТЫ....201

Глава 14. Управление пакетами....202

Системы пакетов....203

Как действует система пакетов....203

Файлы пакетов....203

Репозитории....204

Зависимости....205

Высоко- и низкоуровневые инструменты управления пакетами....205

Типичные задачи управления пакетами....206

Поиск пакета в репозитории....206

Установка пакета из репозитория....206

Установка пакета из файла пакета....207

Удаление пакета....207

Обновление пакетов из репозитория....208

Обновление пакета из файла пакета....208

Список установленных пакетов....209

Определение, установлен ли пакет....209

Вывод информации об установленном пакете....209

Поиск пакета по установленному файлу....210

Заключение....210

Глава 15. Устройства хранения....212

Монтирование и размонтирование устройств хранения....213

Просмотр списка смонтированных файловых систем....214

Определение названий устройств....218

Создание новых файловых систем....221

Управление разделами с помощью fdisk....221

Создание новой файловой системы с помощью mkfs....224

Проверка и восстановление файловой системы....225

Непосредственное перемещение данных между устройствами....226

Создание образа компакт-диска....226

Создание образа-копии компакт-диска....227

Создание образа из коллекции файлов....227

Запись образа компакт-диска....228

Непосредственное монтирование файла ISO-образа....228

Очистка перезаписываемых компакт-дисков....228

Запись образа....228

Заключительное замечание....229

Дополнительные сведения....229

Глава 16. Сети....231

Исследование и мониторинг сети....232

ping....232

traceroute....233

ip....234

netstat....235

Передача файлов по сети....237

ftp....237

lftp — более удачная версия ftp....239

wget....239

Безопасные взаимодействия с удаленными узлами....240

ssh....240

scp и sftp....245

Заключение....246

Глава 17. Поиск файлов....247

locate — простой способ поиска файлов....247

find — сложный способ поиска файлов....249

Проверки....250

Операторы....253

Предопределенные операции....255

Операции, определяемые пользователем....257

Увеличение эффективности....258

xargs....259

Возвращаемся в песочницу....260

Параметры....262

Заключение....263

Глава 18. Архивация и резервное копирование....264

Сжатие файлов....264

gzip....265

bzip2....268

Архивирование файлов....268

tar....269

zip....274

Синхронизация файлов и каталогов....276

Использование rsync для копирования по сети....279

Заключение....280

Глава 19. Регулярные выражения....281

Что такое регулярные выражения?....281

grep....282

Метасимволы и литералы....284

Любой символ....284

Якоря....285

Выражения в квадратных скобках и классы символов....286

Отрицание....287

Традиционные диапазоны символов....287

Классы символов POSIX....288

Простые и расширенные регулярные выражения POSIX....291

Чередование....293

Квантификаторы....295

? — совпадение с элементом ноль или один раз....295

* — совпадение с элементом ноль или более раз....295

+ — совпадение с элементом один или более раз....296

{ } — совпадение с элементом определенное число раз....297

Практические примеры применения регулярных выражений....298

Проверка списка телефонов с помощью grep....298

Поиск необычных имен файлов с помощью find....299

Поиск файлов с помощью locate....299

Поиск текста в less и vim....300

Заключение....301

Глава 20. Обработка текста....303

Области применения текста....304

Документы....304

Веб-страницы....304

Электронная почта....304

Вывод на принтер....304

Исходный код программ....305

А вот и наши старые знакомые!....305

cat....305

sort....307

uniq — выявление или удаление повторяющихся строк....314

Нарезка и перетасовка текста....316

cut — удаление фрагментов из всех строк в файлах....316

paste — слияние строк из файлов....319

join — объединение строк из двух файлов по общему полю....321

Сравнение текста....323

comm — построчное сравнение двух сортированных файлов....323

diff — построчное сравнение файлов....324

patch — применение diff-файла к оригиналу....327

Редактирование на лету....328

tr — перекодирование или удаление символов....328

sed — потоковый редактор для фильтрации и преобразования текста....331

aspell — интерактивная проверка орфографии....339

Заключение....343

Дополнительное задание....343

Глава 21. Форматирование вывода....344

Инструменты простого форматирования....344

nl — нумерация строк....345

fold — перенос строк после указанной длины....348

fmt — простое форматирование текста....349

pr — форматирование текста для печати....352

printf — форматирование и вывод данных....353

Системы форматирования документов....357

groff....358

Заключение....364

Глава 22. Печать....365

Краткая история поддержки печати....365

Печать в ночное время....366

Символьные принтеры....366

Графические принтеры....367

Печать в Linux....369

Подготовка файлов к печати....369

pr — преобразование текстовых файлов для печати....369

Отправка задания печати на принтер....371

lpr — печать файлов (в стиле Berkeley)....371

lp — печать файлов (в стиле System V)....372

Еще одна возможность: a2ps....373

Наблюдение за заданиями печати и управление ими....376

lpstat — вывод информации о состоянии принтера....376

lpq — вывод информации о состоянии очереди печати....377

lprm и cancel — отмена заданий печати....378

Заключение....378

Глава 23. Компиляция программ....379

Что такое компиляция?....380

Все ли программы компилируются?....381

Компиляция программ на C....382

Получение исходного кода....382

Исследование дерева исходных текстов....384

Сборка программ....386

Установка программ....390

Заключение....390

Часть IV. СЦЕНАРИИ КОМАНДНОЙ ОБОЛОЧКИ....391

Глава 24. Создание первого сценария командной оболочки....392

Что такое сценарии командной оболочки....392

Как написать сценарий командной оболочки....393

Формат файла сценария....393

Разрешения на выполнение....394

Местоположение файла сценария....394

Выбор местоположения для сценариев....396

Дополнительные хитрости по оформлению....397

Длинные имена параметров....397

Отступы и продолжения строк....397

Заключение....398

Глава 25. Начало проекта....399

Этап первый: минимальный документ....399

Этап второй: добавление некоторых данных....401

Переменные и константы....402

Присваивание значений переменным и константам....405

Встроенные документы....407

Заключение....409

Глава 26. Проектирование сверху вниз....410

Функции командной оболочки....411

Локальные переменные....414

Постоянное опробование сценария....416

Заключение....419

Глава 27. Управление потоком выполнения: ветвление при помощи if....420

Инструкция if....420

Код завершения....421

Команда test....423

Выражения для проверки файлов....423

Выражения для проверки строк....426

Выражения для проверки целых чисел....428

Более современная версия команды test....429

(( )) — для проверки целых чисел....430

Объединение выражений....431

Операторы управления: еще один способ ветвления....434

Заключение....435

Глава 28. Чтение ввода с клавиатуры....437

read — чтение значений со стандартного ввода....438

Параметры....440

Выделение полей в строке ввода с помощью IFS....442

Проверка ввода....444

Меню....446

Заключение....448

Дополнительные сведения....448

Глава 29. Управление потоком выполнения: циклы while и until....449

Циклы....449

while....450

Прерывание цикла....452

until....454

Чтение файлов в циклах....454

Заключение....455

Глава 30. Поиск и устранение ошибок....456

Синтаксические ошибки....456

Отсутствующие кавычки....457

Отсутствующие или неожиданные лексемы....458

Непредвиденная подстановка....458

Логические ошибки....460

Защитное программирование....460

Будьте внимательны к именам файлов....462

Проверка ввода....463

Тестирование....464

Комплекты тестов....465

Отладка....465

Поиск проблемной области....465

Трассировка....466

Исследование значений в процессе выполнения....468

Заключение....469

Глава 31. Управление потоком выполнения: ветвление с помощью case....470

Команда case....470

Шаблоны....472

Выполнение нескольких вариантов....474

Заключение....476

Глава 32. Позиционные параметры....477

Доступ к командной строке....477

Определение числа аргументов....478

shift — доступ к множеству аргументов....479

Простые приложения....480

Использование позиционных параметров в функциях....481

Обработка позиционных параметров скопом....482

Более сложное приложение....484

Заключение....487

Глава 33. Управление потоком выполнения: цикл for....491

for: традиционная форма....491

for: форма в стиле языка C....494

Заключение....496

Глава 34. Строки и числа....498

Подстановка параметров....498

Простые параметры....499

Подстановка пустых переменных....499

Получение имен переменных....501

Операции со строками....502

Преобразование регистра символов....505

Вычисление и подстановка арифметических выражений....507

Основание системы счисления....508

Унарные операторы....508

Простая арифметика....508

Присваивание....510

Битовые операции....512

Логические операторы....513

bc — язык калькулятора для вычислений с произвольной точностью....516

Применение bc....517

Пример сценария....518

Заключение....519

Дополнительные сведения....519

Глава 35. Массивы....520

Что такое массивы?....520

Создание массива....521

Присваивание значений массиву....521

Доступ к элементам массива....522

Операции с массивами....524

Вывод содержимого всего массива....524

Определение числа элементов в массиве....525

Поиск используемых индексов....526

Добавление элементов в конец массива....526

Сортировка массива....526

Удаление массива....527

Ассоциативные массивы....528

Заключение....529

Глава 36. Экзотика....530

Группы команд и подоболочки....530

Подстановка процессов....534

Ловушки....536

Асинхронное выполнение с командой wait....540

Именованные каналы....541

Создание именованного канала....542

Использование именованных каналов....542

Заключение....543

Международный бестселлер «Командная строка Linux» поможет преодолеть путь от первых робких щелчков по клавишам до уверенного создания полноценных программ для последней версии bash — наиболее популярной командной оболочки Linux.

Второе издание рассказывает о новых возможностях bash 4.x, таких как новые операторы перенаправления и операции подстановки. В разделе, посвященном сценариям оболочки, рассматриваются современные надежные методы программирования, способы предотвращения типичных ошибок и потенциально опасных ситуаций.

Вы освоите неустаревающие навыки владения командной строкой: навигацию по файловой системе, настройку окружения, объединение команд в цепочки и сопоставление с регулярными выражениями. Вы постигнете философию, лежащую в основе многих инструментов командной строки, разберетесь с богатым наследием, полученным от суперкомпьютеров с Unix, и приобщитесь к знаниям, накопленным поколениями гуру, исключивших мышь из своего арсенала инструментов.

Из коротких и простых глав, вы узнаете, как:

  • создавать и удалять файлы, каталоги и символические ссылки;
  • администрировать свою систему, от работы с сетью до установки пакетов и управления процессами;
  • использовать стандартный ввод и вывод, перенаправление и конвейеры;
  • редактировать файлы с помощью vi, самого популярного в мире текстового редактора;
  • писать сценарии командной оболочки для автоматизации рутинных задач;
  • манипулировать содержимым текстовых файлов с помощью cut, paste, grep, patch и sed.

Преодолев первый «шок командной оболочки», вы поймете, насколько естественным и логичным является этот способ взаимодействия с компьютером.


Похожее:

Список отзывов:

Нет отзывов к книге.