Пользовательские команды. Введение
В разделе 1 руководства описаны команды и инструменты пользователя,
например, инструменты для работы с файлами, оболочки, компиляторы, веб
браузеры, средства просмотра и редактирования файлов и изображений и т.д.
Linux - это разновидность UNIX, и в первом приближении все пользовательские
команды под UNIX работают точно так же под Linux (и FreeBSD и многих других UNIX-подобных систем).
В Linux есть GUI (графические пользовательские интерфейсы), где
вы можете указывать, щелкать и перетаскивать и выполнять работу
без предварительного чтения большого количества документации. Традиционная
среда UNIX - это CLI (интерфейс командной строки), в котором вы
вводите команды, чтобы сообщить компьютеру, что делать. Это быстрее и удобнее,
но требуется выяснить, что это за команды.
Авторизация
Чтобы начать работу, вам, вероятно, сначала нужно открыть
сеанс, указав свое имя пользователя и пароль.
Программа login (1) теперь запускает для вас оболочку (интерпретатор команд).
В случае графического входа в систему вы получаете экран с меню или значками
и щелчок мышью запустит оболочку в окне. Смотрите также
xterm (1).
Оболочка
Интерпретатор команд вводит команды в оболочку, он
не встроен, это просто программа, и вы можете изменить свою
оболочка. У каждого есть свой любимый.
Стандартный интерпретатор команд называется
sh.
См. Также ash (1), bash (1) , chsh (1) , csh (1),
dash (1) , ksh (1), zsh (1).
Сеанс может выглядеть так:
knuth login: aeb
Password: ********
$ date
Tue Aug 6 23:50:44 CEST 2002
$ cal
August 2002
Su Mo Tu We Th Fr Sa
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
$ ls
bin tel
$ ls -l
total 2
drwxrwxr-x 2 aeb 1024 Aug 6 23:51 bin
-rw-rw-r-- 1 aeb 37 Aug 6 23:52 tel
$ cat tel
maja 0501-1136285
peter 0136-7399214
$ cp tel tel2
$ ls -l
total 3
drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin
-rw-r--r-- 1 aeb 37 Aug 6 23:52 tel
-rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2
$ mv tel tel1
$ ls -l
total 3
drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin
-rw-r--r-- 1 aeb 37 Aug 6 23:52 tel1
-rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2
$ diff tel1 tel2
$ rm tel1
$ grep maja tel2
maja 0501-1136285
$
Здесь нажатие Control-D завершает сеанс.
Символ $ в командной строке - это способ оболочки
указывать, что он готов к следующей команде.
Подсказка может быть настроена множеством способов, и один из них может включать
такие вещи, как имя пользователя, имя компьютера, текущий каталог, время и т.д.
Есть команды date (дающие дату и время), и cal (календарь).
Команда ls выводит список содержимого текущего каталога, т.е.
сообщает вам, какие файлы у вас есть.
С параметром -l она дает длинный список, который включает
владельца, размер и дату файла, а также разрешения, которые есть у пользователей для
чтения и/или изменения файла.
Например, файл "tel" имеет длину 37 байт и принадлежит
aeb, и владелец может читать и писать, другие могут только читать.
Владелец и права доступа могут быть изменены командами chown и chmod.
Команда cat покажет содержимое файла.
Имя команды - от concatenate and print (объединить и распечатать).
Все файлы, указанные в качестве параметров, объединены и отправлены на
стандартный вывод (см. stdout (3) ), здесь это экран терминала.
Команда cp (от copy) скопирует файл.
Команда mv (от move) только переименовывает его.
Команда diff отображает различия между двумя файлами.
Команда rm (от remove) удаляет файл, будьте осторожны,
чтобы не потерять файл. Никакой корзины или чего-то подобного нет.
Удалено означает потерянный.
Команда grep (от g/re/p) находит вхождения строки в
один или несколько файлов.
Пути и текущий каталог
Файлы живут в большом дереве, в файловой иерархии. У каждого есть pathname
(имя пути), описывающее путь от корня дерева (который
называется / ) к файлу. Например, такой полный путь может быть
/home/aeb/tel. Всегда использовать полные пути было бы
неудобно, и имя файла в текущем каталоге можно сократить, указав только последний компонент.
Поэтому /home/aeb/tel может быть сокращено до tel, если текущий
каталог /home/aeb.
Команда pwd (от print working directory) показывает путь текущего каталога.
Команда cd изменяет текущий каталог.
Попробуйте альтернативно команды cd и pwd и изучите использование cd:
«cd», «cd .», «cd ..», «cd /» и «cd ~»
Каталоги
Команда mkdir создает новый каталог.
Команда rmdir удаляет каталог, если он пуст, в противном случае предупреждает.
Команда find (с довольно необычным синтаксисом) найдет файлы
с заданным именем или другими свойствами.
Например, "find . -Name tel" найдет файл tel, находящийся в текущем каталоге
(который называется . ).
"find / -name tel" будет делать то же самое, но начиная с корня дерева.
Большой поиск на диске размером в несколько ГБ займет много времени, возможно,
лучше использовать locate (1).
Диски и файловые системы
Команда mount подключит файловую систему, найденную на каком-либо диске
(флешке или sd-карте ) в большую иерархию файловой системы.
Команда umount снова отсоединяет его.
Команда df сообщит размер свободного места вашего диска.
Процессы
В системе UNIX выполняется множество пользовательских и системных процессов.
одновременно. Процесс, с которым вы "разговариваете", работает в foreground
( на переднем плане), остальные на background (заднем плане).
Команда ps покажет, какие процессы активны и какие они имеют номера.
Команда kill позволяет от них избавиться.
Без опций (ключей команды) это дружеская просьба: пожалуйста, уходите.
Но "kill -9", за которым следует номер процесса, является немедленным "убийством".
Процессы переднего плана часто можно остановить, набрав Ctrl-C.
Получение информации
Существуют тысячи команд, каждая из которых имеет множество параметров.
Традиционно команды документируются на man-страницах (страницах руководства).
Например, команда "man kill" документирует использование
команды «kill», "man man" документирует команду «man».
Программа man отправляет текст постранично через какой-нибудь пейджер ,
обычно less.
Нажмите пробел, чтобы перейти на следующую страницу, нажмите q(quit), чтобы выйти.
В документации принято ссылаться на страницы руководства, давая
имя и номер раздела, как в man (1). Страницы руководства краткие,
что позволит вам быстро найти некоторые забытые детали.
Для новичков полезны вводный текст с большим количеством примеров и объяснениями.
Многие программы GNU/FSF снабжены info-файлами.
Введите команду "info info" для получения сведений об использование программы info.
В HOWTO часто рассматриваются специальные темы.
Загляните в /usr/share/doc/howto/en и воспользуйтесь браузером, если вы найдете там HTML-файлы.
Cмотри также
ash(1), bash(1), chsh(1), csh(1), dash(1), ksh(1), locate(1),
login(1), man(1), xterm(1), zsh(1), wait(2), stdout(3),
man-pages(7), standards(7)