Другие инструменты и информация
Заключительная часть к пониманию сценариев оболочки (и к пониманию сценариев оболочки других людей) постигает использование (и злоупотребление) инструментов командной строки. Сценарии, перечисленные в этом разделе, обычно используются в сценариях оболочки.
Каждый из этих инструментов имеет свой собственный синтаксис и свои собственные причуды. Это непрактично для объяснения их всех подробно. Однако эта глава кратко выделяет некоторые общие инструменты и включает ссылки к их страницам руководства для нахождения дополнительной информации о них.
Общие средства
Инструменты в этом разделе являются общими средствами, не вписывающимися ни в какие широкие категории.
Инструмент | Описание |
---|---|
Короткий для “основного калькулятора”, выполняет математические операции с плавающей точкой и различные другие полезные вычисления, которые не практичны с основной математической поддержкой оболочки. | |
Используемый для работы с требующими трудноуправляемыми инструментами командной строки более сложное взаимодействие, чем возможно с единственным каналом. Например, Вы могли использовать | |
Оценивает числовое выражение. Эта команда поддерживает основную целочисленную математику и часто используется для постепенного увеличения итератора цикла. | |
Возвращает (ненулевой) статус выхода отказа. | |
Выполнение пауз сроком на время (измеренный в секундах). | |
Возвращает успешный статус выхода ( |
Инструменты обработки текста
Инструменты, перечисленные в этом разделе, обычно используются для обработки текста. Если не указано иное, эти команды берут ввод от стандартного ввода (если применимо) и распечатывают результат к стандартному выводу.
Многие из этих команд используют регулярные выражения. Синтаксис регулярных выражений описан в Освобожденных Регулярных выражениях. Поскольку дополнительное использование отмечает определенный для отдельных приложений, см. страницу руководства для самой команды.
Инструмент | Описание |
---|---|
Короткий для Aho, Вайнбергера и Кернигана; язык программирования сам по себе, используемый для обработки текста с помощью регулярных выражений. Этот инструмент описан далее в Как Неловкий. | |
Короткий для Глобальной переменной [поиск] Регулярных выражений и Печати; строки печати, соответствующие входной набор (дополнительно с конкретным количеством строк продвижения и/или запаздывающего контекста). Общие варианты включают | |
Распечатывает первые несколько строк от файла (или стандартный ввод). Число строк может быть указано с | |
Язык программирования, сценарии которого могут быть легко встроены в сценарии оболочки с помощью | |
Короткий для потокового редактора; выполняет более сложные текстовые замены с помощью регулярных выражений. | |
Сортирует серию строк. По умолчанию, | |
Распечатывает последние несколько строк от файла (или стандартный ввод). Число строк может быть указано с | |
Ввод стандарта копий к стандартному выводу, сохраняя копию в файл (или многократные файлы). | |
Замены один символ с другим. | |
Отфильтровывает смежные строки то соответствие. |
Команды файла
Эти команды используются для управления файлами, включая переименование, перемещение, и удаление файлов, изменение полномочий, создание каталогов, перечисление файлов, и т.д.
Инструмент | Описание |
---|---|
Изменяет текущий рабочий каталог. Команда | |
Изменения отмечают на файле или каталоге. Большинство этих флагов относительно неясно. Для изменения флагов полномочий использовать | |
Изменяет группу ID, связанный с файлом или каталогом. | |
Режимы изменений (биты полномочий) или списки управления доступом (ACLs) на файле или каталоге. | |
Изменяет владение файлов или каталогов. Эта команда может также изменить группу при желании. | |
Списки или поиски файлов в каталоге и его подкаталогах. | |
Создает символьные ссылки и жесткие ссылки на файлы или каталоги. | |
Перечисляет файлы в текущем каталоге. | |
Создает новые каталоги. | |
Создает именованные каналы для коммуникации. Этот инструмент полезен в ситуациях, где каналы не могут быть установлены при выполнении команд, таких как подключение двух инструментов круговым способом. | |
Перемещения или переименовывают файлы и каталоги. | |
Удаляет файлы и каталоги | |
Печать детализировала информацию о статусе файла, такую как тип файла, даты последнего изменения, и т.д. | |
Эти инструменты, установленные как часть установки Инструментов Разработчика, полезны для получения и управления вещами как расширенные атрибуты. Знайте, что, если Вы пишете сценарий, зависящий от них, это потребует, чтобы были установлены Инструменты Разработчика. |
Дисковые команды
Инструменты, перечисленные в этом разделе, выполняют операции на дисках, файловых системах, таблицах разделов и образах дисков.
Инструмент | Описание |
---|---|
Монтирует и размонтировал объемы и диски, проверяет диски на непротиворечивость, стирает оптические диски, вытирает диски безопасностью вытрите, диски разделов, управляет наборами RAID, и т.д. Эта утилита является дубликатом командной строки к приложению Дисковой утилиты. | |
Проверяет файловую систему на непротиворечивость. | |
Создает и управляет образами дисков, включая присоединение образов дисков для монтирования. | |
(Также | Монтирует и размонтировал объемы. При размонтировании автосмонтированных объемов за спиной дисковой арбитражной системы можно вызвать странное поведение в GUI. Используйте эти команды с осторожностью, и при попытке размонтировать автосмонтированный объем, использовать |
Архивация и команды сжатия
Инструменты в этом разделе позволяют Вам создавать архивные файлы, содержащие копии многократных файлов для простоты распределения, для извлечения содержания архивных файлов, и сжатия и файлов распаковки для сокращения использования дискового пространства или использования сети.
Инструменты сжатия могут также обычно использоваться с каналами для сжатия данных, не храня его в файле. Архивные инструменты могут обычно использовать стандартный ввод или вывод для чтения или записи самого архива, но не содержания этого. funzip
вариант инструмента архивации zip может использоваться с двумя каналами, но может только извлечь первый файл из архива.
Инструмент | Описание |
---|---|
| Сжатия и файлы распаковок с помощью текстового алгоритма сжатия блочной сортировки Нор-Wheeler и Кодирования методом Хаффмана. Этот инструмент сжатия берет несколько дольше, чем другие инструменты такой как Файлы, создаваемые с этим инструментом, заканчиваются |
Сжатия и файлы распаковок с помощью алгоритма сжатия Lempel-Ziv-Welsh (LZW). Этот формат сжатия в основном упал из популярности. Файлы, создаваемые этим инструментом, заканчиваются | |
Сжатия, распаковывает и распечатывает содержание файлов в Zip GNU (основанный на LZ77) формат. Эта схема сжатия нравится пользователям UNIX и пользователям Linux. В то время как на основе той же базовой схемы сжатия, Zip GNU и форматы файлов ZIP не являются тем же. Формат файла ZIP может содержать многократные файлы, в то время как формат файла Gzip может только содержать единственный файл (хотя этот единственный файл может быть a Файлы, создаваемые этим инструментом, заканчиваются | |
Сжатия и распаковывают файлы, и каталоги с помощью формата файла ZIP (выкачайте, на основе LZ77 и Кодирования методом Хаффмана). Этот формат файла обычно используется для обмена сжатыми файлами с пользователями Windows. Файлы, создаваемые этим инструментом, заканчиваются | |
Создает, добавляет к и извлекает многофайловые архивы в Файлы, создаваемые этим инструментом, заканчиваются |
Для получения дополнительной информации
Существует почти неограниченное количество инструментов, которые Вы могли бы счесть полезным при записи сценариев оболочки. Это всего несколько более общих. Можно узнать об инструментах командной строки, поставляющих как часть OS X путем взгляда в страницах справочника, любой онлайн (Страницы справочника OS X) или при помощи man
команда на командной строке.
Для справки, находящей, что команда выполняет определенную задачу, можно или искать интерактивную версию страниц справочника или использовать apropos
команда на командной строке.
Счастливые сценарии!