UNIX — универсальная среда программирования
UNIX — универсальная среда программирования читать книгу онлайн
В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями
shell.
Для программистов-пользователей операционной системы UNIX.
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Объясните разницу между командами
$ who | sortи
$ who > sortИнтерпретатор
shellshell$ date; whoTue Sep 27 01:03:17 EDT 1983ken tty0 Sep 27 00:43dmr tty1 Sep 26 23:45rob tty2 Sep 26 23:59bwk tty3 Sep 27 00:06jj tty4 Sep 26 23:31you tty5 Sep 26 23:04her tty7 Sep 26 23:34Обе команды будут выполнены (подряд) прежде, чем интерпретатор вновь вернется с приглашением.
Можно также при желании запустить несколько команд одновременно. Предположим, что вы собираетесь заняться длительными вычислениями, например, подсчитать число слов в вашей книге, но не хотите ждать окончания команды
wc$ wc ch* > wc.out &6944$Амперсанд (
&wc.outКаждый экземпляр запущенной программы называется процессом. Число, выдаваемое
shell&Важно понимать различие между программами и процессами. Скажем,
wcwcЕсли конвейер завершается операцией
&$ pr ch * | lpr &6951$то все процессы этого конвейера начинают выполняться сразу, и
&$ waitожидает, пока не завершатся все процессы, запущенные с помощью
&Можно использовать номер процесса, сообщаемый интерпретатором, для остановки процесса, инициированного операцией
&$ kill 6944Если вы забыли номер процесса, команда
pskill 0ps -ag$ ps -ag PID TTY TIME CMD 36 со 6:29 /etc/cron6423 5 0:02 -sh6704 1 0:04 -sh6722 1 0:12 vi paper4430 2 0:03 -sh6612 7 0:03 -sh6628 7 1:13 rogue6643 2 0:02 write dmr 6949 4 0:01 login bimmler6952 5 0:08 pr ch1.1 ch1.2 ch1.3 ch1.46951 5 0:03 lpr6959 5 0:02 ps -ag6844 1 0:02 write rob$Здесь
PIDTTYwhoTIMEpsps(1)Процессы, подобно файлам, имеют иерархическую структуру: у каждого процесса есть родитель и могут быть потомки. Ваша копия интерпретатора
shellshell'!'edshellИногда процесс выполняется столь долго, что вы уже жалеете, что запустили его. Выключите терминал и идите домой, не дожидаясь его окончания. Но если вы выключите терминал или отсоедините его от сети, то процесс будет уничтожен, даже если применен
&nohupВведите
$ nohup <i>команда</i> &и команда будет продолжать выполняться, даже если выйти из системы. Любой результат выполнения команды будет сохранен в файле, называемом
nohup.outnohup
