В составе вашей операционной системы находится более тысячи UNIX-программ. Некоторые из них, например cal, cp, ls, cd, мы уже рассмотрели — это программы, которые выполняют наиболее важные функции фундаментального характера. Сейчас же рассмотрим применение более экзотических программ, которые многие пользователи могут найти интересными.
Использование возможностей UNIX 377
Команда bc
При помощи команды bc можно воспользоваться простеньким калькулятором, за невзрачным интерфейсом которого — а скорее даже за отсутствием интерфейса — скрывается действительно огромный функционал. Под силу калькулятору bc не только вычисление арифметических операций, но и выполнение различных функций, в том числе и логических. При этом все операции также производятся прямо в консоли.
Выражение, которое вы хотите вычислить, необходимо набирать в одну строку. Например, вот так: (2+2) *4. После нажатия клавиши Enter в следующей строке консоли вам будет выведен результат вычислений. Для обозначения арифметических операций используются символы +, —, *, /. Что соответствует знакам сложения, вычитания, умножения и деления. Также можно использовать скобки. Для обозначения формул используются особые конструкции, например sqrt (25) позволяет посчитать квадратный корень из 25. При использовании десятичных дробей отделяйте целую часть от дробной при помощи символа точки. Об остальных особенностях программы читайте в справке: man bc.
Команды top и kill
При помощи программы top вы можете быстро просмотреть, какие программы и процессы сейчас запущены в операционной системе (рис. 10.5). При этом по каждому процессу вы получите дополнительные параметры, такие как нагрузка на центральный процессор, время работы, приоритет, объем занимаемой оперативной памяти и другие. Все эти параметры занесены в удобную таблицу. Что особенно полезно, при помощи программы top можно обнаружить различные фоновые и системные процессы. Обратите внимание на первый столбец таблицы процессов — это PID-идентификатор. По этому коду можно четко указать на какой-либо конкретный процесс — это бывает необходимо при использовании некоторых функций и программ.
Если к команде top добавить ключ —u,таблица процессов будет отсортирована по степени нагрузки приложений на центральный процессор. Если ваш компьютер начал странно себя вести, притормаживать, очень медленно выполнять все действия — при помощи команды top —u вы можете посмотреть, какие процессы используют много процессорного времени. Это позволит вам выяснить, какая программа может являться причиной проблем.
Глава 10
e n n | £ username | — top | - 90x33 | г" | |||||||||
Processes: 64 total, 3 | running, | 61 sleeping, | 249 threads | 11:57:45 ■ | |||||||||
LDad | Avu: B.1B. 8 | 19. | 1 22 CPU | usage: | 1.33% | user. | 6.25* | sys, 92.41* i | |||||
5haredLibs: 16M resident, | 5328К | data | , < | В linkedit. | |||||||||
MemRegions: 6162 total | 2B3M resident, | 29M private, | ЦВМ | shared. | |||||||||
PhysMem: 227M wired, 549M | active, 161M | inactive, 937M used, I62IM | free. | ||||||||||
VM: | 14BG vsize, 111BM | Fra | nework | vsize, | 59473(8) pageins, | 848) pageouts. | |||||||
Networks: packets | 16973/14M in | 15393/1327K | out. | ||||||||||
Disks: 13399/B44M | read | 128953/1372M | written. | ||||||||||
PID | COMMAND | «сто | TIME | гТН | #WO #PDR #MRE | RPRVT | R5HRD | RSIZE | VPRVT | VSIZE | |||
top | IB.2 | 61.32 | 1/1 | 916K | 224K | 1636K | 17M | 237ВМ | |||||
CVMCompiler | 8.8 | ее | Вв. 24 | e | зе | 7192K | 24 BK | 16M | 25M | 239ВМ | |||
taskgated | 8.8 | BB | вв.87 | 41- | 52- | 92BK- | 373BK | 2733K- | 3BM- | 24в6М- | |||
iCal | 8.1 | ее | В1.73 | 2 | ие | 12B | 3592K | + 17M | 25M+ | 2BM | 2457М | ||
bash | 8.8 | eg | 88.86 | e | 2B | 336K | 216K | 11B8K | 17M | 237ВМ | |||
4B3 | login | B.B | ее | 88.89 | l | 664K | 224K | 1964K | 38M | 2391М | |||
4B1 | Terminal | B.2 | ее | В4.64 | 9233K | 19M | 24M | 27M | 2492М | ||||
mdworker | 8.8 | ее | вв.16 | l | И | 1B32K | 12M | 5144 К | 23M | 2411М | |||
25B | mdworker | 8.1 | BB | В3.14 | 4 | l | MS | 5338K | 12M | 3BM | 44M | 2424М | |
AppleSpell | 8.8 8.В 8.8 | ее | вв.61 88.86 88.52 | 2 2 2 | l | 44 35 91 | 2548K 476K 2388K | 12M 216K 11M | 6652K 1692K ИМ | 3BM 22M 32M | 2416М 239ВМ 24 IBM | ||
IBB | com.apple, do | ее | i | 1B1 | |||||||||
TI5witcher | 8.8 | BB | 88.31 | i | BB | 1196K | IBM | 563BK | зам | 2425М | |||
175- | vmware-tools | 8.3 | ее | 27.37 | l | 47M | 9616K | 55M | 65M | 633М | |||
AirPort Base | 8.8 | ее | 88.85 | l | 43BK | 223K | 1332K | 22M | 2391М | ||||
imagent | 8.8 | ее | 88.53 | i | 30 | 1148K | B672K | 48B3K | I5M | 24 IBM | |||
librariand | 8.8 | вв | вв.17 | i | И | 1363K | B952K | B663K | 41M | 2417M | |||
ubd | 8.8 | ее | вв.31 | l | И | 1B52K | 624K | 9672K | 25M | 2395M | |||
warmd_agent | 8.8 | вв | 88.84 | 464K | 223K | 1732K | 23M | 2391M | |||||
fontd | 8.8 | ее | в1.7в | 25B4K | 3596K | 428BK | 54M | 2433M | |||||
pboard | 8.8 | вв | 88.82 | e | 324K | 264K | 952K | 2 BM | 23BBM | ||||
coreaudiod | 8. В | ее | 88.35 | l | 2388K | 256K | 4272K | 32M | 2395M | ||||
Finder | 8.2 | ее | 86.91 | 7933K- 2BM | 24M- | 22M | 2474M| |
Рис. 10.5. Результаты выполнения в консоли команды top
При помощи команды kill вы можете завершить работу какого-либо процесса. При этом в качестве параметра вы должны указать РЮ-идентификатор, который можно узнать при помощи команды top.
Команда open
При помощи команды open можно быстро запустить любое установленное в операционной системе приложение. При этом вам совершенно не требуется знать и задумываться о том, где установлено приложение, — команда правильно сработает в любом случае.
Если ввести в консоли команду open с единственным параметром — именем программы, то операционная система попытается найти эту программу в текущей директории. Однако к команде можно добавить ключ —a, что приведет к тому, что программа будет выполнена вне зависимости от ее расположения на жестком диске.
В качестве дополнительного параметра вы также можете указать имя документа, который будет открыт в программе, например open —a textedit document.docx.
Использование возможностей UNIX 379
Польза от команды open на первый взгляд неочевидна, однако ее использование может быть оправданно при создании автоматизированных сценариев — вместо указания десятков строк кода, достаточно будет одной.
Команда Say
Команда Say позволяет запустить одну из наиболее интересных программ — ваш компьютер может разговаривать с вами. В качестве параметра команды укажите строку, которую ваш Mac должен произнести, и нажмите клавишу Enter. Например, вот так: say Hello, my name is Mac OS X Lion!
Строка будет немедленно прочитана голосом робота из старых фантастических фильмов. Развлекаться с командой Say можно долго и весело, ведь программа скажет все, что вы пожелаете.