1.1. Система UNIX различает БОЛЬШИЕ и малые буквы, и к этому нужно привыкнуть.
1.2. Если вы уничтожили какой-нибудь файл, то никаких проблем с его восстановлением у вас не будет. Потому что восстановить уничтоженный файл в системе Unix НЕВОЗМОЖНО. В Unix отсутствует команда unerase, и к этому тоже нужно привыкнуть. Вирусы и ан- тивирусы в Unix тоже отсутствуют. Так что, пока хоть этой проб- лемы у администратора машины не будет.
1.3. В имени файла директории отделяются от последующей части символом "/" Если имя начинается со слэша - значит, это полное маршрутное имя. Простое имя файла может состоять из ЛЮБЫХ сим- волов. Длина простого имени не более 256 символов. Длина полно- го маршрутного имени файла не более 1024 символов. Для задания шаблона имен используются символы * (произвольная последова- тельность символов) и ? (один произвольный символ). Два имени являются выделенными. Имя из одной точки "." обозначает текущую директорию, имя из двух точек ".." - вышележащую.
1.4. Чтобы запустить программу на выполнение, достаточно наб- рать ее имя и, если нужно, другие аргументы командной строки. Имя программы - это маршрутное имя файла, в котором эта прог- рамма находится. Аргументы разделяются одним или несколькими пробелами. Ключи команды обычно (но необязательно) выделяются знаком "-". Если командная строка кончается знаком &, происходит запуск параллельного процесса, в рамках которого будет выполняться команда, сообщается его номер, после чего можно продолжать работу не дожидаясь завершения фоновой задачи.
команда -ключи -ключи ... прочие разные аргументы ...
1.5. Три направления ввода-вывода являются выделенными - стан- дартный ввод, стандартный вывод и стандартный протокол. Как правило, команды операционной системы берут исходные данные из стандартного ввода и помещают результаты в стандартный вывод. Первоначально стандартные ввод, вывод и протокол назначены на терминал, однако их можно переназначить, если после команды по- местить одну из конструкций:
команда > имя_файла (для стандартного вывода),
команда < имя_файла (для переназначения стандартного ввода),
команда 2> имя_файла (для стандартного протокола - системной диагностики). Пример - записать в файл infdir содержимое текущей дирек- тории:
ls > infdir
Если вывод назначен в файл, то перед началом выполнения команды создается пустой файл с соответствующим именем (если файл уже существовал, он опустошается), а затем в него помеща- ется информация. Если информацию нужно дописать в конец сущест- вующего файла, следует воспользоваться конструкцией
команда >> имя файла команда 2>> имя файла
1.6. Пользователи системы UNIX объединяются в группы, и каждая из групп может обладать определенным набором привилегий.
1.7. Программы могут распознавать значения переменных окруже- ния, значения которых были заданы перед их запуском.
1.8. Выдачу одной команды можно перенаправлять на вход другой команды. Для этого используется "|" - конвейер.
Например: посчитать суммарный размер и число строк всех файлов в каталоге /tmp, имена которых начинаются с символов "text" ...
cat /tmp/text* | wc -c
# Команда cat сливает вместе все файлы вида /tmp/text*, # wc -c -l считает количество символов и число строк во входном # потоке.
Или просмотреть с листанием длинную выдачу команды:
ps -ef | more
Того же результата можно достичь и без конвейера таким образом:
ps -ef > temp-file more temp-file rm temp-file
2. Некоторые наиболее употребительные команды.
pwd - получить имя текущей директории cd - изменить текущую директорию ls - распечатать информацию о файлах или директориях cat - слить или вывести файлы-аргументы на стандартный вывод cp - копировать файлы mv - переместить (переименовать) файлы ln - создать ссылку на файл rm - удалить файлы rmdir - удалить директорию mkdir - создать директорию echo - вывести аргументы командной строки на стандартный вывод ps - узнать номера выполняемых процессов kill - "убить" выполняемый процес по его номеру man - выдать справку об использовании и ключах команды
2.1 pwd Выдать имя текущей директории.
pwd
2.2 cd Сменить текущую директорию.
cd [ директория]
cd /usr/spool/lp/adm
cd ..
Если директория не указана, Вы попадаете в свой "домашний" ка- талог $HOME
2.3 ls Распечатать каталог.
Формат команды : ls [ключи] [имена]
имена - имена файлов или директорий; для директорий распечаты- вается список входящих в нее файлов, для файлов - пов- торяется имя файла и дополнительная информация в соот- ветствии с ключами. Имена файлов выводятся в алфавитном порядке. Если имена не заданы, выдается содержимое те- кущей директории. ключи: по умолчанию выдаются только имена файлов, в одну ко- лонку и в алфавитном порядке.
ls -al - вывод в длинном полном формате:
число владелец время модификации линков группа имя файла (имен) размер -rwxr-xr-x 1 moshkow sys 17 Oct 18 16:13 ../jean drwxr-xr-x 1 moshkow sys 12 Oct 18 16:11 ../jelly -rwxr-xr-x 1 moshkow sys 0 Oct 13 14:14 ../j.bu.txt ^^ ^ ^ || | | || | +----- права всех "прочих" по отношению к файлу || +-------- права одной с ним группы |+----------- права "владельца" файла +------------ "-" - значит файл, "d" - директория Права: r - файл доступен для чтения, w - файл доступен для записи, x - файл является выполнимым, - - данное право доступа отсутствует.
-a - вывести все файлы (даже те, имена которых начинают- ся с точки); -x - вывод в 4 колонки; -t - имена файлов сортируются не по алфавиту, а по вре- мени последнего изменения (сначала идут самые све- жие, только что измененные файлы); -R - рекурсивно пройти по всем подкаталогам
ls -CF - оглавление каталога в несколько столбиков ls -al - оглавление в полном формате
2.4 cat Слить и вывести файлы на стандартный вывод.
Формат команды : cat файл1 [файл2... ]
Cat читает каждый из указанных файлов и выводит их содержимое на стандартный вывод. Пример:
cat файл
распечатывает содержимое файла, а
cat файл1 файл2 > файл3
сливает первые два файла и помещает результат в третий. Чтобы добавить файл1 к файлу2, надо выполнить команду
cat файл1 >> файл2
2.5 more, pg Просмотреть файл постранично.
more file_name ...
more позволяет просматривать файл, делая остановку на каждой границе экрана. Просмотром можно управлять с помощью клавиш:
q - завершить просмотр ПРОБЕЛ - показать следующую страницу ENTER - сдвинуться на одну строку b - показать предыдущую страницу / - поиск h - Help - посмотреть список всех возможных команд
more используют, чтобы посмотреть "длинную" выдачу команды, ставя его конвейером "ей на хвост"
ls -al | more - просмотреть оглавление ps -e | pg - просмотреть список работающих процессов
Эта команда копирует файл1, ... , в ФАЙЛ. Если ФАЙЛ - это ди- ректория, то файл1 и др. копируются в нее под своими именами. Если ФАЙЛ не существовал, то он создается, если существовал, его старое содержимое теряется.
Команда аналогична команде cp, но не сохраняет исходного файла. Ее основная роль - переименование файлов и перенос файлов из одной директории в другую). Пример.
Эта команда создает файлу файл1 еще одно имя. В итоге файл1 и файл2 на самом деле физически являются одним и тем же файлом. Если вы создаете так называемый "символический линк", (исполь- зуя ключ "-s"), то файл file1 при этом не обязан существовать. Имя "файл2" при этом все равно будет создано.
2.9 rm Удалить файл или директорию.
Формат команды : rm [-fri] файл ... -i - просить подтверждения на каждое удаление -r - рекурсивно удалить вместе с подкаталогами -f - не просить подтверждения, а сразу удалють
Для удаления пустой директории можно воспользоваться командой
rmdir директория ...
Чтоб удалить непустую директорию нужно выполнить команду
rm -r директория
ВНИМАНИЕ: Ввиду того, что под шаблон ".*" подходит каталог ".." НИКОГДА НЕ ДЕЛАЙТЕ КОМАНДЫ # rm -r .*
2.10 mkdir Создать директорию.
Для создания директории применяется команда mkdir.
Формат команды : mkdir имя_директории ...
2.11 chmod Изменение прав доступа к файлам.
Команда chmod меняет атрибуты (права доступа) файла. Проставить файлам право на выполнение:
chmod u+x file1
Разрешить остальным пользователям исправлять файл
chmod a+w file1
2.12 echo Эхо.
echo Команда выводит на стандартный вывод свои аргументы
echo "\017"
Вывести на терминал символ Ctrl-O, Он же 017 восьмеричное. Вос- станавливает латиницу на терминалах типа vt220 и at386
2.13 Создать файл.
Для создания файла можно воспользоваться следующими способами:
touch primer создает файл primer; cat > primer создает файл primer и пишет в него из стан- дартного ввода. Запись в файл закончится пос- ле нажатия CTRL+D.
2.14 ps Какие программы выполняются.
Сообщает номера процессов, которые выполняются в системе.
ps - запущенные только с этого терминала ps -e - все ps -f - в "полном" формате
2.15 kill Прервать процесс.
Команда kill посылает указанному процессу сигнал немедленной остановки.
Прервать процесс номер 1078 (номер можно узнать командой ps -e)
kill -9 1078
Прервать программу на вашем терминале, запущенную НЕ в фоновом режиме, можно нажатием клавиши CTRL-C, или клавиши CTRL-\
2.16 man Если вы забыли как пользоваться командой.
Как правило, при запуске команды без аргументов она выдает фор- мат своего вызова. Но для большинства команд достаточно полную информацию вы можете получить так:
man имя_интересующей_вас_команды man -k ключевое_слово - список команд, относящихся к ...
2.17 who Кто работает в системе.
who - этими командами можно узнать кто вы такой, who am i и кто еще работает в системе finger last | more id
man -k who - сообщит все возможные команды, которыми можно узнать, кто и что делает в системе.