Разное

Команды unix консоли: Основные команды в консоли Linux

Содержание

Основные команды в консоли Linux

Операционная система Linux очень нравится программистам и любителям «поковыряться», потому что в ней предусмотрено активное использование консоли, содержащей сотни команд. Если вы решили серьезно взяться за изучение этой гибкой ОС, следует для начала выучить в Линукс основные команды.

Зачем же существуют в Linux команды консоли? Вводя их в консоль, пользователь может оперативно совершать массу действий: открытие, перемещение и копирование файлов, просмотр различной информации и статистики, мониторинг и отладка, получение подробной информации о системе, видоизменение программной и визуальной части системы. И это лишь часть возможностей, которые вы получаете, благодаря этим командам.

Многие имеют дополнительные параметры, а некоторые и вовсе без них не работают. Для начала попробуйте просто вводить команды в консоль и изучать их действие.

Возможность видоизменять систему командами делает Linux очень универсальной оперативной системой. Вы можете настроить её под себя, изменив в ней всё что угодно.  Сначала команды могут показаться сложными, но хорошенько выучив их, вы значительно ускорите работу с компьютером и начнете получать истинное удовольствие, понимая, что всё в ней настроено вами под ваши нужды.

Помните, что для полноценной работы с консолью вам нужны права администратора. Ниже представлен список основных команд в консоли Linux и их расшифровка.

1. Простейшие действия

ls — выдать список файлов в текущем каталоге.

cd [каталог] — сменить текущий каталог. Если имя каталога не указывается, то текущим становится домашний каталог пользователя.

cp <что_копировать> <куда_копировать> — копировать файлы.

mv <что_перемещать> <куда_перемещать> — переместить или переименовать файл.

ln -s <на_что_сделать_ссылку> <имя_ссылки> — создать символическую ссылку.

rm <файлы> — удалить файлы.

mkdir <каталог> — создать новый каталог.

rmdir <каталог> — удалить пустой каталог.

rm -r <файлы и/или каталоги> (рекурсивное удаление) — удалить файлы или каталоги и их подкаталоги. ОСТОРОЖНЕЙ с этой командой, поскольку пока у Linux нет системы полного восстановления удаленных файлов (если вы не пользуетесь специальными программами для помещения удаленных файлов в специальный каталог, что-то вроде «корзинки» в ОС Windows).

cat <имя_файла> — вывод содержимого файла на стандартный вывод (по умолчанию — на экран).
Можно записать вводимый на экран текст с помощью следующей последовательности действий:

cat > <имя_файла> 



CTRL/d 

more <имя_файла> — просмотр содержимого длинного текстового файла по страницам.

less <имя_файла> — просмотр содержимого текстового файла с возможностью вернуться к предыдущим страницам. Нажмите q, когда захотите выйти из программы. «less» — аналог команды DOS «more», хотя очень часто «less» бывает более удобной чем «more».

pico <имя_файла> — редактировать текстовый файл с помощью текстового редактора pico.

lynx <html_файл или ссылка> — просмотр файла html или WWW ссылки с помощью текстового браузера Lynx.

tar -zxvf <файл> — распаковать архив tgz или tar.gz

find <каталог> — name имя_файла — найти файл с именем «имя файла» и отобразить результат поиска на экране. Поиск начинается с каталога <каталог>; «имя_файла» может содержать маску для поиска.

pine — хорошая текстово-ориентированная программа для чтения электронной почты.

mc — запустить программу управления файлами «Midnight Commander» (Выглядит как «Norton Commander», но по своим возможностям ближе к far).

./Имя_Программы — запустить на исполнение исполняемый файл в текущем каталоге, если текущего каталога нет в списке каталогов, указанных в переменной окружения PATH.

xterm (в X терминале) — запустить простой терминал в графической оболочке X-windows. Для того чтобы выйти из него, наберите «exit».

2. Стандартные команды и команды, дающие информацию по системе команд (всегда набираются в одной строке)

pwd — вывести имя текущего каталога.

whoami — вывести имя под которым Вы зарегистрированы.

date — вывести дату и время.

time <имя программы> — выполнить программу и получить информацию о времени, нужном для ее выполнения. Не путайте эту команду с date. Например: Я могу определить выполнить команду ls и узнать, как много времени требуется для вывода списка файлов в каталоге, набрав последовательность: time ls

who — определить кто из пользователей работает на машине.

rwho -a — определение всех пользователей, подключившихся к вашей сети. Для выполнения этой команды требуется, чтобы был запущен процесс rwho.

ruptime — какие машины работают в сети, и какие остановлены.

finger <имя_пользователя> — системная информация о зарегистрированном пользователе. Попробуйте: finger <ваш login-name>

uptime — количество времени, прошедшего с последней перезагрузки операционной системы.

ps a — вывести список текущих процессов в Вашем сеансе работы.

top — интерактивный список текущих процессов, отсортированных по использованию центрального процессора.

uname -a — вывести информацию о версии операционной системы.

free — вывести информацию по использованию памяти.

df -h — вывести информацию о свободном и используемом месте на дисках.

du . -bh | more — вывод на экран информации о размере файлов и каталогов, начиная с текущего каталога.

set|more — вывести текущие значения переменных окружения. (Не для всех shell. Для csh/tcsh — printenv | more, хотя set тоже покажет полезную информацию.)

echo $PATH — вывести значение переменной окружения «PATH» Команда echo может использоваться для вывода значений любых переменных окружения. Воспользуйтесь командами set или printenv для получения полного списка.

3. Работа с сетью

ssh — обеспечивает безопасное вхождение в удаленный сеанс работы с другой машиной, а также позволяет выполнить заданную команду на удаленной машине без вхождения в сеанс работы:

ssh [-l Ваше_имя_пользователя_на_удаленной_машине]<имя_удаленной_машины> — вхождение в сеанс на удаленной машине. Используйте имя машины или ее IP адрес. (Вы должны быть зарегистрированы на этой удаленной машине). Если Ваше_имя_пользователя одинаково на локальной и удаленной машинах, то его можно не набирать, т.е.:  ssh <имя_удаленной_машины> — позволит Вам войти в сеанс на удаленной машине

ssh <Ваше_имя_пользователя_на удаленной машине@><имя_удаленной_машины> <команда> — выполнит на удаленном компьютере заданную команду и передаст Вам на экран результат ее выполнения (При установлении соединения по ssh Вы должны будете ввести пароль, который Вы имеете на удаленном компьютере; при этом пароль будет передан по сети в зашифрованном виде, т.е. безопасным образом.)

scp — обеспечивает безопасное копирование файлов в сети:

scp <имя_файла_на_локальном_компьютере> <Ваше_имя_пользователя_на удаленной машине>@<имя_удаленной_машины>: — cкопирует файл с локального компьютера в Вашу корневую директорию на удаленном компьютере (наличие «:» в конце команды обязательно).

telnet <имя_удаленной_машины> — связаться по telnet с другой машиной. Войдите в сеанс работы после установления связи с помощью вашего пароля.

ftp <имя_удаленной_машины> — связаться по ftp с удаленным компьютером. Этот тип связи хорош для копирования файлов с/на удаленную машину.

Предпочтительно не пользоваться командами telnet и ftp, а использовать только ssh и scp, поскольку они обеспечивают безопасность сетевого соединения!

hostname -i — показывает IP адрес компьютера, на котором Вы работаете.

4. Некоторые команды администрирования

alias ls=»ls -Fskb —color» — создать alias-псевдоним для того чтобы одной командой можно было запустить более сложную комбинацию команд. Поместите создание alias в файл /etc/bashrc если вы хотите, чтобы эти псевдонимы были доступны всем пользователям вашей системы.

Для tcsh — формат определения alias другой:

alias la ‘ls -AF —color=none’

kapasswd — команда для изменения пароля для доступа к файловой системе AFS. При работе на базовом Linux-кластере ЛИТ следует пользоваться только этой командой (а не командой passwd!) для изменения пароля для вхождения в кластер.

passwd — изменить свой пароль на каком-либо локальном компьютере.

chmod <права доступа> <файл> — изменить права доступа к файлу, владельцем которого вы являетесь.
Есть три способа доступа к файлу:
чтение — read (r), запись — write (w), исполнение — execute (x) и три типа пользователей:
владелец файла — owner (u), члены той же группы, что и владелец файла (g) и все остальные (o).
Поверить текущие права доступа можно следующим способом:

ls -l имя_файла

Если файл доступен всеми способами всем пользователям, то напротив имени файла будет следующая комбинация букв: rwxrwxrwx
Первые три буквы — это права доступа для владельца файла, второй триплет — права доступа для его группы, следующая тройка — права доступа для остальных. Отсутствие права доступа показывается как «-«.; Например: Эта команда позволит вам установить права доступа на чтение для файла «junk» для всех (all=user+group+others):

chmod a+r junk 

Эта команда отнимет право доступа на исполнение файла у всех кроме пользователя и группы:

chmod o-x junk 

Для получения дополнительной информации наберите chmod —help или man chmod или почитайте любое руководство по Linux. Вы можете установить права доступа по умолчанию для создаваемых вами файлов с помощью команды»umask» (наберите man umask).

chown <новый_владелец> <файлы> — изменить владельца файлов.

chgrp <новая_группа> <файлы> — изменить группу для файла.

Вы можете использовать две последние команды, после того как сделали копию файла для кого-либо.

5. Контроль процессов 

ps axu | grep <Ваше_имя_пользователя> — отобразить все процессы, запущенные в системе от Вашего имени пользователя.

kill <PID> — «убить» процесс. Для начала определите PID Вашего «убиваемого» процесса при помощи ps.

killall <имя_программы> — «убить» все процессы по имени программы.

xkill (в терминале X window) — «убить» процесс, на окно которого укажите курсором.

6. Встроенные в Linux программные утилиты и языки

emacs (в X терминале) — редактор emacs. Очень многофукционален, но весьма сложен для неопытных пользователей.

gcc <c_исходник> — GNU C компилятор. В сети есть очень хорошие руководства по использованию.

g++ <cpp_исходник> — GNU C++ компилятор.

perl — очень мощный скриптовый язык. Чрезвычайно гибкий, но с довольно сложным синтаксисом. Очень популярен среди продвинутых пользователей.

python — современный и довольно элегантный объектно-ориентированный интерпретатор. Выглядит таким же мощным и немного проще, чем perl.

g77 — GNU FORTRAN компилятор.

f2c — перекодировщик из FORTRAN в C.

fort77 — компилятор FORTRAN. Выполняет f2c, а затем использует gcc или g++.

grep — поиск фрагмента текста в файлах, удовлетворяющего набранной маске. Маска определяется с помощью стандартной системы обозначений, называемой «регулярные выражения».

tr — translation utility (другими словами — замена букв в текстовом файле).

gawk — GNU awk (используется для обработки форматированных текстовых файлов). Лучше вызывать просто awk.

sed — утилита для обработки текстовых файлов.

Использование UNIX, Часть 1: Работа с командной строкой

Использование UNIX, Часть 1

Создайте бесчисленное множество программ, комбинируя утилиты UNIX между собой

Мартин Стрейчер
Опубликовано 22.10.2007

Серия контента:

Этот контент является частью # из серии # статей: Использование UNIX, Часть 1

https://www.ibm.com/developerworks/ru/views/global/libraryview.jsp?series_title_by=Использование+unix,+Часть+1

Следите за выходом новых статей этой серии.

Этот контент является частью серии:Использование UNIX, Часть 1

Следите за выходом новых статей этой серии.

Знакомство с оболочкой UNIX

Одна из самых оригинальных и выделяющихся возможностей операционных систем семейства Unix® — это командная строка. При помощи нескольких нажатий клавиш и «связующих элементов», вы можете использовать командную строку для комбинирования конечного набора команд Unix в бесконечное множество операций с данными.

Например, чтобы перечислить все файлы с уникальными именами в текущем каталоге, вы можете напечатать в оболочке UNIX (shell) следующую строку:

find . -type f -print | sort | uniq

Эта строка последовательно использует три различные утилиты:

  • Утилита find просматривает указанный каталог — в этом случае файловую систему, начинающуюся с . (точки) (условное обозначение для текущего каталога) – и выводит названия всех файлов, которые соответствуют указанному критерию. Параметр –type f указывает утилите find искать только обычные файлы.

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

  • Утилита uniq (сокр. от «unique») сканирует список, сравнивая смежные элементы и удаляя дубликаты из списка. Например, предположим, есть такой список:

    Пример 1. Исходный список
    Groucho
    Groucho
    Chico
    Chico
    Groucho
    Harpo
    Zeppo
    Zeppo

    Утилита uniq сокращает содержимое этого списка до следующего:

    Пример 2. Использование команды uniq
    Groucho
    Chico
    Groucho
    Harpo
    Zeppo

    Однако если бы исходный список изначально был отсортирован (все имена были бы расположены по алфавиту), запуск uniq привел бы к следующим результатам:

    Пример 3. Использование команды uniq
    Chico
    Groucho
    Harpo
    Zeppo

Для того, чтобы получить исчерпывающую информацию о возможностях утилит find, sort и uniq, обращайтесь на страницу справочника man для соответствующей утилиты.

Работа с системами ввода / вывода в UNIX

Утилита find всегда принимает на вход содержимое файловой системы, в том случае, если она запущена независимо от других утилит. Однако утилиты sort и uniq получают входные данные от стандартного устройства ввода (stdin). Чаще всего в этом качестве используется клавиатура. Например, вы печатаете строки, содержащие данные, которые вы хотите отсортировать.

По умолчанию find печатает результаты работы на стандартное устройство вывода (stdout). Обычно это консоль вашего терминала. Утилиты sort и uniq также печатают результаты в stdout.

Чтобы проверить работу stdin и stdout, напечатайте следующий текст в вашей консоли (символ % — это приглашение оболочки на ввод команды):

Пример 4. stdin и stdout
% 
sort
mustache
horn
hat
Control-D

Утилита sort считывает из stdin три строки, которые вы напечатали, сортирует их и выводит результат. Рисунок 1 показывает схему работы sort и большинства утилит UNIX, запускаемых из командной строки.

Рисунок 1. Стандартная утилита UNIX запускается из командной строки, считывает данные с stdin и выводит результат в stdout

Некоторые утилиты, такие как find, не считывают данные из stdin. Вместо этого они получают данные для обработки из различных источников, таких как файловая система или ядро, и выводят результаты в stdout. Чтобы понять, как работает find, посмотрите на рисунок 2.

Рисунок 2. Некоторые утилиты считывают данные из системных ресурсов и выводят результат в stdout

В дополнение к stdin и stdout, команды UNIX могут выводить сообщения об ошибках в специальную систему вывода, которая используется для отладки. Эта система называется – стандартное устройство для вывода ошибок (обычно к нему обращаются как к stderr). На рисунке 3 показана схема работы утилиты, запускаемой из командной строки.

Рисунок 3. Команды UNIX могут выводить ошибки в специальную систему вывода (standard error)

Как следует из рисунка 3, большинство команд UNIX считывают данные с консоли терминала, выводят на терминал результаты работы и сведения о возникших ошибках. По умолчанию, пока вы не измените конфигурацию, ваш терминал – это источник данных для stdin и пункт назначения для данных из stdout и ошибок из stderr.

Перенаправление данных

Однако вы можете изменить источник данных для stdin и пункты назначения для вывода stdout и stderr. Вы можете заставить stdin считывать данные из файла или c устройства, подключенного к компьютеру, или извлекать данные из сетевого подключения. Точно так же вы можете направить вывод в файл, на устройство или через сетевое подключение. В UNIX любое устройство ввода / вывода можно рассматривать как файл, и использовать для передачи входных данных или вывода результатов.

Изменение источника или пункта назначения обрабатываемых данных называется перенаправлением. Вы можете перенаправить stdin, чтобы считывать данные с файла или другого источника, и вы можете перенаправить по отдельности stdout и stderr, чтобы выводить данные куда-нибудь еще, кроме окна терминала. В большинстве случаев, как в команде find, показанной раньше, вы можете перенаправить ввод или вывод для утилиты, чтобы сформировать входные данные для другой утилиты или принять данные от нее на вход. Для этого существует символ |, обозначающий канал ввода / вывода. Вы можете связывать этапы обработки между собой, используя каналы, отправляя данные из одной команды в следующую команду, подобно подаче воды по трубам.

Рисунок 4 показывает последовательность выполнения следующей команды find . -type f -print | sort | uniq.

Рисунок 4. Схема взаимодействия трех утилит, связанных каналами ввода / вывода

Канал вывода stdout команды find становится каналом ввода stdin команды uniq. В свою очередь канал вывода stdout команды uniq подает данные в канал входа stdin команды sort. Наконец, команда sort печатает результаты в свой канал вывода stdout, который выводит информацию на терминал. Канал вывода stderr для вывода ошибок не было перенаправлен, поэтому все три команды печатают сообщения об ошибках на терминал. Сообщения об ошибках этих команд могут сливаться друг с другом, но порядок сообщений будет правильный.

Если потребуется, вы можете продлить канал и перенаправить выход uniq в другую утилиту. Просто присоедините другой канал, чтобы продолжить преобразование. Например, вы можете добавить | less, чтобы выводить результат по страницам, или добавьте | wc -l чтобы подсчитать количество файлов с уникальными именами. Команда wc (сокр. от word count) может считать символы, слова, строки.

Или вы можете использовать символ >, чтобы сохранить результат работы всей последовательности команд в файл (перезаписав его текущее содержимое). Также можно использовать >>, чтобы приписать результаты работы к содержимому файла (если такого файла нет – он будет создан).

Другое полезное перенаправление обозначается символом <. Рисунок 5 показывает, как можно перенаправить stdin, чтобы поток ввода считывал данные из файла. Команда sort считывает список слов из указанного файла и сортирует его по алфавиту.

Рисунок 5. Перенаправление стандартного канала ввода на считывание из файла

Часто вам требуется собрать данные с stdout и stderr устройств. Например, если вы выполняете объемную задачу по анализу данных, вы, возможно, захотите просмотреть промежуточные результаты и ошибки, которые возникли по ходу работы. Вы можете использовать различные типы перенаправления, чтобы сделать это: |&, >&, >>&, например, создать канал и перенаправить туда stdout и stderr. На рисунке 6 показано, как перенаправить устройства stdout и stderr в общий поток вывода.

Рисунок 6. Сведение каналов stderr и stdout в один поток вывода

Введение в оболочку Z (Z shell)

Большинство современных оболочек UNIX, включая bash — оболочку Борна (Bourne shell) и ksh — оболочку Корна (Korn shell), поддерживают виды перенаправления, упоминавшиеся выше, хотя синтаксис, используемый в этих оболочках, может слегка отличаться. (За дополнительной информацией обращайтесь в документацию по вашей оболочке).

Большинство операторов для перенаправления поддерживаются всеми оболочками UNIX в течение последних 25 лет. Несмотря на это, большая часть оболочек оказались неспособными предложить новые способы использования перенаправления. Например, большинство оболочек могут только перенаправить вход только из одного файла, и вам приходится использовать такую утилиту как tee, чтобы осуществлять вывод сразу в нескольких направлениях. У утилиты tee есть один вход и два выхода. Пример 5 демонстрирует возможности оболочки bash (интерпретатора командной строки).

Пример 5. Использование bash
bash$ ls
tellme
bash$ cat tellme
echo Your current login, working directory, and system are...
whoami
pwd
systemname
bash$ bash < tellme |& tee log
Your current login and working directory are...
strike
/home/strike
bash: systemname: command not found
bash$ ls
tellme log
bash$ cat log
Your current login and working directory are
strike
/home/strike
bash: systemname: command not found

Хотя оболочки UNIX в основном используют для ввода данных клавиатуру, такая оболочка как bash может использовать файл для ввода данных, так как stdin, на самом деле, это тоже файл. В предыдущем примере фрагмент bash < commands заставляет bash выполнить список команд, находящихся в файле tellme. Конструкция |&tee log направляет stdin и stdout bash в утилиту tee, которая печатает данные из канала stdin в stdout и в файл log.

Но что, если вы захотите подать на вход bash более чем один файл? Конструкция cat file1 file2 file3 | bash — это подходящее и, возможно, единственное решение, так как bash не поддерживает такой синтаксис bash < file1 < file2 < file3.

Более того, bash не может направить вывод более чем одному адресату. Например, вы не сможете выполнить такую инструкцию bighairyscript > ~/log | mail -s "Important stuff" team из командной строки bash.

Но относительно новая zsh — оболочка Z (Z shell – см. дополнительную информацию) может обрабатывать сразу несколько входных и выходных перенаправлений из одной командной строки. В примере 6 приведена команда, которая сохраняет stdout в файл, называемый log, и отравляет его по электронной почте.

Пример 6. Работа с оболочкой Z
zsh% bash < tellme > log | mail -s "Who you are" 'whoami'
bash: line 4: systemname: command not found
zsh% <log
Your current login, working directory, and system are...
strike
/home/strike

Фрагмент 'whoami' запускает команду whoami и вставляет результат работы этой команды вместо себя. Такой результат достигается предварительным запуском небольшого фрагмента командной строки перед выполнением остального содержимого командной строки.

Давайте разберем предыдущую команду слева направо. Команда bash создает файл log и отправляет результаты работы команд из файла tellme на адрес электронной почты. Так как поток stderr не перенаправлялся при помощи оператора > или канала, то сообщения об ошибках выводятся в stdout. Команда <log — это другое сокращение Z, работает аналогично команде cat. Так что команда lt;file эквивалента cat file.

Оболочка Z также может обрабатывать более чем одно перенаправление входных данных. Команда cat < file1 < file2 < file3 в оболочке Z эквивалента cat file1 file2 file3. Правда, первый вариант конструкции явно более громоздкий, чем второй, а многократные перенаправления stdout используются куда чаще. Тем не менее, если утилита, которую вам нужно запустить, принимает на вход только один аргумент, возможность оболочки Z по множественному перенаправлению ввода может оказаться полезной.

В оболочке Z много других нововведений, включая универсализацию файловых имен (globbing), расширенную обработку шаблонов и мощную систему завершения кода, которая помогает вам меньше печатать в командной строке. Две следующие статьи этой серии будут посвящены оболочке Z.

Тонкости при работе с оболочкой

Предлагаем вам несколько полезных советов, которые могут сделать вашу работу в UNIX более продуктивной. Эти команды будут работать во всех оболочках, а не только zsh.

  • Создание полной копии любого каталога, включая символические ссылки, используя команду tar:

    tar cf - /path/to/original |  \
      (mkdir -p /path/to/copy; cd /path/to/copy; tar xvf -)

    Сначала tar архивирует указанный каталог /path/to/original и выводит содержимое архива в stdout, знак переноса (-), используемый с параметром с (создать), направляет вывод в stdout. Команда в круглых скобках — это вложенная оболочка, команды во вложенных оболочках не влияют на работу основной оболочки. Команда mkdir -p создает указанный каталог, включая все промежуточные каталоги, и команда cd переводит оболочку в новый каталог. Вторая команда tar считывает содержимое архива из stdin и извлекает его содержимое в указанный каталог, знак переноса (-) с параметром х (извлечь) заставляет считывать входные данные из stdin.

  • Чтобы сохранить данные из stdout последовательности команд в файл и одновременно просматривать их, используйте конструкцию less -O file. Аргумент -O копирует данные, поступившие по stdin в указанный файл. Например:

    sort /etc/aliases | less -Osorted
  • Если каталог содержит множество файлов ваша оболочка (включая zsh в зависимости от числа файлов и от их имен) может оказаться не способной перечислить все файлы, используя поиск по шаблонам, так как обычно длина содержимого командной строки ограниченна определенным числом символов. Следовательно, такая конструкция:

    foreach i (*)
    ...
    end

    может привести к ошибке. (Возможно, вы увидите такое сообщение Line length exceeded, когда длина вашей командной строки будет превышена.) Если происходит такая ошибка, используйте канал ввода и утилиту xargs. Эта утилита считывает данные из канала и запускает указанную команду для каждой считанной строки.

    Например, если вы хотите найти все веб страницы на вашем сервере, которые ссылаются на URL www.example.com, вы можете использовать такую команду:

    % find / -name '*html' -print \
      | xargs grep -l 'www.example.com' \
      | less -Opages

    Команда xargs принимает на вход имена файлов от find и последовательно запускает grep -l для обработки каждого файла, вне зависимости от того, сколько файлов нашлось. Команда grep -l печатает имя файла, если в нем удалось в нем обнаружить указанный фрагмент текста, а затем прекращает анализ этого файла. Утилита less позволяет вам просматривать результаты по страницам и сохранить список в файл с названием pages. Результатом работы этой команды будет список файлов, которые содержат строку «www.example.com».

Заключение

В этой статье вы изучили основы использования оболочки UNIX. В следующих статьях будут рассмотрены различные команды и приемы, которые вы сможете использовать для решения повседневных задач. От файловой системы до локальных сетей, практически все задачи по обработке информации и администрированию системы могут эффективно решаться из командной строки UNIX.

Оставайтесь на связи!

Ресурсы для скачивания
Похожие темы
  • Оригинал статьи (EN)
  • Оболочка Z: скачайте последнюю версию Z shell с домашней страницы оболочки Z(EN).
  • Архив переписки (EN) по zsh: ознакомьтесь с этими материалами чтобы узнать больще о приемах работы в оболочке Z.
  • AIX и UNIX: сообщество developerWorksпредлагает сотни информативных статей и обучающих курсов различной стпепени сложности по AIX и UNIX.
  • IBM trial software: создайте ваше новое приложение с помощью программного обеспечения IBM, которое можете загрузить прямо со страницы сообщества developerWorks.(EN)
  • Podcasts(EN): оставайтесь на связи с техническими экспертами IBM.

10 основных консольных команд UNIX

Для начала

Привет! Это набор команд для тех, кто еще не знаком с командной строкой Linux или Mac OS. Понимание того, что вы вводите сильно упростит настройку ваших систем автоматизации. Это статья про использование именно оболочки bash. Удачи!

Я не буду прописывать приглашения, т. к. запросы в системах UNIX настолько разнообразны, что большинство людей привыкают, что символ $ обозначает приглашение. После знака # я пишу комментарии, однако в терминале их писать не нужно.

pwd

Первая команда PWD — Print Working Directory, переводится, как вывести текущую директорию

cd

cd — переводится, как сменить директорию

cd ~ — это переход в домашнюю директорию

$ cd ~
$ pwd
/Users/VictorPetrischev
$ cd /Users/VictorPetrischev/Desktop 
$ pwd
/Users/VictorPetrischev/Desktop
$

Помните, что имена каталогов с пробелами следует помещать в ка­вычки. Это применимо к любой команде. Например, если у вас есть каталог Му Folder, используйте команду cd «Му Folder».

mkdir и rmdir

mkdir — make directory, создать каталог (директорию, папку — синонимы), и rmdir — remove diretory, удалить каталог (удаляет только пустые каталоги)

$ pwd
$ cd ~
$ mkdir temp                                      #Создать папку temp
$ mkdir temp/stuff                                #Создать папку stuff в каталоге temp
$ mkdir temp/stuff/things 
$ mkdir -p temp/stuff/things/frank/joe/alex/john  #Создать ветку с директориями (/frank/joe/alex/john в папке things)
$ mkdir "Folder with space"                       #В кавычки нужно брать название если в нем пробелы
$
$ cd temp
$ ls
stuff
$ cd stuff/things/frank/joe/alex/john/ $ cd ..
$ rmdir john
$ cd ..
$ rmdir alex 
$ cd ..
$ ls
joe
$ rmdir joe

Внимание! Если вы выполняете команду rm dir в операционной системе macOS и операция завершается неудачей (каталог остается на месте), хотя вы уверены в том, что он пуст, это означает, что в ка­ талоге находится файл с именем.DS_Store. В этом случае выполните команду rm -rf <каталог> (замените слово <каталог> именем удаляемого каталога)

ls

ls — вывод содержимого каталога

$ cd "Тихон Tech"
$ pwd
/Users/VictorPetrischev/Desktop/Тихон Tech
$ ls
Amperka DIY
Control Temperature raspberrypi.txt
Smart Home
TIKHONs sofware xcode
WTL_v0.0.16.370.34_mac
YDXJ0979.JPG
dcim
log
python
raspbian
tools.txt
ultrasonic
вилка
Камера  Хак
Создать pdf из изображений.workflow
$

touch

touch — создать пустой файл, например эту команду очень удобно использовать, когда вам нужно создать пустой файл без расширения с именем ssh для включения ssh по умолчанию в свежеустановленной raspbian.

$ cd temp
$ touch iamcool.txt $ Is
iamcool.txt
$

less и cat

less и сat — команды для вывода содержимого файла. Less выводит текст разбивая на страницы или отрывки и перемещаться по тексту предполагается с помощью курсора. Cat просто отображает все содержимое файла в консоль

$ less test.txt
[здесь отображается содержимое файла]

Чтобы завершить работу команды less, введите букву q (от слова quit — выход).

$ cat test.txt
Текст файла выводится прямо
в консоль 
$

rm

rm — remove, удалить

$ cd temp
$ ls
uncool.txt iamcool.txt neat.txt something thefourthfile.txt
$ rm uncool.txt
$ ls
iamcool.txt neat.txt something thefourthfile.txt
$ rm iamcool.txt neat.txt thefourthfile.txt
$ ls
something
$ cp -r something newplace $  #Копирование файла
$ rm something/awesome.txt $ rmdir something
$ rm -rf newplace             # рекурсивное удаление всех файлов в каталоге и каталога
$ ls
$

exit

exit — выход из оболочки, это как нажать на кнопку выключить на компьютере и потом отключить его из сети или просто выдернуть розетку (в случае закрыть терминал и прервать действия) — приближенное сравнение

Права суперпользователя 

В некоторых случаях у вас не хватит прав выполнить ту или иную команду, тогда перед командой нужно ввести sudo, она дает временные root права и смотрит за тем, что бы вы не испортили систему. Однако sudo не дает полных root прав, которые например могут понадобиться при установке плагина homebridge-xiaomi-roborock-vacuum для homebridge. Тогда вам нужно зайти как пользователь root, для этого введите команду sudo su —, ВНИМАНИЕ ОПАСНОСТЬ «СЛОМАТЬ» СИСТЕМУ, ПОЛЬЗУЙТЕСЬ ROOT ПРАВАМИ С ОСТОРОЖНОСТЬЮ. Чтобы выйти из root, введите exit.

И еще команды, которые я часто использую при постройке умного дома

Подключение по ssh 

$ ssh [имя пользователя]@[ip компьютера], например ssh [email protected] 

Иногда после переустановки системы на raspberry и терминал Mac OS выдает ошибку при подключении через ssh, тогда на до выполнить:

$ cd ~
$ rm .ssh/known_hosts

И подключиться снова

Для raspbian.

 Обновление системы одной командой:

sudo apt-get update && sudo apt-get upgrade -y

Правильное выключение raspberry (так можно выключать и mac, почему-то таким способом он выключается намного быстрее):

Руководства по Unix Bash

Оболочка командной строки, который вы пользовались, называется Bash. Это не лучшая оболочка, но она широко распространена и обладает множеством функций, поэтому отлично подойдет в качестве отправной точки. 

Некоторые примеры для этой статьи использовались из книги Зед А. Шоу «Легкий способ выучить python» из раздела «Экспресс-курс по оболочке командной строки». 

Я могу где-то ошибиться или быть неточным, прошу простить и принимаю замечания в телеграмм. Если вам интересна тема пишите в комментарии, я дополню статью.

Всем спасибо!

Учим Unix: Команды UNIX

pwd Вывести текущую директорию.
hostname Вывести или изменить сетевое имя машины.
whoami Ввести имя под которым я зарегистрирован.
date Вывести или изменить дату и время. Например, чтобы установить дату и время равную 2000-12-31 23:57, следует выполнить команду:
date 123123572000
time Получить информацию о времени, нужного для выполнения процесса + еще кое-какую информацию. Не путайте эту команду с date. Например: Я могу определить как много времени требуется для вывода списка файлов в директории, набрав последовательность:
time ls
who Определить кто из пользователей работает на машине.
rwho -a Определение всех пользователей, подключившихся к вашей сети. Для выполнения этой команды требуется, чтобы был запущен процесс rwho. Если такого нет — запустите «setup» под суперпользователем.

finger [имя_пользователя] Системная информация о зарегистрированном пользователе. Попробуйте: finger root
uptime Количество времени прошедшего с последней перезагрузки.
ps a Список текущих процессов.
top Интерактивный список текущих процессов отсортированных по использованию cpu.
uname Вывести системную информацию.
free Вывести информацию по памяти.
df -h (=место на диске) Вывести информацию о свободном и используемом месте на дисках (в читабельном виде).
du / -bh | more (=кто сколько занял) Вывод детальной информации о размере файлов по директориям начиная с корневой (в читабельном виде).
cat /proc/cpuinfo Системная информация о процессоре. Заметьте, что файла в /proc директории — не настоящие файлы. Они используются для получения информации, известной системе.
cat /proc/interrupts Используемые прерывания.
cat /proc/version Версия ядра Linux и другая информация
cat /proc/filesystems Вывести используемые в данный момент типы файловых систем.
cat /etc/printcap Вывести настройки принтера.
lsmod (как root) Вывести информацию о загруженных в данный момент модулях ядра.
set|more Вывести текущие значения переменных окружения.
echo $PATH Вывести значение переменной окружения «PATH» Эта команда может использоваться для вывода значений других переменных окружения. Воспользуйтесь командой set, для получения полного списка.

Работа с сетью

netconf (как root) Очень хорошая программа настройки сети, использующая для интерактивной работы с пользованием, текстовое меню.
ping [имя_машины] «Проверка на вшивость». Есть или нет контакта с другой машиной (в качестве параметре команде можно передавать сетевое имя машины или IP адрес), нажмите -C когда вся требуемая информация будет получена.
route -n Вывести таблицу маршрутизации (the routing table).
ipfwadm -F -p m Настроить firewall.
ifconfig (как root) Вывести информацию о текущих сетевых интерфейсах (ethernet, ppp, и т.д.) Ваша первая ethernet плата плата будет показана как eth0, вторая как eth2, первый ppp модем как ppp0 и так далее. «lo» — расшифровывается как «loopback only» сетевой интерфейс, который должен быть постоянно активирован. Используйте соответствующие опции (смотрите результат выполнения ifconfig —help) для настройки сетевых интерфейсов.
ifup [имя_сетевого_интерфейса] (/sbin/ifup при работе под обычным пользователем) Активизация соответствующего сетевого интерфейса. Например:
ifup eth0
ifup ppp0
Пользователь может активизировать и выключить сетевое интерфейс ppp только когда установлены соответствующие права доступа (права можно установить в процессе настройки ppp через «netconf»)
ifdown [имя_сетевого_интерфейса] (/sbin/ifdown при работе под обычным пользователем). Диактивизация соответствующего сетевого интерфейса..

Простейшие действия

ls Список файлов в текущей директории. Команда выполнении команды dir выполняется команда ls.
cd [директория] Сменить директорию.
cp [что копировать][куда копировать] Копировать файлы.
mcopy [что копировать][куда копировать] Копировать файлы при работе с файловой системой dos (монтировать диска dos необязательно). Например: mcopy a:\autoexec.bat ~/junk . Для дополнительной информацией по подобным командам (mdir, mcd, mren, mmove, mdel, mmd, mrd, mformat ….) ознакомьтесь с man mtools.
mv [что перемещать][куда перемещать] Переместить или переименовать файл.
ln -s [на что сделать ссылку][имя ссылки] Создать символическую ссылку.
rm [файлы] Удалить файлы.
mkdir [директорию] Создать новую директорию.
rmdir [директорию] Удалить пустую директорию.
rm -r [файлы и/или директории] (рекурсивное удаление) Удалить файлы, директории и их поддиректории. ОСТОРОЖНЕЙ с этой командой, если у вас права суперпользователя! Пока у Linux нет системы полного восстановления удаленных файлов (если вы не пользуетесь специальными программами для помещения удаленный файлы в специальный каталог — a la корзинка под W95).
cat [имя файла] | more Просмотр содержимого текстового файла по одной странице за раз.
less [имя файла] Просмотр содержимого текстового файла с возможностью вернуться к предыдущим страницам. Нажмите q когда захотите выйти из программы. «Less» — аналог команды DOS «more», хотя очень часто «less» бывает более удобной чем «more».
pico [имя файла] Редактировать текстовый файл.
lynx [html файл или ссылка] Просмотр файла html или WWW ссылки с помощью текстового браузера Lynx.
tar -zxvf файлы] Распаковать архив tgz или tar.gz, который вы вытянули из сети.
find / -name «имя файла» Найти файл с именем «имя файла». Поиск начинается с директории / . «имя файла» может содержать маску для поиска.
pine Хорошая текстово — ориентированная программа для чтения электронной почты. Еще одна подобная программа называется «elm». Netscape считывает ваши письма с вашего Internet адреса, а pine позволяет вам просматривать «локальную» почту — то есть ту почту, которую посылает вам процесс son или cron.
mc Запустить программу оправления файлами «Midnight Commander» (Выглядит как «Norton Commander», но по своим возможностям ближе к far или dn).
telnet [сервер] Связаться по telnet с другой машиной. Используйте имя машины или ее IP адрес. Войдите с помощью вашего пароля (вы должны быть зарегистрированы на этой удаленной машине). Это позволит вам войти на другую машину и работать на ней, как будто вы сидите за ее клавиатурой (почти никаких отличий).
ftp [сервер] Связаться по ftp с удаленным компьютером. Этот тип связи хорош для копирования файлов с/на удаленную машину.
minicom Minicom — программа (выглядит как telix или рrocomm для Linux).
./Имя_Программы Запустить исполняемый файл в текущей директории, которая нет в списке директорий, указанных в переменной окружения PATH.
startx Запустить X-windows сервер и установленный по умолчанию оконный менеджер. Похоже на то как вы набираете «win» под DOS с Win3.1
xterm (в X терминале) Запустить простой терминал в графической оболочке X-windows. Для того чтобы выйти из него наберите «exit».
xboing (в X терминале). Очень классный, старый — добрый арканоид.
gimp (в X терминале) Очень мощный графический редактор (по возможностям близок к Photoshop). Требует некоторого времени для обучения — очень хорош для художников. Для доступа к локальному меню воспользуйтесь правой кнопкой мыши.
netscape (в X терминале) Запустить netscape (требуется отдельная установка этого продукта). Нормальная поддержка русского языка включена в 4.07 версию этого продукта — поэтому следует поставить эту версию или более новую.

Основные Команды Администрирования

printtool (как root в X терминале) Сконфигурировать ваш принтер.
setup (как root) Сконфигурировать мышь, звуковую карту, клавиатуру, графическую оболочку X-windows и системные службы. Очень простая в пользовании программа.
alias ls=»ls -Fskb —color» Создать alias — псевдоним для того чтобы одной командой можно было запустить более сложную комбинацию команд. Поместите создание alias в файл /etc/bashrc если вы хотите, чтобы эти псевдонимы были доступны всем пользователям вашей системы.
adduser [имя_пользователя] Зарегистрировать нового пользователя (у вас должны быть права суперюзера). Например:
adduser ivanov
Не забудьте следующим делом настроить пароль пользователя. Директория пользователя находится в каталоге /home/имя_пользователя.
useradd [имя_пользователя] То же, что и adduser.
userdel [имя_пользователя] Удалить пользователя из системы (вы должны зайти как root). С пользовательским каталогом и не прочитанными письмами удаленного пользователя нужно разбираться отдельно.
groupadd [имя_группы] Создать новую группу пользователей на вашей системе. Не обязательно создавать группу непосредственно на основной машине.
passwd Изменить пароль. Если вы суперпользователь, то вы можете изменить пароль любого зарегистрированного пользователя набрав команду:
passwd имя_пользователя
chmod [права доступа][файл] (=change mode) Изменить права доступа файлов, чьим владельцем вы являетесь (если вы не root, в этом случае вы можете изменить права доступа для любого файла). Есть три способа доступа к файлу: чтение — read (r), запись — write (w), исполнение — execute (x) и три типа пользователей: хозяин файла — owner (u), члены той же группы, что и хозяин файла (g) и все остальные (o). Поверить текущие права доступа можно следующим способом:
ls -l имя_файла
Если файл доступен всеми способами всем пользователям, то напротив имени файла будет следующая комбинация букв:
rwxrwxrwx
Первые три буквы — это права доступа для хозяина/хозяйки файла, второй триплет — права доступа для его/ее группы, следующая тройка — права доступа для остальных. Отсутствие права доступа показывается как «-«.;
Например: Эта команда позволит вам установить права доступа на чтение для файла «junk» для всех (all=user+group+others):
chmod a+r junk
Эта команда отнимет право доступа на исполнение файла у всех кроме пользователя и группы:
chmod o-x junk
Для получение дополнительной информации наберите chmod —help или man chmod или почитайте любое руководство по Linux.
Вы можете установить права доступа по умолчанию для создаваемых вами файлов с помощью команды «umask» (наберите man umask).
chown [новый_хозяин][файлы]
chgrp [новая_группа][файлы] Изменить хозяина и группу для файла.
Вы можете использовать эти две команды, после того как сделали копию файла для кого- либо.
su (=super user) Вход в систему как суперпользователь (у вас спросят ваш пароль). Набрав «exit» вы вернетесь в вашу предыдущую пользовательскую оболочку. Пользователь root существует для администрирования системы и команда su дает быстрый доступ к возможностям суперпользователя, когда вам это потребуется. Никогда не входите в систему под пользователем root, используйте для этой цели команду su.

Контроль процессов

ps (=print status) Вывести список текущих процессов с их IDs (PID) идентификаторами. Используйте
ps axu
для того чтобы отобразить все процессы запущенные на вашей системе, которые имеют вас в качестве хозяина (это касается и процессов которые отцеплены от терминала).
fg [PID] Вернуть фоновый или приостановленный процесс в интерактивное (высокоприоритетное) состояние;
bg [PID] Сделать процесс фоновым. Обратная функция от fg. Может следовать вслед за комбинацией z.
kill [PID] «Убить» процесс. Для начала определите PID «убиваемого» процесса при помощи ps.
killall [имя_программы] «Убить» все процессы по имени программы.
xkill (в терминале X window) «Убить» процесс, на окно которого укажите курсором.
lpc (как root) Проверить очередь принтера.
lpq Вывести список очереди заданий на печать.
lprm [Номер Задание] Удалить задание из очереди на печать.
nice [имя_программы] Запустить процесс, установив его приоритет.
renice [PID] Изменить приоритет процесса.

FAQ по Юниксу: основные команды — «Хакер»

FAQ по Юниксу:
консоль

В своих факах вы часто просите
рассказать об основных командах Юникса.
Поэтому этот выпуск посвящается работе с
консолью.

1. Система UNIX различает БОЛЬШИЕ и
малые буквы, и к этому нужно привыкнуть.

2. Юникс — это тебе на МастДай и не
МАК — если уничтожить какой-нибудь файл, то
никаких проблем с его восстановлением не
будет. Потому как восстановить
уничтоженный файл в системе Unix НЕВОЗМОЖНО.
В Unix отсутствует команда unerase, и к этому тоже
нужно привыкнуть. Успокаивает только то,
что вирусы и анитивирусы в Unix тоже
отсутствуют:)(OUPS!Я сказал «совсем», я хотел сказать «почти»:)).

3. В имени  файла  директории
отделяются от последующей части символом
«/» Если имя начинается со слэша — 
значит, это полное маршрутное имя. Простое имя файла может состоять из ЛЮБЫХ символов.
Длина простого имени не более 256 символов.
Длина полного маршрутного имени файла не
более 1024 символов.  Для задания шаблона
имен  используются  символы  * (произвольная
последовательность символов) и  ?  (один
произвольный символ). Два имени являются
выделенными. Имя из одной точки «.»
обозначает текущую директорию, имя из двух
точек «..» — вышележащую.

4 Чтобы  запустить  программу
на выполнение, достаточно набрать ее имя и, если нужно,
другие аргументы командной строки. 

команда -ключи -ключи …  прочие
разные аргументы …

Пример: /bin/lynx #запустится текстовый
браузер.

5 Пользователи системы UNIX
объединяются в группы, и каждая из групп
может обладать определенным набором
привилегий.

6 Выдачу одной команды можно
перенаправлять на вход другой команды. Для
этого используется «|» — конвейер.

Пример: посчитать суммарный размер
и число строк всех файлов в каталоге /home,
имена которых начинаются с символов «zlob»

    cat /home/zlob* | wc -c

# Команда cat сливает вместе все
файлы вида /home/zlob*,
# wc -c -l считает количество символов и число
строк во входном
# потоке.

Или просмотреть с листанием
длинную выдачу команды:

   ps -ef  |  more

Того же результата можно достичь и
без конвейера таким образом:

  ps -ef > temp-file
  more temp-file
  rm temp-file

Некоторые наиболее юзаемые
команды

pwd   — Получить имя
текущей директории.

cd    — Изменить текущую
директорию(аналог команды ДОС-а).

Пример: cd /usr/spool/lp/adm
Пример: cd..
id

Если директория не указана, ты
попадаешь в свой «домашний» каталог $HOME

ls    — Распечатать
информацию о файлах или директориях.

Пример: ls /etc

Формат команды :  ls [ключи] [имена]

Имена — имена файлов или директорий;
для директорий распечатывается список
входящих в нее файлов, для файлов —  повторяется имя файла и дополнительная
информация в соответствии с ключами.
Имена файлов выводятся в алфавитном
порядке. Если имена не заданы, выдается
содержимое текущей директории. Ключи: по умолчанию выдаются только
имена файлов, в одну  колонку и в
алфавитном порядке.

cat   — Слить или
вывести файлы-аргументы на стандартный
вывод. 

Пример: cat /etc/passwd

cp    — Копировать
файлы.

mv  — Переместить (переименовать)
файлы.

Пример: mv zlob zlobland #Поместить файл
«zlob» в каталог «zlobland».

ln    — Создать
ссылку на файл.

rm    — Удалить
файлы.

Формат команды :  rm [-fri]  файл …
        -i      —
просить подтверждения на каждое удаление
        -r      —
рекурсивно удалить вместе с подкаталогами
        -f      —
не просить подтверждения, а сразу удалять

rmdir — Удалить директорию.

Пример: rmdir zlobland

mkdir — Создать директорию.
Формат команды :  mkdir  имя_директории

Пример: mkdir zlobland

echo  — Вывести аргументы
командной строки на стандартный вывод.

ps    — Узнать
номера выполняемых процессов.

Сообщает номера процессов,
которые выполняются в системе.
    ps          —
запущенные только с этого терминала
    ps -e      — все
    ps -f       — в «полном»
формате

passwd — Изменить пароль
регистрации.

who   — Узнать, кто
работает в системе.
    who — этими командами можно узнать,
кто вы такой, и кто еще работает в системе
    who am i        
    finger
    last | more
    id
man -k who   — сообщит все возможные команды,
которыми можно узнать, кто и что делает в
системе.

more — позволяет просматривать файл, делая остановку на
каждой границе экрана

Пример: more file_name …
Просмотром можно управлять с помощью
клавиш:
q      — завершить просмотр
ПРОБЕЛ — показать следующую страницу
ENTER  — сдвинуться на одну строку
b      — показать предыдущую
страницу
/      — поиск
h      — Help — посмотреть список
всех возможных команд

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

chmod — Изменение прав
доступа к файлам. Команда chmod меняет
атрибуты (права доступа) файла. Проставить
файлам право на выполнение:
    chmod u+x file1
Разрешить остальным пользователям
исправлять файл:
    chmod a+w file1

kill — Прервать процесс.
Команда  kill  посылает  указанному
процессу сигнал немедленной остановки. 

Прервать процесс номер 31337 (номер
можно узнать командой ps -e)     
kill -9 31337

Прервать  программу на вашем
терминале, запущенную НЕ в фоновом режиме,
можно нажатием клавиш CTRL-C, или клавиш CTRL-\. 

Как создать файл?

Для создания файла можно
воспользоваться следующими способами:
    touch zlobprimer  — создает файл zlobprimer;
    cat > zlobprimer  — создает  файл 
primer и пишет в него из стандартного ввода.
Запись в файл закончится после нажатия CTRL+D.

Команды для хацкера

su — включить pежим supervisor aka
root. Заходим под своим пасом, выполняем
команду ‘su’ и получаем рута:), если повезет
конечно:))).

newgrp — сменить гpyппy, к котоpой
ты пpинадлежишь в данный момент. Чтобы su запyстить
все-таки можно было :).

at -предназначена для
исполнения чего-то в нужный момент, с твоими
привилегиями. Подменить отложенную процедуру
и воспользоваться чужими привилегиями —
очень интересный, но трудоемкий процесс.

prwarn — пpосит пользователя
вpемя от вpемени сменить паpоль.

sadc — System Activity Data Collector pаботает
от имени root и собиpает данные о pесypсах
системы. Записывает данные в файл.

pt_chmod — daemon, отвечающий за pежим
достyпа по виpтyальным соединениям, чеpез
котоpые теpминальные эмyлятоpы полyчают достyп
к машине.

Успешных вам успехов!:).

Если при использовании Линукса или
при его установке у тебя возникли вопросы — обязательно
шли их сюда: [email protected]  [Subj:
Unix FAQ] и на 90% получишь ответ.

Консольные утилиты Linux, которые смогут облегчить вам жизнь / Хабр

Немного о утилитах на консоли, которые знают немногие, однако они могут быть полезны как для начинающего джуна, так и для крепкого сеньора.

Написать о утилитах (прежде всего консольных) стоит из-за того, что я вижу, как многие люди не используют мощность консоли на все 100%. Многие ограничиваются простым созданием файлов, а также переходом между директориями, работая в консоли. Я считаю что это следствие того, что в рунете мало источников, где бы могли нормально рассказать о утилитах, как на них работать, и что они делают.

Оценивать утилиты мы будем по 5-бальной шкале. Сделано это для того, чтобы вы сразу могли понять, где на мой субъективный взгляд, одна утилита на голову выше другой. Я не призываю использовать что-то определенное, или использовать только командные утилиты. Нет, наоборот, я просто даю вам выбор. Пользоваться или нет полученными знаниями, на которые я потратил кучу времени — дело ваше.

Я сразу хочу сказать, что в этом посте присутствуют утилиты, которые понадобились непосредственно мне при разработке. Если у вас есть свои предложения как дополнить этот список, милости прошу в комментарии.

Передвижение по директориям

ViFM

ViFM — vim-подобный файловый менеджер, который способен быстро переходить между директориями и выполнять какие-либо операции с файлами и директориями посредством ввода команд или хоткеев. По умолчанию представляет из себя две панели (чёрную и белую) между которыми вы можете переключаться.

Оценка: 3, ибо для того чтобы пользоваться этим ФМ, вам нужно будет выучить кучу vim-подобных команд, а также знать хоткеи vim’а

mc

mc (Midnight Commander) — классика в Linux’e. С помощью него вы сможете также быстро перемещаться между директориями, менять права доступа, открывать файлы с помощью встроенного редактора, а также многое другое. В программу встроен довольно понятный интерфейс, где внизу находятся хоткеи, а вверху две панели (между которыми вы переключаетесь с помощью клавиши Tab).

Оценка: 5. Это то, что нужно новичку, и подходит продвинутому пользователю. Вам не нужны никакие предварительные знания, чтобы полноценно использовать этот ФМ.

Ranger

Ranger — ещё один ФМ с вим-подобной раскладкой. Однако, на этот раз утилита написана на Python, что делает её медленнее, но в то же время чертовски гибкой и удобной. Вы можете открывать файлы сразу из менеджера с помощью rifle (сценарий, который ищет какая программа подойдет для открытия данного файла на вашем ПК). Также доступно редактирование, просмотр быстрых клавиш (отдельно от мануала, который вызывается командой :help), и много других плюшек.

Оценка: 4. Было бы 5, если бы не скорость работы

Быстрый поиск

Быстрый поиск не доступен на оболочке Gnome, например. (Здесь говорится о быстром поиске включая содержимое файлов. Gnome же обладает просто поиском, причем ещё и очень медленным)

fzf

fzf (FuzzyFinder) — утилита для быстрого поиска среди директорий, а также текста в определенном массиве файлов. Она может быть легко заменена на find, однако является его более быстрым и удобным аналогом.

Оценка: 5. Утилита отлично выполняет свою работу.

hf

hf (happyfinder) — ещё одна утилита для быстрого поиска в директориях и файлах. Отличается тем, что доступны также некоторые хоткеи и использование команд в самой утилите реализовано чуточку удобнее, чем у конкурента

Оценка: 5

autojump

autojump — утилита для быстрого перепрыгивания через папки к определенному файлу.

Редактирование

Тут я ограничюсь только списком утилит. Ибо редактор — то, чем вы пользуетесь постоянно (а если не пользуетесь, то тем более вам не нужны лишние объяснения), поэтому тут на вкус и цвет

  • Vim
  • NeoVim
  • Nano (стандартный редактор Linux)
  • Vi (ещё один стандартный редактор Linux)
  • Emacs
  • Micro
  • Kakoune
  • Doom Emacs (просто конфигурация Emacs, однако изменяет его так, что это уже совсем не похоже на ванильный Emacs)

Сами терминалы

Alacritty (самый быстрый)

Alacritty — эмулятор терминала на Linux/Windows/MacOS, который считается самым быстрым (так пишет сам автор этого терминала)

Оценка: 4. На мой субъективный взгляд — не самый удобный и комфортный терминал.

Hyper (самый красивый)

Hyper — терминал, который заслуживает того, чтобы вы попробовали использовать его на своей системе. Его интерфейс сделан с помощью CSS/HTML, а базируется он на фреймворке Electron (что конечно же будет делать его немножко прожорливее)

Оценка: 5. Терминал удобный и красивый. Он расширяемый и в нём есть куча фич.

Быстрая справка (или поиск чего-либо)

ddgr

ddgr — командная утилита, которая позволяет пользоваться DuckDuckGo прямо из консоли.

Оценка: 5. Программа быстро выполняет запрос и отдаёт результаты (естественно, ибо не нужно прогружать HTML/CSS. Всё быстренько парсится)

tldr

tldr — замена стандартного man, который умеет всё тоже самое, однако вместо того, чтобы давать полный мануал к программе, она даёт краткие вырезки для быстрого использования

Оценка: 4. Иногда tldr выдаёт уж слишком короткую справку, а также на многие программы просто нет документации в tldr

howdoi

howdoi — парсит ответы с разных сайтов на вопросы о программировании.

Оценка: 3. Часто находит ответы на совсем не те вопросы. Также крайне неудобно, что ответ выводится только один

navi

navi — консольная утилита, подобная howdoi, однако отвечающая сугубо на вопросы о командах консоли

how2

how2 — утилита подобная howdoi, однако дающая выбор на какой вопрос посмотреть ответ. (Парсит всё с StackOverflow)

Оценка: 5. Лучшая утилита для быстрого поиска решений

Веб-разработка

Surge — утилита для быстрого пуша сайтов на бесплатный (или платный, в зависимости от ваших требований) сервер

Caniuse — консольная утилита, которая говорит какие теги поддерживаются в браузерах

Дополнительные утилиты

trash-cli

trash-cli — утилита для просмотра того, что содержится в корзине

buku

buku — утилита для быстрой сортировки и хранения закладок сайтов со всех браузеров.

tmux

tmux — терминальный мультиплексор. Делит окно вашего терминала на панели. Очень удобно, когда в вашем распоряжении нет GUI вообще.

text-meme-cli

text-meme-cli — утилита для создания анимации текста на каком-либо фоне.

asciinema

asciinema — утилита для записи хронологии команд терминала в гиф-файл.

Youtube-dl

youtube-dl — утилита для скачивания видео/аудио с видеохостинга Youtube.

picofeed

picofeed — легкий RSS клиент для консолей

terminalnews

terminalnews — ещё один удобный RSS-клиент для консоли.

Это список утилит, которые я использую сам лично. Дополнительный список вы можете найти здесь ссылка на репозиторий GitHub

Я настоятельно попрошу вас дополнить список своими утилитами в комментариях. Если этот пост принёс в ваш терминал хоть чуточку чего-нибудь нового — был рад посодействовать.

Базовые команды Unix — Глобальная российская IRC-сеть IrcNet.ru

Руководство Новичка — Администратора LINUX (сокращенный вариант)


Содержание:


А. Естественные сочетания клавиш и обозначения

Б. Стандартные команды и команды, дающие информацию по системе

В. Работа с сетью

Г. Простейшие действия

Д. Основные Команды Администрирования

Е. Контроль процессов

Ж. Встроенные в Linux программные утилиты и языки


ВНИМАНИЕ: ПОМНИТЕ ЧТО КОМАНДЫ LINUX ЧУВСТВИТЕЛЬНЫ К РЕГИСТРУ, В КОТОРОМ ИХ
НАБИРАЮТ. Например: Команды Netscape, NETSCAPE и nEtscape это три различные
команды, точно также my_filE, my_file, и my_FILE это три различных файла.

 

А.  Естественные
сочетания клавиш и обозначения

 


[Ctrl][Alt][F1] Переключение на первый консольный
терминал
[Ctrl][Alt][F#] Переключение на #ый консольный терминал
(#=1..6)
[Ctrl][Alt][F7] Переключение на графический терминал (если таковой
запущен)
[Tab] Дополнение текущей последовательности символов,
набранной в консоли, до исполняемой команды. Эта особенность сильно
облегчает жизнь при наборе команд! Это работает также и при загрузке
компьютера через LILO!
[ArrowUp] Просмотр и редактирование буфера истории команд. Для
исполнения команды нажмите [Enter].
[Shift][PgUp] Просмотр текста выведенного на консольный терминал и
ушедшего за приделы экрана. Перемещение в вверх.
[Shift][PgDown] То же что и выше. Перемещение в вниз.
[Ctrl][Alt][+] (в X-windows) Изменение разрешения. Переключение к
следующей конфигурации.
[Ctrl][Alt][-] (В X-windows) Изменение разрешения. Возврат к
предыдущей конфигурации.
[Ctrl][Alt][BkSpc] (в X-windows) Убить текущий сервер X-windows (выйти из
графической оболочки, уничтожив все процессы).
[Ctrl][Alt][Del] Перезагрузка компьютера.
[Ctrl]c Убить текущий процесс.
[Ctrl]d Выход из текущего терминала (обычно работает).
[Ctrl]d Посылка текущему процессу сигнала [Конец-файла] (конец
файла).
[Ctrl]s Остановка вывода на терминал.
[Ctrl]q Возобновление вывода на терминал. Попробуйте эту
комбинацию клавиш, если ваш терминал непонятно почему перестал отвечать
на ваши запросы.
[Ctrl]z Послать текущий процесс в
background. 
reset Восстановление значений по умолчанию для
«запорченного» терминала (терминал показывает странные символы и
неадекватно реагирует на нажатие клавиш). Используйте эту команду если
вы попытались вывести на экран бинарный файл. Вероятно вы не сможете
увидеть эту команду в процессе ее набора.
[Средняя кнопка мыши] Вставка выделенного курсором текста (это не
работает в WordPerfect).
~ Моя домашняя директория. Например cd
~/моя_поддиректория.  
. (точка) Текущая директория.
.. (две точки) Родительская директория для текущего
каталога.

Б.  Стандартные команды и команды, дающие
информацию по системе

 

Команды Описание
pwd Вывести текущую директорию.
hostname Вывести или изменить сетевое имя машины.
whoami Ввести имя под которым я зарегистрирован.
date Вывести или изменить дату и время. Например, чтобы
установить дату и время равную 2000-12-31 23:57, следует выполнить
команду:
date 123123572000
time Получить информацию о времени, нужного для выполнения
процесса + еще кое-какую информацию. Не путайте эту команду с date.
Например: Я могу определить как много времени требуется для вывода
списка файлов в директории, набрав последовательность:
time ls
who Определить кто из пользователей работает на
машине.
rwho -a Определение всех пользователей, подключившихся к вашей
сети. Для выполнения этой команды требуется, чтобы был запущен процесс
rwho. Если такого нет — запустите «setup» под
суперпользователем.
finger [имя_пользователя] Системная информация о зарегистрированном
пользователе. Попробуйте: finger root
uptime Количество времени прошедшего с последней
перезагрузки.
ps a Список текущих процессов.
top Интерактивный список текущих процессов отсортированных
по использованию cpu.
uname Вывести системную информацию.
free Вывести информацию по памяти.
df -h (=место на диске) Вывести информацию о свободном и
используемом месте на дисках (в читабельном виде).
du / -bh | more (=кто сколько занял) Вывод детальной информации о
размере файлов по директориям начиная с корневой (в читабельном
виде).
cat /proc/cpuinfo Системная информация о процессоре. Заметьте, что файла
в /proc директории — не настоящие файлы. Они используются для получения
информации, известной системе.
cat /proc/interrupts Используемые прерывания.
cat /proc/version Версия ядра Linux и другая информация
cat /proc/filesystems Вывести используемые в данный момент типы файловых
систем.
cat /etc/printcap Вывести настройки принтера.
lsmod (как root) Вывести информацию о загруженных в данный
момент модулях ядра.
set|more Вывести текущие значения переменных
окружения.
echo $PATH Вывести значение переменной окружения «PATH»
Эта команда может использоваться для вывода значений других переменных
окружения. Воспользуйтесь командой set, для получения полного
списка.

В. Работа с сетью

 

netconf (как root) Очень хорошая программа настройки сети,
использующая для интерактивной работы с пользованием, текстовое меню.
ping [имя_машины] «Проверка на вшивость». Есть или нет контакта с
другой машиной (в качестве параметре команде можно передавать сетевое
имя машины или IP адрес), нажмите <Ctrl>-C когда вся требуемая
информация будет получена.
route -n Вывести таблицу маршрутизации (the routing
table).
ipfwadm -F -p m Настроить firewall.
ifconfig (как root) Вывести информацию о текущих сетевых
интерфейсах (ethernet, ppp, и т.д.) Ваша первая ethernet плата плата
будет показана как eth0, вторая как eth2, первый ppp модем как ppp0 и
так далее. «lo» — расшифровывается как «loopback only» сетевой
интерфейс, который должен быть постоянно активирован. Используйте
соответствующие опции (смотрите результат выполнения ifconfig —help)
для настройки сетевых интерфейсов.
ifup [имя_сетевого_интерфейса] (/sbin/ifup при работе под обычным пользователем)
Активизация соответствующего сетевого интерфейса. Например:

ifup eth0 
ifup
ppp0
Пользователь может активизировать и
выключить сетевое интерфейс ppp только когда установлены соответствующие
права доступа (права можно установить в процессе настройки ppp через
«netconf»)
ifdown [имя_сетевого_интерфейса] (/sbin/ifdown при работе под обычным пользователем).
Диактивизация соответствующего сетевого
интерфейса..

Г.  Простейшие
действия

 

ls Список файлов в текущей директории. Команда
выполнении команды dir выполняется команда ls.
cd [директория] Сменить директорию.
cp [что копировать][куда копировать] Копировать файлы.
mcopy [что копировать][куда копировать] Копировать файлы при работе с файловой системой dos
(монтировать диска dos необязательно). Например: mcopy
a:\\autoexec.bat ~/junk .  Для дополнительной информацией по
подобным командам (mdir, mcd, mren, mmove, mdel, mmd, mrd, mformat ….)
ознакомьтесь с man mtools.
mv [что перемещать][куда перемещать] Переместить или переименовать файл.
ln -s [на что сделать ссылку] [имя ссылки] Создать символическую ссылку.
rm [файлы] Удалить файлы.
mkdir [директорию] Создать новую директорию.
rmdir [директорию] Удалить пустую директорию.
rm -r [файлы и/или директории] (рекурсивное удаление) Удалить файлы, директории и их
поддиректории. ОСТОРОЖНЕЙ с этой командой, если у вас права
суперпользователя! Пока у Linux нет системы полного восстановления
удаленных файлов (если вы не пользуетесь специальными программами для
помещения удаленный файлы в специальный каталог — a la корзинка под
W95).
cat [имя файла] | more Просмотр содержимого текстового файла по одной
странице за раз.
less [имя файла] Просмотр содержимого текстового файла с возможностью
вернуться к предыдущим страницам. Нажмите q когда захотите выйти из
программы. «Less» — аналог команды DOS «more», хотя очень часто «less»
бывает более удобной чем «more».
pico [имя файла] Редактировать текстовый файл.
lynx [html файл или ссылка] Просмотр файла html или WWW ссылки с помощью
текстового браузера Lynx.
tar -zxvf [файлы] Распаковать архив tgz или tar.gz, который вы вытянули
из сети.
find / -name «имя файла» Найти файл с именем «имя файла». Поиск начинается с
директории / . «имя файла» может содержать маску для
поиска.
pine Хорошая текстово — ориентированная программа для
чтения электронной почты. Еще одна подобная программа называется «elm».
Netscape считывает ваши письма с вашего Internet адреса, а pine
позволяет вам просматривать «локальную» почту — то есть ту почту,
которую посылает вам процесс son или cron.
mc Запустить программу оправления файлами «Midnight
Commander» (Выглядит как «Norton Commander», но по своим возможностям
ближе к far или dn).
telnet [сервер] Связаться по telnet с другой машиной. Используйте имя
машины или ее IP адрес. Войдите с помощью вашего пароля (вы должны быть
зарегистрированы на этой удаленной машине). Это позволит вам войти на
другую машину и работать на ней, как будто вы сидите за ее клавиатурой
(почти никаких отличий). 
ftp [сервер] Связаться по ftp с удаленным компьютером. Этот тип
связи хорош для копирования файлов с/на удаленную машину.
minicom Minicom — программа (выглядит как telix или рrocomm
для Linux).
./Имя_Программы Запустить исполняемый файл в текущей директории,
которая нет в списке директорий, указанных в переменной окружения
PATH.
startx Запустить X-windows сервер и установленный по
умолчанию оконный менеджер. Похоже на то как вы набираете «win» под DOS
с Win3.1
xterm (в X терминале) Запустить простой терминал в
графической оболочке X-windows. Для того чтобы выйти из него наберите
«exit».
xboing (в X терминале). Очень классный, старый — добрый
арканоид.
gimp (в X терминале) Очень мощный графический редактор (по
возможностям близок к Photoshop). Требует некоторого времени для
обучения — очень хорош для художников. Для доступа к локальному меню
воспользуйтесь правой кнопкой мыши.
netscape (в X терминале) Запустить netscape (требуется
отдельная установка этого продукта). Нормальная поддержка русского языка
включена в 4.07 версию этого продукта — поэтому следует поставить эту
версию или более новую.

Д. Основные Команды
Администрирования

 

printtool (как root в X терминале) Сконфигурировать ваш
принтер.
setup (как root) Сконфигурировать мышь, звуковую карту,
клавиатуру, графическую оболочку X-windows и системные службы. Очень
простая в пользовании программа.
alias ls=»ls -Fskb —color» Создать alias — псевдоним для того чтобы одной
командой можно было запустить более сложную комбинацию команд. Поместите
создание alias в файл /etc/bashrc если вы хотите, чтобы эти псевдонимы
были доступны всем пользователям вашей системы.
adduser [имя_пользователя] Зарегистрировать нового пользователя (у вас должны
быть права суперюзера). Например:
adduser
ivanov
Не забудьте следующим делом настроить
пароль пользователя. Директория пользователя находится в каталоге
/home/имя_пользователя.
useradd [имя_пользователя] То же, что и adduser.
userdel [имя_пользователя] Удалить пользователя из системы (вы должны зайти как
root). С пользовательским каталогом и не прочитанными письмами
удаленного пользователя нужно разбираться отдельно.
groupadd [имя_группы] Создать новую группу пользователей на вашей системе.
Не обязательно создавать группу непосредственно на основной
машине.
passwd Изменить пароль. Если вы суперпользователь, то вы
можете изменить пароль любого зарегистрированного пользователя набрав
команду:
passwd имя_пользователя
chmod [права доступа] [файл] (=change mode) Изменить права доступа файлов, чьим
владельцем вы являетесь (если вы не root, в этом случае вы можете
изменить права доступа для любого файла). Есть три способа доступа к
файлу: чтение — read (r), запись — write (w), исполнение — execute (x) и
три типа пользователей: хозяин файла — owner (u), члены той же группы,
что и хозяин файла — group (g) и все остальные — other (o). Поверить текущие права
доступа можно следующим способом:
ls -l
имя_файла
Если файл доступен всеми способами
всем пользователям, то напротив имени файла будет следующая комбинация
букв:
rwxrwxrwx
Первые
три буквы — это права доступа для хозяина/хозяйки файла, второй триплет
— права доступа для его/ее группы, следующая тройка — права доступа для
остальных. Отсутствие права доступа показывается как «-«.;

Например: Эта команда позволит вам
установить права доступа на чтение для файла «junk» для
всех (all=user+group+others):
chmod a+r
junk
Эта команда отнимет право доступа на
исполнение файла у всех кроме пользователя и группы:
chmod o-x junk
Для получение
дополнительной информации наберите chmod —help или man chmod или
почитайте любое руководство по Linux.
Вы можете
установить права доступа по умолчанию для создаваемых вами файлов с
помощью команды «umask» (наберите man umask).
chown [новый_хозяин][файлы]
chgrp [новая_группа][файлы]
Изменить хозяина и группу для файла.
Вы можете использовать эти две команды, после того как сделали
копию файла для кого — либо.
su (=super user) Вход в систему как суперпользователь (у
вас спросят ваш пароль). Набрав «exit» вы вернетесь в вашу предыдущую
пользовательскую оболочку. Пользователь root существует для
администрирования системы и команда su дает быстрый доступ к
возможностям суперпользователя, когда вам это потребуется. Никогда не
входите в систему под пользователем root, используйте для этой цели
команду su.

Е. Контроль
процессов

 

ps (=print status) Вывести список текущих процессов с их
IDs (PID) идентификаторами. Используйте
ps
axu
для того чтобы отобразить все процессы
запущенные на вашей системе, которые имеют вас в качестве хозяина (это
касается и процессов которые отцеплены от терминала).
fg [PID] Вернуть фоновый или приостановленный процесс в
интерактивное (высокоприоритетное) состояние;
bg [PID] Сделать процесс фоновым. Обратная функция от
fg. Может следовать вслед за комбинацией <Ctrl>z.
kill [PID] «Убить» процесс. Для начала определите PID
«убиваемого» процесса при помощи ps.
killall [имя_программы] «Убить» все процессы по имени программы.
xkill (в терминале X window) «Убить» процесс, на окно
которого укажите курсором.
lpc (как root) Проверить очередь принтера.
lpq Вывести список очереди заданий на печать.
lprm [Номер Задание] Удалить задание из очереди на печать.
nice [имя_программы] Запустить процесс, установив его
приоритет.
renice [PID] Изменить приоритет
процесса.

Обратите внимание на комбинации
клавиш: [Ctrl]c, [Ctrl]z, [Ctrl]s, и [Ctrl]q.
Они описаны ранее в разделе Естественные сочетания клавиш и обозначения

Ж. Встроенные в Linux программные утилиты и языки

 

emacs (в X терминале) Редактор emacs. Только для продвинутых
пользователей.
gcc [c_исходник] GNU C компилятор. Довольно простой в использовании. В
сети есть очень хорошие руководства по пользованию.
g++ [cpp_исходник] GNU C++ компилятор.
perl Очень мощный скриптовый язык. Чрезвычайно
гибкий, но с довольно сложным синтаксисом. Очень популярен среди
продвинутых пользователей.
python Современный и довольно элегантный
объектно-ориентированный интерпретатор. Выглядит таким же мощным и
немного проще чем perl (таким он только выглядит 🙂 — примечание
переводчика). В сети доступна очень хорошая и довольно объемистая книга
написанная G. van Rossum.
tcl Скриптовый язык (Sun Microsystems).
wish (xterm) «Front end» к Tk — расширение tcl для
X-windows. Обычно используется для написание графического интерфейса к
программам.
g77 GNU FORTRAN.
f2c Перекодировщик из FORTRAN в C.
fort77 Компилятор FORTRAN. Выполняет f2c, а затем использует
gcc или g++.
basic «Зверек Basic».
grep Поиск фрагмента текста в файлах, удовлетворяющего
набранной маске. По крайней мере, основные команды СТОИТ выучить. Маска
определяется с помощью стандартной системы обозначений называемой
«регулярные выражения». Например исполнив:
ps x | grep eggdrop
в консоли покажутся все процессы имеющие в названии eggdrop, запущенные от текущего пользователя.
tr Translation utility (другими словами замена букв в
текстовом файле).
gawk GNU awk (используется для обработки форматированных
текстовых файлов).
sed Утилита для обработки текстовых
файлов.


© Piotr, Stan, Barbara и Marie Klimas. Взято с http://eggdrop.org.ru/unix.php

Базовые команды UNIX

Базовые команды UNIX

Примечание: не все они на самом деле являются частью самой UNIX, и вы можете
не найти их на всех машинах UNIX. Но все они могут использоваться на Turing .
практически таким же образом, набрав команду и нажав
возвращение. Обратите внимание, что некоторые из этих команд отличаются от других в Solaris.
машины — см. отличия SunOS.

Если вы допустили опечатку, проще всего нажать CTRL-u , чтобы
отменить всю строку. Но вы также можете редактировать командную строку (см.
руководство по UNIX).
UNIX чувствителен к регистру.

Файлы

  • ls — выводит список ваших файлов

    ls -l — перечисляет ваши файлы в «длинном формате», который содержит множество
    полезная информация, например точный размер файла, которому принадлежит файл
    и кто имеет право на это смотреть, и когда оно было изменено в последний раз.

    ls -a — перечисляет все файлы, включая те, чьи имена начинаются с
    точка, которую не всегда хочется видеть.

    Есть много других опций, например, список файлов по размеру,
    дата, рекурсивно и т. д.
  • еще filename — показывает первую часть файла,
    ровно столько, сколько поместится на одном экране. Просто нажмите пробел, чтобы увидеть
    больше или q бросить курить. Вы можете использовать шаблон / для
    поиск по выкройке.
  • emacs filename — это редактор, который позволяет вам
    создать и отредактировать файл. См. Страницу emacs.
  • mv filename1 filename2 — перемещает файл (т.е. дает
    это другое имя или перемещает его в другой каталог (см. ниже)
  • cp filename1 filename2 — копирует файл
  • rm filename — удаляет файл.Целесообразно использовать
    параметр rm -i, который запросит подтверждение перед тем, как
    удаление чего-либо. Вы можете сделать это по умолчанию, создав псевдоним в файле .cshrc.
  • diff filename1 filename2 — сравнивает файлы и
    показывает, чем они отличаются
  • wc filename — сообщает вам, сколько строк, слов,
    и символы есть в файле
  • chmod options filename — позволяет изменить чтение,
    писать и выполнять разрешения для ваших файлов.По умолчанию только
    вы можете посмотреть на них и изменить их, но иногда вы можете захотеть
    измените эти разрешения. Например, chmod o + r
    filename
    сделает файл доступным для чтения всем, и
    chmod o-r filename сделает его нечитаемым для других
    еще раз. Обратите внимание, что для того, чтобы кто-то действительно мог посмотреть файл
    необходимые каталоги должны быть как минимум исполняемыми. См. Дополнительную информацию в справке по защите.
  • Сжатие файлов
    • gzip filename — сжимает файлы, чтобы они
      занимают гораздо меньше места.Обычно текстовые файлы сжимаются примерно до половины
      их исходный размер, но он очень сильно зависит от размера файла
      и характер содержания. Для этого есть другие инструменты
      цель тоже (например, сжать ), но gzip обычно дает
      самая высокая степень сжатия. Gzip создает файлы с окончанием ‘.gz’
      добавляется к исходному имени файла.
    • gunzip filename — распаковывает файлы, сжатые с помощью gzip.
    • gzcat filename — позволяет просматривать сжатый файл без
      на самом деле нужно его распаковать (так же, как gunzip -c ).Ты даже можешь
      распечатайте его напрямую, используя gzcat filename | LPR
  • печать
    • lpr filename — print. Используйте параметр -P, чтобы указать
      имя принтера, если вы хотите использовать принтер, отличный от вашего по умолчанию
      принтер. Например, если вы хотите напечатать двустороннюю печать, используйте lpr
      -Pvalkyr-d ‘, или, если вы в CSLI, вы можете использовать’ lpr
      -Pcord115-d ‘. См. Раздел справки по принтерам для получения дополнительной информации о принтерах.
      и их местонахождение.
    • lpq — проверить очередь принтера, например чтобы получить
      номер, необходимый для удаления, или чтобы узнать, сколько других файлов будет напечатано
      прежде чем выйдет ваш
    • lprm jobnumber — удалите что-нибудь из
      очередь принтера. Вы можете найти номер вакансии, используя lpq. Теоретически
      вы также должны указать имя принтера, но это не обязательно, поскольку
      пока вы используете в отделе принтер по умолчанию.
    • genscript — преобразует текстовые файлы в PostScript
      для печати и дает вам несколько вариантов форматирования.Рассмотреть возможность
      создание псевдонима типа alias ecop ‘genscript -2 -r \! * | lpr -h -Pvalkyr ‘
      для печати двух страниц на одном листе бумаги.
    • dvips filename — распечатать файлов .dvi (т.е.
      файлы, созданные LaTeX). Вы можете использовать dviselect только для печати
      выбранные страницы. Смотрите страницу LaTeX для получения дополнительной информации
      информация о том, как сэкономить бумагу при печати черновиков.

Справочники

Каталоги, как и папки на Macintosh, используются для группировки файлов.
вместе в иерархической структуре.

  • mkdir dirname — создайте новый каталог
  • cd dirname — сменить каталог. Вы в основном идете
    в другой каталог, и вы увидите файлы в этом каталоге
    когда вы делаете «ls». Вы всегда начинаете со своего «домашнего каталога», и
    вы можете вернуться туда, набрав «cd» без аргументов. cd .. будет
    поднять вас на один уровень выше вашего текущего положения. Вам не нужно
    идти шаг за шагом — можно делать большие прыжки или избегать ходьбы
    вокруг, указав пути.
  • pwd — сообщит вам, где вы сейчас находитесь.

В поисках вещей

  • ff — найти файлы в любом месте системы. Это может быть
    очень полезно, если вы забыли, в какой каталог вы поместили
    файл, но помните имя. Фактически, если вы используете ff -p , вы не
    даже нужно полное имя, только начало. Это также может быть полезно
    для поиска других вещей в системе, например документация.
  • grep string filename (s) — ищет строку в
    файлы.Это может быть полезно для многих целей, например находка
    нужный файл среди многих, выясняя, какая версия является правильной
    что-то, и даже делать серьезную корпусную работу. grep входит в несколько
    разновидностей ( grep , egrep и fgrep ) и имеет много
    очень гибких вариантов. Просмотрите страницы руководства, если это звучит хорошо
    тебе.

О других людях

  • w — сообщает вам, кто вошел в систему и что они делают.
    Особенно полезно: «неактивная» часть.Это позволяет увидеть,
    на самом деле они сидят и печатают на своей клавиатуре прямо в
    момент.
  • who — расскажет, кто вошел в систему и где они
    приходящий из. Полезно, если вы ищете кого-то, кто на самом деле
    физически в том же здании, что и вы, или в каком-то другом конкретном
    место расположения.
  • finger имя пользователя — дает много информации
    об этом пользователе, например когда они в последний раз читали почту и
    авторизован.Часто люди помещают другую практическую информацию, например, телефон
    номера и адреса в файле под названием .plan . Эта информация
    также отображается «пальцем».
  • последний -1 имя пользователя — сообщает вам, когда пользователь последний раз
    входил и выходил и откуда. Без каких-либо опций последние будут
    дать вам список всех логинов.
  • talk имя пользователя — позволяет вам вести (печатный) разговор с
    другой пользователь
  • запись имя пользователя — позволяет обмениваться однострочными
    сообщения с другим пользователем
  • elm — позволяет отправлять сообщения электронной почты людям в
    мир (и, конечно же, их читать).Это не единственный почтовик, который можно
    используйте, но тот, который мы рекомендуем. Увидеть вяз
    страницу, и узнайте об ведомственных
    списки рассылки (которые вы также можете найти в
    / пользователь / лингвистика / справочный файл).

О себе (электронном)

  • whoami — возвращает ваше имя пользователя. Звучит бесполезно, но
    нет. Возможно, вам понадобится узнать, кто забыл войти
    где-нибудь, и убедитесь, что * вы * вышли из системы.
  • finger и файлы .plan

    , конечно, можно и пальцем пощупать.Это может быть полезно, например,
    в качестве быстрой проверки, получили ли вы новую почту. Попробуйте создать полезный
    .plan файл в ближайшее время. Найдите идеи в чужих файлах .plan. В
    файл должен быть доступен для чтения всем, чтобы его могли видеть через
    ‘Палец’. При необходимости выполните chmod a + r .plan. Вы должны понять, что
    эта информация доступна из любой точки мира, а не только
    другие люди по Тьюрингу.
  • passwd — позволяет вам изменить пароль, который вам следует
    делайте регулярно (не реже одного раза в год).См. Руководство LRB и / или посмотрите пароль справки.
  • ps -u yourusername — перечисляет ваши процессы. Содержит много
    информация о них, включая идентификатор процесса, который вам нужен
    если вам нужно убить процесс. Обычно, когда тебя выгнали
    сеанса дозвона или другим способом
    отключен внезапно, этот список будет содержать нужные вам процессы
    убить. Они могут включать оболочку (tcsh или что-то еще, что вы используете),
    и все, что вы запускали, например emacs или elm.Быть осторожен
    чтобы не убить текущую оболочку — ту, у которой номер ближе к
    одна из команд ps, которые вы сейчас выполняете. Но если это случится,
    не паникуйте. Просто попробуйте еще раз 🙂 Если вы используете X-display, вы можете
    необходимо убить некоторые X-процессы, прежде чем вы сможете их снова запустить. Эти
    будет отображаться только при использовании ps -efl , потому что они root
    процессы.
  • kill PID — убивает (завершает) процессы с идентификатором
    ты дал. Конечно, это работает только для ваших собственных процессов.Получить
    ID с помощью пс . Если процесс не «умирает» должным образом, используйте
    опция -9. Но сначала попробуйте без этой опции, потому что она
    не дает возможности завершить процесс возможно важно
    бизнес перед смертью. Вам может потребоваться убить процессы, например, если
    ваше модемное соединение было прервано, и вы не вышли из системы
    правильно, что иногда бывает.
  • quota -v — показать, какая у вас квота на диск
    есть (т.е. сколько места у вас есть для хранения файлов), сколько вы
    фактически используете, и если вы превысили свою квоту (которую вы
    получать автоматическое предупреждение системы) сколько времени вы
    осталось разобраться в них (удалив или сжав некоторые, или переместив
    их на свой компьютер).
  • du filename — показывает использование диска файлами и
    каталоги в имя файла (без аргументов текущий каталог
    используется). du -s дает только общую сумму.
  • last yourusername — перечисляет ваши последние входы в систему. Можно
    быть полезным помощником в памяти, когда вы где были, как долго вы были
    работает и отслеживает ваш телефонный счет, если вы делаете
    не местный телефонный звонок для дозвона.

Подключение к внешнему миру

  • nn — позволяет читать новости.Сначала вы сможете прочитать
    местные новости по Тьюрингу, а затем удаленные новости. Если ты хочешь читать
    только местные или удаленные новости, вы можете использовать nnl или nnr ,
    соответственно. Чтобы узнать больше о nn , введите nn , затем
    \ tty {: man}, затем \ tty {=. *}, затем \ tty {Z}, затем нажмите пробел, чтобы
    пошагово пройти через руководство. Или посмотрите справочную страницу. Или посмотрите
    гипертекст
    nn FAQ — наверное, самый простой и интересный способ.
  • rlogin hostname — позволяет подключаться к удаленному хосту
  • telnet hostname — также позволяет подключаться к
    удаленный узел.По возможности используйте rlogin .
  • ftp hostname — позволяет загружать файлы с
    удаленный хост, который настроен как ftp-сервер. Это распространенный метод
    для обмена академическими работами и черновиками. Если вам нужно сделать бумагу
    доступного таким образом, вы можете (временно) поместить копию в
    / пользователь / ftp / pub / TMP. Для более надежных решений спросите Эмму. Большинство
    важные команды в ftp: get для получения файлов из
    удаленный компьютер, и поместил для их размещения ( mget
    и mput позволяет указать более одного файла одновременно).Звуки
    прямолинейно, но не путайте их, особенно когда
    ваше физическое местоположение не соответствует направлению ftp
    соединение, которое вы устанавливаете. ftp просто перезаписывает файлы такими же
    имя файла. Если вы передаете что-либо, кроме текста ASCII, используйте
    двоичный режим.
  • lynx — позволяет просматривать веб-страницы с обычного
    Терминал. Конечно, вы можете видеть только текст, а не изображения.
    Вы можете ввести любой URL-адрес в качестве аргумента команды G .когда
    вы делаете это с любого хоста в Стэнфорде, вы можете не указывать
    .stanford.edu часть URL-адреса при подключении к URL-адресам Стэнфордского университета.
    Введите H в любое время, чтобы узнать больше о lynx , и
    Q для выхода.

Инструменты разные

  • webster word — ищет слово в электронном
    версия словаря Вебстера и возвращает определение (я)
  • дата — показывает текущую дату и время.
  • cal — показывает календарь текущего месяца. Используйте, например,
    «cal 10 1995», чтобы получить это для октября 95, или «cal 1995», чтобы получить
    целый год.

Вы можете узнать больше об этих командах, просмотрев их
manpages:

man имя команды — показывает страницу руководства для
команда

Дальнейшие способы получения помощи смотрите на страницах с электронными источниками информации.
и неэлектронные источники.

Дополнительные команды UNIX


Резервное копирование на главную страницу вычислений


.

Базовые и расширенные команды Unix с примерами

В этом руководстве вы изучите различные базовые и расширенные команды Unix.

Команды Unix — это встроенные программы, которые можно вызывать разными способами.

Здесь мы будем работать с этими командами в интерактивном режиме из терминала Unix. Терминал Unix — это графическая программа, которая предоставляет интерфейс командной строки с помощью программы оболочки.

В этом руководстве будет представлена ​​сводка некоторых общих базовых и расширенных команд unix, а также синтаксис, обычно используемый для этих команд.

=> Щелкните здесь, чтобы увидеть полную серию обучающих программ по Unix

Это руководство разделено на 6 частей.

Полезные команды в Unix — список руководств

  1. Базовые и расширенные команды Unix (cal, date, banner, who, whoami) (это руководство)
  2. Команды файловой системы Unix (касание, cat, cp, mv, rm, mkdir)
  3. Команды управления процессами Unix (ps, top, bg, fg, clear, history)
  4. Команды программ Unix Utilities (ls, which, man, su, sudo, find, du, df)
  5. Права доступа к файлу Unix
  6. Команда поиска в Unix
  7. Команда Grep в Unix
  8. Команда вырезания в Unix
  9. Команда Ls в Unix
  10. Команда Tar в Unix
  11. Команда сортировки Unix
  12. Команда Unix Cat
  13. Загрузка — Основные команды Unix
  14. Загрузка — Advanced Unix Com mands

Независимо от того, работаете ли вы над автономным или веб-проектом, тестировщикам необходимо знать операционные системы и сети.

Многие действия по тестированию, такие как установка и тестирование производительности, зависят от знаний операционной системы. В настоящее время большинство веб-серверов основаны на Unix. Так что знание Unix обязательно для тестировщиков.

Если вы новичок в Unix, то изучение команд Unix может стать хорошим началом.

Лучший способ изучить эти команды — прочитать и одновременно практиковать их в операционной системе Unix.

ПРИМЕЧАНИЕ : Для напоминания об этом курсе вам потребуется доступ к установке Unix, чтобы попробовать упражнения.Для пользователей Windows вы можете следовать инструкциям по этой ссылке, чтобы установить Ubuntu с помощью VirtualBox.

Вход в Unix

После завершения запуска системы Unix отобразится запрос на вход для пользователя, чтобы ввести свое имя пользователя и пароль. Если пользователь вводит действительное имя пользователя и пароль, система войдет в систему пользователя и начнет сеанс входа в систему. После этого пользователь может открыть терминал, который запускает программу оболочки.

Программа оболочки предоставляет подсказку, в которой пользователь может продолжить выполнение своих команд.

Выход из Unix

Когда пользователь желает завершить сеанс, он может завершить сеанс, выйдя из терминала или системы. Чтобы выйти из терминала входа в систему, пользователь может просто ввести Ctrl-D или выйти — обе эти команды, в свою очередь, запустят команду выхода, которая завершает сеанс входа в систему.

********************************

Начнем с 1-й части этой серии команд Unix.

Основные команды Unix (часть A)

В этом руководстве мы увидим, как войти в Unix и выйти из нее.Мы также рассмотрим некоторые основные команды Unix, такие как cal, date и banner.

Unix Video # 2:

# 1) cal : отображает календарь.

  • Синтаксис : cal [[месяц] год]
  • Пример : отображение календаря на апрель 2018 г.

# 2) date: Отображает системную дату и время.

  • Синтаксис : дата [+ формат]
  • Пример : отображение даты в формате дд / мм / гг

# 3) баннер : печатает большой баннер на стандартном выходе.

  • Синтаксис : баннерное сообщение
  • Пример : Вывести «Unix» в качестве баннера

# 4) who : отобразить список пользователей, которые в настоящее время вошли в систему

  • Синтаксис : who [опция ]… [Файл] [arg1]
  • Пример : Список всех пользователей, вошедших в систему в данный момент

# 5) whoami : Отображает идентификатор пользователя, вошедшего в систему в данный момент.

  • Синтаксис : whoami [option]
  • Пример : Список пользователей, находящихся в настоящее время в системе

Следите за нашим предстоящим учебным пособием Команды Unix, часть B.

=> Щелкните здесь, чтобы увидеть полную серию учебников по Unix

PREV Tutorial | СЛЕДУЮЩИЙ Учебник

.

Сводка команд Unix

Сводка команд Unix

См. Unix
руководство
для неспешного, самостоятельного ознакомления с тем, как использовать
команды, перечисленные ниже. Для получения дополнительной документации по команде,
обратитесь к хорошей книге или воспользуйтесь страницами руководства. Например, для
Для получения дополнительной информации о grep используйте команду man grep.

  • кошка

    — для создания и отображения коротких файлов

  • chmod

    — изменить разрешения

  • CD

    — сменить каталог

  • cp

    — для копирования файлов

  • Дата

    — отображение даты

  • эхо

    — аргумент эха

  • ftp

    — подключиться к удаленной машине
    скачать или закачать файлы

  • grep

    — поиск по файлу

  • голова

    — отобразить первую часть файла

  • ls

    — посмотрите, какие файлы у вас есть

  • LPR

    — стандартная команда печати (см. также

    Распечатать

    )

  • Больше

    — использовать для чтения файлов

  • mkdir

    — создать каталог

  • мв

    — для перемещения и переименования файлов

  • ncftp

    — особенно хорошо для скачивания
    файлы через анонимный ftp.

  • Распечатать

    — пользовательская команда печати (см. также

    LPR

    )

  • pwd

    — узнайте, в каком каталоге вы находитесь

  • rm

    — удалить файл

  • rmdir

    — удалить каталог

  • rsh

    — удаленная оболочка

  • Setenv

    — установить переменную окружения

  • Сортировать

    — отсортировать файл

  • хвост
    — отобразить последнюю часть файла

  • tar — создать архив, добавить или распаковать файлы
  • телнет

    — войдите на другую машину

  • Туалет

    — подсчет символов, слов, строк


кошка

Это одна из самых гибких команд Unix.Мы можем использовать
для создания, просмотра и объединения файлов. Для нашего первого
Например, мы создаем англо-испанский словарь из трех пунктов
в файле под названием «dict.»

   %  cat> dict
     красный rojo
     зеленый верде
     голубой азул
 
   %
 

означает «удерживать клавишу управления
вниз, затем нажмите «d». Символ> сообщает
компьютер, в который набирается
файл dict.

Для просмотра файла мы используем cat по-другому:

   %  cat dict 
     красный rojo
     зеленый верде
     голубой азул
   %
 

Если мы хотим добавить текст в существующий файл, мы делаем это:

   %  cat >> dict
     белое бланко
     черный негр
      
   %
 

Теперь предположим, что у нас есть другой файл tmp, который
выглядит так:

   %  cat tmp 
     кошка гато
     собака перро
   %
 

Затем мы можем присоединиться к dict и tmp следующим образом:

   %  cat dict tmp> dict2 
 

Мы могли бы проверить количество строк в новом файле, например
этот:

   %  туалет -l dict2 
8
 

Команда

Туалет

считает вещи — количество символов, слов и строк
в файле.


chmod

Эта команда используется для изменения разрешений файла или
каталог. Например сделать файл эссе.001
читаемый всеми, мы делаем это:

   %  chmod a + r essay.001 
 

Чтобы создать файл, например сценарий оболочки mycommand
исполняемый файл, мы делаем это

   %  chmod + x mycommand 
 

Теперь мы можем запустить mycommand как команду.

Чтобы проверить права доступа к файлу, используйте ls -l
.Для получения дополнительной информации о chmod используйте
Человек chmod
.


CD

Используйте cd для изменения каталога. Использовать

pwd

чтобы узнать, в каком каталоге вы находитесь.

   %  cd английский 
   %  pwd 
   % / u / ma / jeremy / english
   %  лс 
Романтические стихи
   %  cd роман 
   %  pwd 
   % / u / ma / jeremy / english / роман
   %  лс 
ch2 ch3 ch4 журнал записки
   %  кд .. 
   %  pwd 
   % / u / ma / jeremy / english
   %  cd стихи 
   %  кд 
   % / u / ma / jeremy
 

Джереми начал в своем домашнем каталоге, затем перешел на свой английский.
подкаталог.Он перечислил этот каталог, используя

ls

, обнаружил, что он содержит две записи, обе из которых происходят
быть режиссерами. Он записал в режиссерский роман,
и обнаружил, что дошел только до главы 3 своего
письмо. Затем он использовал cd .. , чтобы вернуться на один уровень назад.
Если бы хотел перепрыгнуть на один уровень, то переходи к стихам
он мог бы сказать cd ../poems . Наконец он
использовал cd без каких-либо аргументов, чтобы вернуться к себе домой
каталог.


cp

Используйте cp для копирования файлов или каталогов.

   %  cp foo foo.2 
 

Это делает копию файла foo.

   %  cp ~ / poems / jabber. 
 

Это копирует файл jabber из каталога poems в папку
Текущий каталог. Символ «.» стоит за
Текущий каталог. Символ «~» обозначает
домашний каталог.


Дата

Используйте эту команду, чтобы проверить дату и время.

   %  дата 
Пт 6 янв 08:52:42 MST 1995
 

эхо

Команда echo повторяет свои аргументы.Вот
Некоторые примеры:

   %  повторить это 
     этот
   %  echo $ EDITOR 
     / USR / местные / bin / emacs
   %  echo $ ПРИНТЕР 
     b129lab1
 

Такие вещи, как ПРИНТЕР, представляют собой так называемую среду .
переменные
. Здесь хранится имя по умолчанию
принтер — тот, на который будут отправляться задания на печать, если вы
предпринять некоторые действия, чтобы изменить ситуацию. Знак доллара перед
переменная окружения необходима для получения значения в
переменная. Чтобы убедиться в этом, попробуйте следующее:

   %  echo ПРИНТЕР 
     ПРИНТЕР
 

ftp

Используйте ftp для подключения к удаленному компьютеру,
затем загрузите или загрузите файлы.Смотрите также:
ncftp

Пример 1: Мы подключимся к
автомат fubar.net, потом поменять
Director в mystuff, затем загрузите
файл homework11:

   %  ftp одиночество 
     Подключен к fubar.net.
     220 FTP-сервер fubar.net (версия wu-2.4 (11) Mon Apr 18 17:26:33 MDT 1994) готов.
   Имя (одиночество: карлсон):  джереми 
     331 Пароль необходим для Джереми.
   Пароль:
     230 Пользователь jeremy вошел в систему.
   ftp>  cd mystuff 
     250 Команда CWD выполнена успешно.ftp>  получить домашнее задание 11 
   ftp>  выйти из 
 

Пример 2: Мы подключимся к
автомат fubar.net, потом поменять
директор в mystuff, затем загрузите
файл собранных писем:

   %  ftp одиночество 
     Подключен к fubar.net.
     220 FTP-сервер fubar.net (версия wu-2.4 (11) Mon Apr 18 17:26:33 MDT 1994) готов.
   Имя (одиночество: карлсон):  джереми 
     331 Пароль необходим для Джереми.
   Пароль:
     230 Пользователь jeremy вошел в систему.ftp>  cd mystuff 
     250 Команда CWD выполнена успешно.
   ftp>  поставил собранные буквы 
   ftp>  выйти из 
 

Программа ftp отправляет файлы в формате ascii (текст)
если вы не укажете двоичный режим:

   ftp>  двоичный 
   ftp>  положить foo 
   ftp>  ascii 
   ftp>  получить бар 
 

Файл foo был передан в двоичном режиме,
панель файлов была переведена в режим ascii.


grep

Используйте эту команду для поиска информации в файле или
файлы.Например, предположим, что у нас есть файл dict
чье содержание

   красный rojo
   зеленый верде
   голубой азул
   белое бланко
   черный негр
 

Затем мы можем искать элементы в нашем файле следующим образом:

   %  grep red dict 
     красный rojo
   %  grep blanco dict 
     белое бланко
   %  grep коричневый dict 
   %
 

Обратите внимание, что grep brown не вернул никаких результатов.
Это потому, что «коричневого» нет в нашем словаре.
файл.

Grep также можно комбинировать с другими командами.Например,
если у кого-то был файл телефонных номеров с именем «ph», по одной записи в строке,
то следующая команда выдаст алфавитный список
всех лиц, чье имя содержит строку «Фред».

   %  grep Фред ph | сорт 
     Альфа, Фред: 333-6565
     Бета, Фредди: 656-0099
     Фредериксон, Молли: 444-0981
     Гамма, Фред-Джордж: 111-7676
     Зета, Фредерик: 431-0987
 

Символ «|» называется «труба». Он направляет вывод
команды grep на вход команды sort.

Для получения дополнительной информации о grep обратитесь к

   %  человек grep 
 

голова

Используйте эту команду для просмотра заголовка файла. За
пример,

   %  Головной эссе 001 
 

отображает первые 10 строк файла essay.001
Чтобы увидеть определенное количество строк, сделайте следующее:

   %  глава -н 20 эссе.001 
 

Это отображает первые 20 строк файла.


ls

Используйте ls , чтобы узнать, какие файлы у вас есть.Ваши файлы
хранится в так называемом каталоге.

   %  лс 
     foo letter2
     foobar letter3
     письмо1 клен-присвоение1
   %
 

Обратите внимание, что у вас есть шесть файлов. Есть несколько полезных
варианты команды ls :

   %  лс л * 
     письмо1 письмо2 письмо3
   %
 

Обратите внимание, что произошло: все файлы, имена которых начинаются с
«l» перечислены. Звездочка (*) означает »
подстановочный знак «. Соответствует любой строке.


LPR

Это стандартная команда Unix для печати файла. Это
расшифровывается как древний «линейный принтер». Видеть

   %  человек LPR 
 

для получения информации о том, как это работает. Видеть

Распечатать

для получения информации о нашей локальной интеллектуальной команде печати.


mkdir

Используйте эту команду для создания каталога.

   %  mkdir эссе 
 

Чтобы попасть «в» этот каталог, выполните

   %  cd сочинения 
 

Чтобы увидеть, какие файлы находятся в сочинении, сделайте следующее:

   %  лс 
 

Там пока не должно быть файлов, так как вы только что создали
Это.Чтобы создать файлы, см.

кошка

или

emacs.


Больше

More — это команда, используемая для чтения текстовых файлов. Например, мы
мог сделать это:

   % больше стихов
 

Эффект от этого, чтобы вы могли прочитать файл «стихи»
«. Возможно, он не уместится на одном экране, поэтому вам понадобится
уметь «листать страницы». Вот основные
команды:

  • q — бросить больше

  • пробел — читать следующую страницу

  • клавиша возврата — чтение следующей строки

  • b — вернуться на одну страницу

Для получения дополнительной информации используйте команду man more .


мв

Используйте эту команду для изменения имени файла и каталогов.

   %  mv foo foobar 
 

Файл с именем foo теперь называется foobar.


ncftp

Используйте ncftp для анонимного ftp —
это означает, что вам не нужно иметь пароль.

   %  ncftp ftp.fubar.net 
     Подключен к ftp.fubar.net
   >  получить jokes.txt 
 

Файл шутит.txt загружается из
машина ftp.fubar.net.


Распечатать

Это умеренно интеллектуальная команда печати.

   %  печать foo 
   %  печать примечаний. Ps 
   %  печатная рукопись.dvi 
 

В каждом случае печать работает правильно, независимо от
от того, является ли файл текстовым (например, foo),
файл postcript (например, notes.ps или файл dvi (например,
manuscript.dvi. В этих примерах файл
распечатано на принтере по умолчанию. Чтобы увидеть, что это, сделайте

   %  печать 
 

и прочтите отображаемое сообщение.Чтобы распечатать на определенном принтере,
сделай это:

   %  печать foo jwb321 
   %  распечатать файл notes.ps jwb321 
   %  распечатать рукопись.dvi jwb321 
 

Чтобы изменить принтер по умолчанию, сделайте следующее:

   %  setenv ПРИНТЕР jwb321 
 

pwd

Используйте эту команду, чтобы узнать, в каком каталоге вы работаете.

   %  pwd 
/ u / ma / Джереми
   %  cd домашнее задание 
   %  pwd 
/ u / ma / jeremy / домашнее задание
   %  лс 
назначить-1 назначить-2 назначить-3
   %  кд 
   %  pwd 
/ u / ma / Джереми
   %
 

Джереми начал с работы в своем «домашнем» каталоге.Тогда он

CD

в подкаталог с домашними заданиями. Cd означает »
сменить каталог «. Он использовал pwd, чтобы убедиться, что
он оказался в нужном месте, затем использовал ls , чтобы проверить, все ли
файлы его домашних заданий были там. (Они были). Тогда он
cd’d
обратно в свой домашний каталог.


rm

Используйте rm для удаления файлов из каталога.

   %  rm foo 
     удалить foo?  y 
   %  пм письмо * 
     удалить букву 1?  y 
     удалить букву 2?  y 
     удалить букву 3?  n 
   %
 

Первая команда удалила один файл.Вторая команда
был предназначен для удаления всех файлов, начинающихся со строки
«письмо.» Однако наш пользователь (Джереми?) Решил не
удалить букву 3.


rmdir

Используйте эту команду для удаления каталога. Например, чтобы
удалите каталог под названием «эссе», сделайте следующее:

   %  rmdir эссе 
 

Прежде чем удалить каталог, он должен быть пустым. Чтобы
очистить каталог, использовать

rm.


rsh

Используйте эту команду, если вы хотите работать на другом компьютере.
от того, над которым вы сейчас работаете.Одна причина сделать
это то, что удаленная машина может быть быстрее. За
Например, команда

   %  rsh одиночество 
 

связывает вас с машинным одиночеством. Это один
наших общественных рабочих мест и довольно быстро.

Смотрите также:

телнет


Setenv

   %  echo $ ПРИНТЕР 
     лабпринтер
   %  setenv ПРИНТЕР myprinter 
   %  echo $ ПРИНТЕР 
     мой принтер
 

Сортировать

Используйте эту команду для сортировки файла.Например, предположим, что у нас есть
файл dict с содержимым

красный rojo
зеленый верде
голубой азул
белое бланко
черный негр
 

Тогда мы можем сделать это:

   %  sort dict 
     черный негр
     голубой азул
     зеленый верде
     красный rojo
     белое бланко
 

Здесь вывод сортировки попал на экран. Хранить
вывод в файл делаем так:

   %  sort dict> dict.sorted 
 

Вы можете проверить содержимое файла dict.sorted
с помощью

кошка

,
Больше

, или

emacs

.


хвост

Используйте эту команду, чтобы просмотреть конец файла. Например,

   %  Хвостовое эссе 001 
 

отображает последние 10 строк файла essay.001 To
увидеть определенное количество строк, сделайте следующее:

   %  tail -n 20 эссе.001 
 

Это отображает последние 20 строк файла.


деготь

Использовать создание сжатых архивов каталогов и файлов,
а также для извлечения каталогов и файлов из архива.Пример:

   %  tar -tvzf foo.tar.gz 
 

отображает имена файлов в сжатом архиве foo.tar.gz
пока

   %  tar -xvzf foo.tar.gz 
 

извлекает файлы.


телнет

Используйте эту команду для входа на другую машину из
машина, над которой вы сейчас работаете. Например, чтобы войти
в машине «одиночество» сделайте следующее:

   %  Telnet одиночество 
 

Смотрите также:

rsh.


Туалет

Используйте эту команду для подсчета количества символов, слов,
и строки в файле. Предположим, например, что у нас есть
файл dict с содержимым

красный rojo
зеленый верде
голубой азул
белое бланко
черный негр
 

Тогда мы сможем это сделать

   %  туалет, диктат 
     5 10 56 тмп.
 

Это показывает, что dict состоит из 5 строк, 10 слов и 56
символы.

Команда подсчета слов имеет несколько параметров, как показано на рисунке.
ниже:

   %  туалет -l dict 
     5 т / м
   %  wc -w dict 
     10 т / м
   %  туалет -c dict 
     56 т / м
 

манекен

В разработке
 

.

Команды Linux: Обзор команд терминала

05 Программа командной строки ln (сокращение от link ) создает ярлык для файла или каталога. Это создает еще одну запись в каталоге для этого файла, которая позволяет вам получить доступ к соответствующему файлу через другой путь к файлу.

Вызов программы командной строки всегда должен содержать хотя бы путь к исходному файлу.

ln [ОПЦИИ] путь / к / исходному файлу

В этом случае в текущем рабочем каталоге будет создан ярлык с тем же именем.

Вы также можете ввести целевой путь, а затем назвать ярлык по своему усмотрению:

ln [OPTIONS] path / to / sourcefile path / to / shortcut

По умолчанию ln создает так называемые жесткие ссылки.Они не подходят для создания ярлыков для каталогов. Жесткие ссылки также нельзя использовать за пределами раздела. Таким образом, команда часто используется с OPTION –s (- символический ), с помощью которого можно создавать символические ссылки за пределами файловой системы. Символические ссылки также указывают на «настоящий» путь к файлу и зависят от него.

Команда

Описание

basename

Имя выходного файла 9000 передано в Имя выходного файла 9000 директива командной строки basename , которая просто возвращает имя файла без пути по умолчанию.

Синтаксис команды следующий:

базовое имя [ОПЦИИ] путь / к / файлам [СУФФИКС]

Например, если вы введете $ базовое имя / домашний / пользователь / фото.jpg в терминале, вы получите следующий вывод:

photo.jpg

Дополнительный ввод суффикса также удаляет это из вывода.

Ввод: $ basename / home / user / photo.jpg .jpg

Вывод: photo

Команда может быть расширена до нескольких файлов с помощью параметров.

cat

Объединить содержимое файлов

Программа командной строки cat (сокращение от concatenate ) была разработана как инструмент для объединения содержимого файлов и может использоваться как пейджер для отображения содержимого файла в терминале.

Используйте cat со следующим синтаксисом в терминале для чтения файла и вывода его в stdout (стандартный вывод):

cat OPTIONS FILE

Несколько файлов можно разделить пробелами:

cat ОПЦИИ ФАЙЛ1 ФАЙЛ2

Связывание содержимого файла осуществляется с помощью операторов перенаправления (>, <и |). Например, используйте оператор «больше чем» (>), чтобы объединить содержимое двух файлов в третий.

cat file_1.txt file_2.txt> file_3.txt

cmp

Выровнять файлы на уровне байтов

cmp является частью пакета diff используется для сравнения содержимого файлов. В отличие от diff , выравнивание выполняется на уровне байтов и поэтому особенно подходит для двоичных файлов.

Используйте cmp в соответствии со следующим синтаксисом:

cmp [ОПЦИИ] ФАЙЛ1 ФАЙЛ2

cmp находит различия, а затем программа командной строки выводит в терминал байт и номер строки первого отклонения.

comm

Сравните отсортированные файлы по строке

Используйте программу командной строки comm для сравнения отсортированных файлов (то есть через sort ) построчно.

Вызов программы основан на следующем синтаксисе:

comm [ОПЦИИ] ФАЙЛ1 ФАЙЛ2

Если приходит вызывается без опций, программа генерирует вывод с тремя столбцами: Первый столбец содержит все строки, которые только появляются в FILE1 , второй столбец содержит все строки только в FILE2 , а третий столбец содержит все строки, которые появляются в обоих файлах.

Программа поддерживает три опции:

-1: подавить уникальные строки из FILE1

-2: подавить уникальные строки из FILE2

-3: подавить все строки, содержащиеся в обоих файлах

cp

Копирование файлов или каталогов

Директива командной строки cp ( копия ) используется для копирования файлов и каталогов. Основной синтаксис команды гласит:

cp [ОПЦИИ] ИСТОЧНИК ЦЕЛЬ

ИСТОЧНИК — это элемент, который предназначен для копирования.В этом случае либо файл, либо каталог определяется как ЦЕЛЬ процесса копирования. Если вы определяете существующий файл как целевой файл, его содержимое перезаписывается исходным файлом. У вас также есть возможность создать новый файл с любым именем, которое вы выберете в качестве целевого файла.

Если вы хотите скопировать несколько файлов, то целью должен быть каталог. То же самое и с копированием каталога.

Скопируйте исходный файл в целевой файл в текущем каталоге:

cp [ОПЦИИ] SOURCEFILE TARGETFILE

Пример: cp файл.txt file_copy.txt

Скопируйте исходный файл из текущего каталога в целевой каталог:

cp [ОПЦИИ] SOURCEFILE TARGETDIRECTORY

Пример: cp file.txt home / user / documents / 2017

Копировать несколько исходных файлов в целевой каталог:

cp [OPTIONS] SOURCEFILE1 SOURCEFILE2 TARGETDIRECTORY

Пример: cp file.txt file.odt home / user / documents / 2017

Скопируйте исходный каталог из текущего каталога в целевой каталог:

cp SOURCEDIRECTORY TARGETDIRECTORY

Пример: cp directory1 home / user / documents / 2017

Если предполагается, что каталог копируется вместе со всем его содержимым, тогда все подкаталоги должны быть включены в процесс копирования с использованием ОПЦИИ –R .

cut

Извлечь содержимое файла

Команда cut позволяет извлечь содержимое файла из текстовой строки файла (то есть файлов журнала или CSV).

Синтаксис команды гласит:

вырезать [ОПЦИИ] ФАЙЛ

Точная позиция извлеченного раздела определяется с помощью опций –b (позиция байта), -c (позиция символа), -d (разделитель) и –f (поле).

diff

Сравнить файлы или каталоги

Программа командной строки diff служит для сравнения двух файлов. Вы также можете использовать diff , чтобы определить, содержат ли два каталога одинаковые файлы.

Вызовите программу на терминал, используя следующий синтаксис:

diff [OPTIONS] FILE1 FILE2

dirname

Путь к выходному файлу 9000 counterpart — это dirpart базовое имя .Директива командной строки позволяет извлекать часть пути из пути к файлу и выводить ее в терминал без имен файлов.

Синтаксис команды гласит:

имя каталога [ОПЦИИ]

Например, введите $ имя каталога / home / user / photo.jpg в терминал, чтобы получить следующий вывод:

/ home / пользователь

файл

Тип выходного файла

С помощью директивы командной строки file вы можете вывести информацию о типе файла файла.

Вызов основан на следующем синтаксисе:

файл [ОПЦИИ] ФАЙЛ

ln

Создать ярлык для файла или каталога

lsof

Вывод открытых файлов в терминал

lsof обозначает список открытых файлов , инструмент, который дает вам информацию об открытых файлах в терминале, отсортированных по PID (идентификатор процесса).

Вызовите программу на терминал, используя следующий синтаксис:

lsof [OPTIONS]

Поскольку unix-подобные системы, такие как Linux, обычно следуют политике «Все является файлом», список выводится командой lsof Команда соответственно длинная. Как правило, параметры используются для ограничения этого вывода.

md5sum

Расчет контрольных сумм

Директива командной строки md5sum помогает вычислять и проверять контрольные суммы MD5 для файлов.

mv

Перемещение файла или каталога

Программа командной строки mv ( move ) копирует файл или каталог и удаляет исходный элемент. Если он используется в том же каталоге, то mv можно использовать для переименования файлов.

Вызов программы основан на следующем синтаксисе:

mv [OPTIONS] SOURCE TARGET

Примеры приложений:

Перемещение файла в другой каталог:

mv [OPTIONS] SOURCEFILE TARGETDIRECTORY

Пример: mv file1.txt home / user / documents / 2017

Перемещение нескольких исходных файлов в целевой каталог:

mv [ОПЦИИ] SOURCEFILE1 SOURCEFILE2 TARGETDIRECTORY

Пример: mv file1.txt file2.txt home / user / documents / 2017

Перемещение подкаталога из текущего каталога в целевой каталог:

mv [ОПЦИИ] DIRECTORYNAME_OLD DIRECTORYNAME_NEW

Пример: mv directory1 home / user / documents / 2017

Переименовать файл в текущем каталоге

mv [ОПЦИИ] FILENAME_OLD FILENAME_NEW

Пример: mv file1.txt file2.txt

Переименовать подкаталог в текущем каталоге:

mv [ОПЦИИ] DIRECTORYNAME_OLD DIRECTORYNAME_NEW

Пример: mv directory1 directory2

содержимое по столбцу

Подобно cat , программа командной строки paste также позволяет выводить содержимое файла на стандартный вывод.Но в то время как cat просто объединяет содержимое, paste объединяет столбец за столбцом.

Основной синтаксис команды гласит:

вставить [ОПЦИИ] ФАЙЛ1 ФАЙЛ2…

В стандартном режиме перечисленные файлы объединяются, так что все строки с одинаковым номером строки переносятся в одну и ту же строку вывода. . Каждая строка вывода содержит содержимое всех входных файлов.

Вы можете настроить, какой разделитель используется для пасты с опцией -d .Табуляция используется как разделитель по умолчанию.

Второй режим можно активировать с помощью опции -s (серийный). При этом все строки первого входного файла переносятся в первую строку выходных данных. Данные для всех других входных файлов представлены в отдельных строках вывода, поэтому каждая строка вывода содержит содержимое только одного входного файла.

переименовать

Переименовать файлы

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

Используйте , переименуйте в соответствии со следующим синтаксисом:

переименовать [OPTIONS] ‘REGULAR_EXPRESSION’ FILE

Синтаксис регулярных выражений гласит:

s / SEARCHPATTERN / REPLACEMENT / MODIFIER

1

renames все .html файлы заканчиваются на .xhtml.

переименовать ‘s / \. Html $ /. Xhtml /’ * .html

rm

Удалить файл или каталог

Программа командной строки rm удалить ) безвозвратно удаляет файлы или целые каталоги.

Вызов программы основан на следующем синтаксисе:

rm [ОПЦИИ] ФАЙЛ

или

rm [ОПЦИИ] КАТАЛОГ

Если каталог должен быть удален вместе со всеми его подкаталогами, используйте п.м. плюс опция -R ( — рекурсивная ).

rm -R DIRECTORY

Несколько файлов или каталогов разделяются пробелами.

rm [ОПЦИИ] FILE1 FILE2…

shred

Shred files

shred — это программа командной строки, которая позволяет безопасно удалять файлы. Выбранные элементы перезаписываются в процессе удаления и поэтому не могут быть восстановлены криминалистическими методами.

Общий синтаксис команды гласит:

shred [OPTIONS] FILE

Используйте shred со следующими параметрами для окончательного удаления одного файла:

shred -fuz FILE

The -f Параметр вызывает процесс удаления, -z перезаписывает содержимое файла нулями (по умолчанию — случайные данные), а затем, наконец, -u удаляет измельченный файл из файловой системы, аналогично команде rm .

sort

Сортировка списков файлов и вывода программы

Используйте директиву командной строки sort для сортировки списков файлов и вывода программ в числовом, алфавитном порядке и по строкам.

Общий синтаксис команды гласит:

sort [OPTIONS] FILE

Метод сортировки можно настроить с помощью параметров: например, числовой ( -n ), случайный ( -R ) или в обратном порядке ( -r ).

split

Split files

Директива командной строки split используется для разделения файлов.

Базовый синтаксис читает:

split [OPTIONS] [INPUT [PREFIX]]

Заполнитель INPUT соответствует файлу, который должен быть разделен. PREFIX действует для имен участвующих файлов. Их название основано на следующем шаблоне:

PREFIXaa, PREFIXab, PREFIXac…

stat

Отметка времени вывода

Директива командной строки status ) выводит отметки времени доступа и изменения для выбранных файлов и каталогов.

Общий синтаксис команды гласит:

stat [ОПЦИИ] ФАЙЛ

Формат вывода можно настроить с помощью опций.

touch

Изменить отметку времени

Директива командной строки touch может использоваться для изменения отметок времени доступа и изменения для файлов. Если touch применяется к еще не существующему файлу, он создается автоматически.Таким образом, команда также хороша для создания пустых файлов.

Используйте коснитесь в соответствии со следующей схемой:

коснитесь [ОПЦИИ] ФАЙЛ

Чтобы установить отметку времени для файла на желаемую дату, используйте ОПЦИЯ -t вместе с информацией о времени в формы [ГГ] ММДДччмм [.ss] .

Пример:

touch -t 1703231037 file.txt

Отметки времени доступа и изменения теперь установлены на 23 марта 2017 года, 10:37.Модификация может быть ограничена доступом или отметками времени с помощью опций -a и -m .

Если команда touch используется без опции -t , то используется текущая отметка времени.

uniq

Удаление дубликатов в списках файлов и программных выводах

Директива командной строки uniq обычно используется в сочетании с sort для очистки отсортированных файлов от повторяющихся строк.

В следующем примере команда sort связана вертикальной чертой (|) с командой uniq , чтобы сначала отсортировать файл, а затем вывести его без повторяющихся строк.

sort file.txt | uniq

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

2021 © Все права защищены. Карта сайта