> команда > файл Вывод команды записывается в файл
< команда < файл Файл используется в качестве стандартного ввода команды » команда » файл
Вывод команды дописывается в конец файла команда! [ команда2 Выполняется команда!, затем ее стандартный вывод подается на стандартный ввод команды2
Внимательный читатель может заметить, что символ <, описываемый в табл. 1, может быть использован аналогично разобранному нами ранее примеру:
$ cat kevin.report
Тот же результат даст выполнение команды
$ cat < kevin.report
Разница заключается в том, каким образом командный интерпретатор UNIX обрабатывает эти команды. В первом примере имя файлаkevin.report являетсяаргументом команды cat. Во втором случае интерпретатор командной строки производит перенаправление стандартного ввода командыcat.
Вы можете использовать несколько операций перенаправления в одной командной строке. Например, многие команды UNIX (особенно сценарии интерпретатора командной строки) вызываются следующим образом:
$ команда < файл! > файл2
При этом стандартный ввод команды берется из файла файл1, а стандартный вывод записывается в файлфайл2.
Все преимущества возможности перенаправления ввода/вывода становятся ясны при использовании еще одного мощного инструмента UNIX—потоков. Потоком называется использование стандартного вывода одной команды в качестве стандартного ввода другой. Выглядит это так:
$ команда! ¦ команда2
Например, вы можете отсортировать содержимое файла перед печатью. Вам нужно использовать командуsort и отправить ее вывод на ввод командыIp, осуществляющей печать. Командная строка для печати отсортированного файла будет выглядеть так:
$ sort textfile | lp
В одной командной строке можно указать несколько потоков, например:
$ cat *.1994 ¦ grep profits | lp
Эта командная строка произведет поиск в текущем каталоге файлов, имена которых заканчиваются на1994, отправит список таких файлов на ввод командыgrep, которая произведет поиск в этих файлах слова profits. Затем строки, содержащие это слово, будут напечатаны.
Эта информация поможет пользователям, знающим, что они хотят сделать, найти соответствующую команду UNIX. Левый столбец приведенной ниже таблицы содержит описания часто встречающихся задач: ключевые слова выделеныполужирным шрифтом.Соответствующие задаче команды UNIX приведены в правом столбце. Многие команды встречаются несколько раз; например, команду Is вы можете найти как по ключевому словусписок, так и по ключевому словуфайл.
создание файлового архива
tar, cpio
архивация файла
compress, pack
замер времени исполнения команды
time, timex
запуск программы в указанное время
at
вывод файла на экран
cat, page, dtpad, textedit. xedit
постраничный вывод файла на экран
more
вывод на экран первых десяти строк файла
head
вывод на экран последних десяти строк файла
tail
вывод содержимого заархивированного файла
peat
выполнение вычислений
be, dc
вывод даты и времени
date
изменение даты модификации файла на текущую
touch
деархивация файла
unpack, uncompress
декодирование UU-кода
uudecode
вывод объема свободного дискового пространства
df
вывод объема дискового пространства, занятого данным каталогом
du
завершение работы
exit
печать заголовка
banner
захват изображения на экране
xv, xwd
печать изображений
xdpr, xpr
вывод имени системы
uname
запуск интерпретатора командной строки
sh, csh, ksh
запуск интерпретатора командной строки на удаленной системе
rsh
личный календарь
cm, dtcm
вывод календаря
cal, cm, dtcm
калькулятор
calctool, dtcalc, xcalc
создание каталога
mkdir, filemgr, dtfile
вывод размера каталога
du
вывод списка файлов и подкаталогов данного каталога
Is
смена текущего каталога
cd
печать заголовка
banner
персональный календарь
calendar, cm, dtcm
подсчет количества слов в текстовом файле
we
выполнение повторяющихся задач
crontab
поиск текстовых строк
egrep, grep, fgrep
поиск и замена символов
tr
поиск в файле
awk, nawk
поиск файлов
find
вывод списка пользователей
listusers
вывод информации о других пользователях системы
who
поиск информации о других пользователях системы
finger
выполнение последовательности команд
batch
запуск команды с пониженным приоритетом
nice
проверка правописания
spell
прерывание процесса
kill
вывод списка процессов
ps
присоединение содержимого файлов к существующему файлу
cat
разбиение файла на части
csplit, split
редактирование текстового файла
vi, ed, dtpad, textedit, xedit
резервирование информации
tar, cpio
поиск и замена символов
tr
вывод списка известных систем
uuname
вывод системного идентификатора пользователя
id
вывод системных сообщений
news
подсчет числа слов в файле
we
вывод состояния службы UUCP
uustat
создание нового текстового файла
cat, dtpad, textedit,
xedit
установка соединения с удаленным терминалом
ct
установка соединения с удаленной UNIX-системой
cu
разрешение/запрет вывода сообщений на терминал
mesg
вывод сообщений
news
сортировка файла
sort
сортировка и обработка файла
awk, nawk
вывод состояния машин в сети
ruptime
вывод списка файлов в каталоге
Is
сравнение содержимого двух каталогов
dircmp
сравнение содержимого двух отсортированных файлов
comm
сравнение трех файлов
diff3
сравнение двух файлов и вывод отличающихся строк
diff, bdiff
сравнение двух файлов
cmp
сравнение двух файлов и вывод
отличающихся и совпадающих строк
sdiff
создание ссылок
In
печать на стандартный вывод
echo
запись стандартного вывода в файл
tee
вывод столбца из отсортированного файла
cut
поиск текстовых строк в бинарном файле
strings
поиск текстовых строк
egrep, grep, fgrep
табличный процессор
tbi
настройка табуляции
tabs
смена текущего каталога
cd
вывод имени текущего каталога
pwd
открытие окна терминала
xterm, dtterm, shelltool
вывод информации о терминале
tput
настройка конфигурации терминала
stty
вывод параметров терминала
tty
определение типа файла
file
удаление из очереди заданий, созданных командой at
atrm
удаление заданий из очереди печати
cancel
удаление каталога
rmdir, filemgr, dtfile
удаление файла
rm, filemgr, dtfile
удаление форматирующих символов из файла
col
копирование файлов с удаленной системы
rep, uucp, ftp
выполнение команды на удаленной системе
uux
запуск интерпретатора командной строки на
удаленной системе
rsh
вход в удаленную систему
telnet, riogin
вывод информации о соединениях с удаленными системами
uulog
создание нового текстового файла
cat, dtpad, textedit, xedit
изменение даты модификации файла на
текущую
touch
вывод полного имени файла
basename
вывод файла на экран
cat, page, dtpad, textedit, xedit
постраничный вывод файла на экран
more
вывод на экран первых десяти строк файла
head
вывод на экран последних десяти строк файла
tail
вывод списка файлов в каталоге
Is
копирование файла
cat, cp, filemgr, dtfile
определение типа файла
file
поиск файла
find
разбиение файла
split
редактирование файла
vi, ed, dtpad. textedit, xedit
удаление файла
rm
шифрование файла
crypt
печать формул
eqn, neqn
отображение шрифта
xfd, xfontsel
вывод списка доступных шрифтов
xlsfonts, fslsfonts
отправка и чтение электронной почты
mailx, dtmail, mailtool
уведомление о получении новых писем по электронной почте
notify, xbiff
Организация справочника/каталога
Далее приведены 4 системные команды, позволяющие организовывать и использовать структуру справочника/каталога:
mkdir - создать новый справочник/каталог или подсправочник в вашем текущем справочнике;
ls- напечатать список имен всех каталогов и файлов в справочнике;
cd- изменить местоположение в файловой системе, т.е. перейти из одного справочника в другой;
rmdir - удалить пустой справочник. Эти команды могут использовать либо полное имя пути, либо родственное. Две команды могут применяться без имени пути.
Команда mkdir - создать справочник/каталог
Рекомендуется создавать каталог в собственном справочнике в соответствии с логической схемой, которая будет облегчать восстановление информации. Если поместить все файлы, относящиеся к одной теме, в один справочник, то вы будете знать, где их затем найти. Для создания справочника воспользуйтесь командой mkdir.
Синтаксис команды:
$ mkdir имя справочника(ов)<CR>
Например, подсправочник draft создается при помощи следующей команды, выдаваемой из справочника home (/home/startship):
$ mkdir draft<CR> $
Вторая подсказка говорит, что команда выполнилась успешно и подсправочник draft создался.
Также, находясь в справочнике home, можно создать другие подкаталоги, такие как letters и bin, таким же способом:
$ mkdir letters<CR> $ mkdir bin<CR> $
Пользователь может создать все три подкаталоги (draft, letters и bin) одновременно, перечислив их всех в одной командной строке:
$ mkdir draft letters bin<CR> $
Вы можете перейти к подкаталогу и в нем построить дополнительные подкаталоги
Команда ls - напечатать содержимое справочника/каталога
Все справочники в файловой системе имеют информацию о содержащихся в них файлах и справочниках, такую как: имя, размер и дата последней модификации. Вы можете получить эту информацию о вашем текущем справочнике и других системных справочниках, задав команду ls.
Команда ls перечисляет имена всех файлов и подкаталогов в указанном справочнике. Если вы не укажете справочник, то команда ls напечатает информацию о файлах и справочниках в вашем текущем справочнике.
Обратимся к примеру. Предположим, что вы зарегистрировались в системе UNIX под именем startship и задали команду pwd. Система напечатает имя пути /home/startship. Чтобы отобразить имена файлов и справочников в этом текущем справочнике, введите команду ls и нажмите клавишу <RETURN>. После того, как вы выполните последовательность этих команд, экран будет выглядеть следующим образом (один из вариантов вывода результата):
$ pwd<CR> /home/startship $ ls<CR> bin draft letters list mbox $
Обратите внимание, что система выдает перечень справочников в алфавитном порядке. Если первым символом имени файла или справочника будет цифра или большая буква, то оно будет напечатано первым.
Чтобы напечатать имена файлов и подсправочников в справочнике, отличном от текущего без перехода из текущего справочника, вы должны указать имя справочника.
Синтаксис команды:
ls имя пути <CR>
Имя пути может быть либо полным именем пути требуемого справочника, либо родственным. Например, вы можете получить содержание справочника draft, когда вы работаете в справочнике startship, если введете команду ls draft. Экран терминала будет выглядеть следующим образом:
$ ls draft<CR> outline table $
В этом примере draft является родственным именем пути от родителя (starship) к подчиненному справочнику (draft).
Вы также можете использовать родственное имя пути для печати содержимого родительского справочника в то время, когда вы находитесь в подчиненном справочнике. Две точки (..) являются самым простым способом выполнения этой функции. Например, следующая командная строка указывает родственное имя пути от справочника startship к home:
$ ls ..<CR> jmrs mary2 startship $
Вы получите тот же результат, если зададите полное имя пути от root к home:
ls /home<CR>
Вы можете распечатать содержимое любого системного справочника, к которому имеете право доступа, выполнив команду ls с полным или родственным именем пути.
Команда ls особенно полезна, если вы имеете много файлов и пытаетесь определить, существует ли определенный файл в вашем текущем справочнике. Например, вы находитесь в справочнике draft и хотите определить, есть ли в нем файлы outline и notes. Задайте команду ls следующим образом:
$ ls outline notes<CR> outline notes: No such file or directory $
Система сообщит, что файл outline существует в этом справочнике, а вот файл notes не найден.
Команда ls не распечатывает содержимое файла. Для этих целей воспользуйтесь командами cat, pg, pr.
Часто используемые ключи команды ls
Команда ls может содержать ключи, которые перечисляют специфичные атрибуты файла или подсправочника. Чаще всего используются ключи -a и -l.
1. Перечислить все файлы в справочнике.
Имена некоторых файлов в вашем собственном справочнике начинаются с точки (например, .profile). Когда имя файла начинается с точки, он не включается в список, распечатываемый командой ls. Чтобы распечатать такие файлы, введите команду ls с ключом -a.
Например, чтобы распечатать информацию о всех файлах в вашем текущем справочнике (starship), включая и файлы, имя которых начинается с точки, введите команду ls -a и нажмите клавишу <RETURN>. Экран будет выглядеть следующим образом:
$ ls -a<CR> . .. .profile bin draft letters list mbox $
2. Распечатать содержание в укороченном формате.
Ключи -C и -F команды ls используются достаточно часто. Вместе эти ключи распечатывают подсправочники и файлы справочников и помечают исполняемые файлы символом *, справочники - символом /, символическую связь(каналы) - символом @.
Например, вы можете распечатать информацию о всех файлах вашего рабочего справочника startship, выполнив команду:
$ ls -CF<CR> bin/ letters/ mbox draft/ list* $
3. Распечатать содержание в расширенном формате.
Возможно, более информативным ключом команды ls является ключ -l, который отображает содержание справочника в расширенном формате. Этот формат включает в себя: режим, число связей, владелец, группа, размер в байтах и время последней модификации каждого файла. Предположим, вы задали команду ls -l, находясь в справочнике startship:
$ ls -l<CR>total 30drwx-xr-x 3 startship project 96 Oct 27 08:16 bin-rw------ 1 startship project 40 Oct 27 10:00 mbox
Первая выводная строка (total 30) показывает объем дискового пространства в байтах. Последующие строки дают представление о справочниках и файлах в справочнике startship. Первый символ в каждой строке (d, -, l, b или c) говорит о типе файла:
d = справочник - = обыкновенный файл l = символическая связь(канал) b = специальный блочный файл c = специальный символьный файл
Таким образом на экране вы можете видеть, что справочник startship содержит три справочника и два обычных файла.
Следующие несколько символов, которые являются либо буквами либо дефисами, идентифицируют право на чтение и использование файла или справочника.
Далее следует цифра - счетчик связей. Для справочника этот счетчик показывает число справочников, расположенных под ним, плюс два (для самого справочника и справочника-родителя).
Следующим является регистрационное имя владельца файла (в данном случае startship), и за ним - групповое имя файла или справочника (project).
Следующее число показывает длину файла или справочника в байтах. Месяц, день и время последней модификации файла - в предпоследней колонке. В последней колонке представлено имя справочника или файла.