pwd ls a shell builtin
$ type times
times ls a shell builtin
$ type cp
cp is /bin/cp
Команда ulimit используется для задания и отображения предельных значений, применяемых при выполнении сценария. Обычно эта команда находится в файле /etc/profile, но вы можете использовать ее для своих нужд из текущего интерпретатора shell либо из вашего файла .profile. Общий формат команды:
ulimit опции
Ниже приводится несколько опций команды ulimit; здесь рассматриваются наиболее часто применяемые опции:
Опция | Значение |
-a | Отображает текущие ограничения |
-c | Ограничивает размер дампов ядра |
-f | Ограничивает N блоками размер выходного файла, который создается исполняемым процессом |
Ниже указаны значения, полученные при выполнении команды ulimit:
$ ulimit -a
core file size (blocks) 10000OO
data seg size (kbytes) unlimited
file size (blocks] unlimited
max memory size (kbytes) unlimited
stack size (kbytes) 8192
cpu time (seconds] unlimited
max user processes 256
pipe size (512 bytes) 8
open files 256
virtual memory (kbytes) 2105343
Чтобы отключить выгрузку файлов ядра, установите нулевое значение для команды.
$ ulimit -с 0
$
$ ulimit -a
core file size (blocks) 0
data seg size (kbytes) unlimited
file size (blocks) unlimited
max memory size (kbytes] unlimited
stack size (kbytes) 8192
cpu time (seconds) unlimited
max user processes 256
pipe size (512 bytes) 8
open files 256
virtual memory (Kbytes) 2105343
Команда wait применяется для ожидания завершения одного из дочерних процессов. Команду wait можно определить с помощью процесса ID. Если этого не сделать, ожидание будет длиться до завершения всех дочерних процессов.
Формат команды ожидания завершения всех дочерних процессов:
$ wait
24.2. Заключение
В главе содержится обзор всех команд, встроенных в интерпретатор shell. Некоторые из них рассматривались ранее; здесь же подробно обсуждается применение этих команд
Часть 5
Совершенствование навыков по написанию сценариев
Дальнейшее изучение конструкции "документ здесь"
При рассмотрении стандартного потока ввода и вывода, а также циклов while уже обсуждалась конструкция "документ здесь". Описывались методика пересылки электронной почты и способы формирования экранов меню, но существуют и другие способы применения конструкции "документ здесь".
В этой главе рассматриваются следующие темы:
• скоростной метод создания файла;
• меню с автоматизированными возможностями поиска;
• передача файлов с помощью протокола ftp;
• подключение к другим системам приложений.
Формат конструкции "документ здесь":
команда << слово
текст
слово
Чтобы вспомнить методы применения конструкции "документ здесь", рассмотрим принципы ее работы. Когда интерпретатор shell встречает символ <<, он ожидает встретить за ним разделитель (слово). Все, что следует за этим словом до следующего слова в строке, воспринимается как поток ввода. В качестве разделителя может служить любое слово.
Конструкция "документ здесь" может применяться при создании файла, выводе на экран списка файлов, сортировке списка файлов и при создании экранов.
25.1 Быстрый метод формирования файла
Ниже рассматривается быстрый метод формирования файла, содержащего некоторый текст:
$ cat >> myfile << NEWFILE
Введите какой‑нибудь текст, а по завершении ввода в новой строке просто укажите слово NEWFILE. В результате образуется файл myfile, содержащий этот текст.
Если файл с указанным именем существует, то вводимое содержимое добавляется в исходный файл.
При использовании клавиши [Tab] следует учитывать, что более ранние версии
командного интерпретатора не сохраняют значения символов табуляции. Для устранения этого недостатка введите дефис после двух угловых левых скобок, например:
cat >> myfile << - NEWFILE
25.2. Скоростной способ вывода документа на печать