Справочник по Debian

       

Основные команды Unix


Давайте изучим основные команды Unix. [] Выполните все следующие команды от имени непривелегированного пользователя penguin:

  • pwd

    • Отобразить имя текущего/рабочего каталога.

    • whoami

      • Отобразить имя текущего пользователя.

      • file foo



        • Отобразить тип файла foo.

        • type -p имя_команды

          • Отобразить месторасположение файла команды имя_команды.

          • Это же делает команда which имя_команды.

          • type имя_команды

            • Отобразить информацию по команде имя_команды.

            • apropos ключевое_слово

              • Найти команды, связанные с ключевым_словом.

              • Это же делает команда man -k ключевое_слово.

              • whatis имя_команды

                • Отобразить однострочное пояснение по команде имя_команды.

                • man -a имя_команды

                  • Отобразить краткое пояснение по команде имя_команды. (Unix-стиль)

                  • info имя_команды

                    • Отобразить более полное объяснение по команде имя_команды. (стиль GNU)

                    • ls

                      • Вывести содержимое каталога. (нескрытые файлы и каталоги) [20]

                      • ls -a

                        • Вывести содержимое каталога. (все файлы и каталоги)

                        • ls -A

                          • Вывести содержимое каталога. (почти все файлы и каталоги, т.е. пропускаются файлы ".." и ".")

                          • ls -la

                            • Вывести все содержимое каталога с подробной информацией. Смотрите Концепция файловой системы в Debian, раздел 4.5.2.

                            • ls -d

                              • Выводит все подкаталоги каталоги в текущем каталоге.

                              • lsof foo

                                • Вывести состояние файла foo с точки зрения - открыт он или нет.

                                • mkdir foo

                                  • Создать новый каталог foo в текущем каталоге.

                                  • rmdir foo

                                    • Удалить каталог foo в текущем каталоге.

                                    • cd foo

                                      • Перейти в каталог foo, находящийся в текущем каталоге или описанный в переменной CDPATH. Смотрите описание команды cd в builtins(7).

                                      • cd /

                                        • Перейти в корневой каталог.

                                        • cd

                                          • Перейти в домашний каталог текущего пользователя.

                                          • cd /foo

                                            • Перейти в каталог по полному пути /foo.

                                            • cd ..

                                              • Перейти в родительский каталог.

                                              • cd ~foo

                                                • Перейти в домашний каталог пользователя foo.

                                                • cd -

                                                  • Перейти в предыдущий каталог.

                                                  • </etc/motd pager

                                                    • Отобразить содержимое файла /etc/motd, используя программу постраничного вывода по умолчанию. Смотрите команда < foo, раздел 4.3.10.9. []




                                                    • touch junkfile





                                                      • Создать пустой файл junkfile.



                                                      • cp foo bar





                                                        • Копировать существующий файл foo в новый файл bar.



                                                        • rm junkfile





                                                          • Удалить файл junkfile.



                                                          • mv foo bar





                                                            • Переименовать существующий файл foo в новый файл bar.



                                                            • mv foo bar/baz





                                                              • Переместить существующий файл foo в новое месторасположение под новым именем bar/baz. Каталог bar/ должен существовать.



                                                              • chmod 600 foo





                                                                • Сделать существующий файл foo недоступным для чтения и записи для всех пользователей, кроме владельца, и запретить выполнение для всех пользователей.



                                                                • chmod 644 foo





                                                                  • Разрешить чтение и запретить запись в существующий файл foo всем пользователям, кроме владельца, выполнение запрещено всем.



                                                                  • chmod 755 foo





                                                                    • Разрешить чтение и запретить запись в существующий файл foo всем пользователям, кроме владельца, выполнение файла разрешено всем пользователям.



                                                                    • top





                                                                      • Показать информацию о процессах на весь экран. Используйте "q" для выхода.



                                                                      • ps aux | pager





                                                                        • Показать информацию о всех выполняющихся процессах в стиле вывода системы BSD. Смотрите .



                                                                        • ps -ef | pager





                                                                          • Показать информацию о всех выполняющихся процессах в стиле вывода системы Unix System-V.



                                                                          • ps aux | grep -e "[e]xim"





                                                                            • Показать все выполняющиеся процессы exim. Регулярные выражения для поиска можно изучить на man-странице grep(1), получить которую можно, набрав man grep.



                                                                            • ps axf | pager





                                                                              • Показать информацию о всех выполняющихся процессах, используя вывод в стиле "ASCII art".



                                                                              • kill 1234





                                                                                • Убить процесс по его идентификатору процесса: 1234. Смотрите Kill a process, раздел 8.5.1.



                                                                                • grep -e "образец" *.html





                                                                                  • Найти "образец" во всех файлах, заканчивающихся на .html в текущем каталоге и показать их всех.



                                                                                  • gzip foo





                                                                                    • Сжать файл foo и создать файл foo.gz, используя кодирование Lempel-Ziv (LZ77).



                                                                                    • gunzip foo.gz





                                                                                      • Разжать файл foo.gz для создания файла foo.



                                                                                      • bzip2 foo





                                                                                        • Сжать файл foo и создать файл foo.bz2, используя алгоритм "Burrows-Wheeler block sorting text compression algorithm" и Huffman-кодирование. (Обеспечивает лучшее сжатие, чем gzip)





                                                                                        • bunzip2 foo.bz2





                                                                                          • Разжать файл foo. bz2 для создания файла foo.



                                                                                          • tar -xvvf foo.tar





                                                                                            • Извлечь файлы из архива foo.tar.



                                                                                            • tar -xvvzf foo.tar.gz





                                                                                              • Извлечь файлы из архива foo.tar.gz, сжатого gzip.



                                                                                              • tar -xvvf --bzip2 foo.tar.bz2





                                                                                                • Извлечь файлы из архива foo.tar.bz2. [22]



                                                                                                • tar -cvvf foo.tar bar/





                                                                                                  • Архивировать содержимое каталога bar/ в архивный файл foo.tar.



                                                                                                  • tar -cvvzf foo.tar.gz bar/





                                                                                                    • Архивировать содержимое каталога bar/ в сжатый архивный файл foo.tar.gz.



                                                                                                    • tar -cvvf --bzip2 foo.tar.bz2 bar/





                                                                                                      • Архивировать содержимое каталога bar/ в сжатый архивный файл foo.tar.bz2. []



                                                                                                      • zcat README.gz | pager





                                                                                                        • Отобразить содержимое сжатого файла README.gz, используя программу постраничного вывода по умолчанию.



                                                                                                        • zcat README.gz > foo





                                                                                                          • Создать файл foo с разжатым содержимым файла README.gz.



                                                                                                          • zcat README.gz >> foo





                                                                                                            • Добавить разжатое содержимое файла README.gz в конец файла foo. (Если файл не существует, то сначало создать его.)



                                                                                                            • find . -name шаблон





                                                                                                              • Искать имена файлов, соответствующие шаблону шаблон. (медленно)



                                                                                                              • locate -d . шаблон





                                                                                                                • Искать имена файлов, соответствующие шаблону шаблон. (Работает быстрее благодаря использованию регулярно генерируемой базы данных)

                                                                                                                  Пожалуйста, походите по каталогам и изучите систему, используя ранее описанные команды, для тренировки. Если у Вас есть вопросы по любой из консольных команд, будьте добры прочесть соответствующую man-страницу. Например, данные команды хороши для старта:

                                                                                                                  $ man man $ man bash $ man ls

                                                                                                                  Также неплохо запустить vim и нажать клавишу F1. Вам нужно прочесть не менее 35 строк. Затем пройдите онлайновый курс обучения, передвинув курсор к |tutor| и нажав Ctrl-]. Смотрите Editors, Глава 11 для дополнительного изучения редакторов.

                                                                                                                  Пожалуйста заметьте, что многие Unix-команды, включая из GNU и BSD, будут показывать краткую справочную информацию, если Вы вызовете их одним из следующих способов (или, в некоторых случаях, без аргументов вовсе):

                                                                                                                  $ имя_команды --help $ имя_команды -h

                                                                                                                  Для самоподготовки также посмотрите примеры из .


                                                                                                                  Содержание раздела