Linux и UNIX: программирование в shell. Руководство разработчика
Linux и UNIX: программирование в shell. Руководство разработчика читать книгу онлайн
Данная книга является практическим руководством по программированию интерпретатора Bourne shell -cтандартного командного интерпретатора в UNIX, полностью совместимого с интерпретатором BASH shell в Linux. Книга предназначена для начинающих и опытных программистов и содержит множество полезных примеров, советов и подсказок. С ее помощью читатель сможет быстро научиться создавать shell–сценарии для реальных задач и ситуаций, возникающих в большинстве систем UNIX и Linux.
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Stand‑by
выводит на печать строку, выровненную по левому краю, начиная с 10–го символа от левого края.
pwd
Формат:
pwd
Эта команда применяется для отображения текущего рабочего каталога. Введите следующую команду:
$ pwd
/var/spool
$ WHERE_АМ_I=`pwd`
$ echo $WHERE_AM_I
/var/spool
Здесь используется подстановка для передачи сценарию сведений о текущем рабочем каталоге.
rm
Формат:
rm параметры файлы
Параметры:
-i Запрос перед удалением каждого файла -r Удаление существующего каталога
Команда rm удаляет файлы и/или каталоги. Команда
$ rm myfile
$ rm -r /var/spool/tmp
удаляет все файлы, включая подкаталоги из каталога /var/spool/tmp и ниже.
rmdir
Формат:
rmdir параметры каталоги
Параметры:
-p Удаление всех пустых каталогов, найденных в процессе удаления
Команда
$ rmdir /var/spool/tmp/lp_HP
удаляет каталог 1р_НР, находящийся в каталоге /var/spool/tmp.
script
Формат:
script параметр файл
Параметры:
-a Добавление вывода в файл
С помощью команды script можно создать полную хронологию сеанса. Для этого нужно просто вызвать эту команду из командной строки. Выполнение команды script завершается после выхода из сеанса. Эта команда копирует введенные пользователем команды и данные и добавляет их в файл. Команда
$ script mylogin
задает регистрацию информации о сеансе в файле mylogin.
shutdown
Формат:
shutdown
Выполнение этой команды приводит к завершению работы системы. Многие поставщики программного обеспечения поддерживают свои специфические версии этой команды. Команда
$ shutdown now
вызовет немедленное завершение работы системы, а команда
$ shutdown -g60 -16 -у
приведет к завершению работы системы через 60 секунд, после чего последует перезагрузка системы.
sleep
Формат:
sleep число
Применение этой команды вызовет приостановку работы системы на указанное количество секунд. Например, команда
$ sleep 10
приостановит систему на 10 секунд.
strings
Формат:
strings имя_файла
Команда strings может быть использована для просмотра текста, содержащегося в двоичных файлах.
touch
Формат:
touch параметры имя_файла
Параметры:
-t ММДДччмм Создание файла, содержащего штамп даты (месяц, день, час, минута).
Эта команда создает файл с текущим или новым штампом даты.
$ touch myfile $ ls -l myfile
-rw‑r—-r--l dave admin 0 Jun 30 09:59 myfile
Данный код создает новый пустой файл myfile, содержащий текущую дату/время.
$ touch -t 06100930 myfile2 $ ls -l myfile2
-rw‑r-—r-- 1 dave admin 0 Jun 10 09:30 myfile2
Указанная выше команда touch создает новый пустой файл myfile2 со штампом
даты June 10,09:30am.
tty
Формат:
tty
Используйте команду tty для получения сведений о том, на каком устройстве или терминале вы работаете.
$ tty
/dev/tty08
Команда tty -s определяет, является ли сценарий интерактивным. Коды возврата в этом случае будут следующими:
0 Для терминала
1 Для устройства, не являющегося терминалом
uname
Формат:
uname параметры
Параметры:
-a Отображение всей информации
-s Системное имя
-v Отображение только номера версии либо даты выпуска версии
Команда используется для отображения имени текущей системы и другой связанной информации:
$ uname -a
Linux bumper.honeysuckle.com 2.0.36 #1 Tue Oct…
uncompress
Формат:
uncompress файлы
Команда uncompress используется для разархивирования любых сжатых файлов.
$ uncompress myfile
Приведенная выше команда разархивирует файл myfile, который был ранее сжат. Обратите внимание, что после разархивирования файла для него не может использоваться расширение .Z.
wait
Формат:
wait ID процесса
Эта команда устанавливает длительность ожидания для ID процесса перед возобновлением его выполнения либо устанавливает длительность ожидания всех фоновых процессов перед возобновлением их выполнения.
Для задания интервала ожидания ID процесса перед возобновлением его выполнения используется команда:
$ wait 1299
Следующая команда определяет ожидание до тех пор, пока не завершатся все фоновые процессы:
$ wait
wc
Формат:
wc параметры файлы
Параметры:
-c Вывод количества символов
-l Вывод количества строк
-w Вывод количества слов
Эта команда осуществляет подсчет количества символов или слов.
$ who | wc
1 6 46
$ who | wc -l
1
В первом примере вывод команды who направляется команде wc; при этом отображаются следующие столбцы:
количество строк, количество слов, количество символов
Во втором примере команда wc просто выводит на экран количество строк.
$ VAR="tapedrive"
echo $VAR | wc -c
10
В результате применения этой команды выводится количество символов в строке VAR.
whereis
Формат:
whereis имя_команды
Команда whereis используется для поиска двоичных или текстовых страниц справки для команды.
$ whereis fuser
fuser: /usr/sbin/fuser /usr/man/man1/fuser.1
$ whereis sort
sort: /bin/sort /usr/man/manl/sort.1
Обратите внимание, что двоичные файлы не отображаются в следующих двух примерах, поскольку они встроены в интерпретатор shell, но в этом случае для команд имеются справочные страницы.
$ whereis times
times: /usr/man/man2/times.2
$ whereis set
set: /usr/man/mann/set.n
who
Формат:
who параметры
Параметры:
-a Отображение всего вывода
-r Отчет о текущем уровне выполнения (в Linux применяется команда runlevel) -s Отображение полей имен и дат Команда
whoami
Отображает имя пользователя, выполняющего команду. Эта команда не является параметром команды who и может быть вызвана отдельно.
Команда who выводит отчет о пользователях, зарегистрированных в системе. Для отображения информации об этих пользователях введите команду:
$ who
root console Apr 22 13:27
pgd pts/3 Jun 14 15:29
peter pts/4 Jun 14 12:08
dave pts/5 Jun 14 16:10
Сведения о самом себе можно получить с помощью следующей команды:
$ whoami
dave
LINUX and UNIX Shell Programming
David Tansley
An imprint of Pearson Education
Harlow, England • London • New York • Reading, Massachusetts • San Francisco • Toronto • Don Mills. Ontario • Sydney Tokyo • Singapore • Hong Kong • Seoul * Taipei • Cape Town • Madrid • Mexico City • Amsterdam • Munich • Pan's • Milan
Дэвид Тейнсли
Linux и UNIX: программирование в shell. Руководство разработчика.