Основные команды linux: Команды Linux для начинающих | Losst

Содержание

Команды Linux для начинающих | Losst

Если вы только перешли на Linux с Windows, то, наверное, хотите пользоваться только графическим интерфейсом, а о возможностях терминала даже не вспоминать. Тем не менее, если вы захотите залезть вглубь системы и настроить что-либо чего нет в графическом интерфейсе, то вам понадобиться терминал. Ещё терминал нужен если вы собираетесь администрировать Linux сервер, где нет графического интерфейса.

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

Содержание статьи:

1. ls

Самое первое что вам понадобиться после открытия терминала на сервере — это сориентироваться в файловой системе. Для того чтобы посмотреть содержимое папки можно использовать команду ls.

Если передать ей параметр -l, то она выведет все файлы и папки в столбик. По умолчанию отображается содержимое текущей папки:

ls -l

Но вы можете передать путь к нужной папке:

ls -l /etc

Можно сказать, что это аналог команды dir и Windows. Но вам не обязательно всегда использовать ls, чтобы посмотреть какие файлы есть в папке. Когда вы набираете путь к файлу или папке, то можете нажать Tab и командная оболочка выведет все возможные варианты пути:

Подробнее про команду ls читайте здесь.

2. cd

Команда cd не менее важная, потому что она позволяет менять текущую папку. Благодаря этому вы можете не набирать каждый раз длинный путь к папке, а работать непосредственно в ней. Например, чтобы перейти в папку /etc/ выполните:

cd /etc/

Чтобы перейти в папку уровнем выше используйте путь ../:

cd ../

А чтобы вернуться в предыдущую папку, используйте дефис:

cd - 

3. sudo

В Linux очень строгая система управления полномочиями и чтобы настроить что-то что касается всей системы, например, создать папку в корневом каталоге или смонтировать диск, вам придется иметь права суперпользователя. Для этого и нужна команда sudo. Она позволяет выполнять другие команды от имени суперпользователя.

sudo mkdir /mnt/mountpoint

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

4. Пакетный менеджер

С помощью пакетного менеджера вы можете и будете устанавливать программы в своем дистрибутиве. Обычно в Linux программы устанавливаются не из интернета, а с помощью пакетного менеджера из репозиториев дистрибутива это быстрее, надежнее и безопаснее в плане вирусов. Именно пакетный менеджер чаще всего вы будете запускать с утилитой sudo, если вы новичок. Пакетный менеджер умеет не только устанавливать программы, но и ставить все библиотеки, необходимые программе, а также обновлять программу при необходимости.

У каждого дистрибутива пакетный менеджер свой. Например, в Ubuntu, Debian и Linux Mint используется пакетный менеджер APT. Я писал про APT отдельную статью Как пользоваться apt. Если это ваш пакетный менеджер, посмотрите её. В дистрибутивах, основанных на Fedora и Red Hat Enterprice Linux используется пакетный менеджер yum или dnf. Это практически одно и то же. Почитать про YUM можно в статье Установка пакетов в CentOS. В OpenSUSE тоже используется формат пакетов RPM, однако здесь применяется свой пакетный менеджер под названием zypper. В ArchLinux применяется пакетный менеджер Pacman. Кроме того, существуют универсальные пакетные менеджеры, такие как Snap и Flatpack.

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

Например в Ubuntu сначала надо обновить списки пакетов:

sudo apt update

Затем можно установить нужный пакет, например gimp:

sudo apt install gimp

И удалить его:

sudo apt remove gimp

5. man

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

man ls

Затем листайте вывод с помощью мыши или стрелок вверх и вниз. Чтобы выйти из окна справки нажмите кнопку q

.

Выводы

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

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

Оцените статью:

Загрузка…

Основные консольные команды Linux (Ubuntu)

Команда

Описание

Системная информация

arch

отобразить архитектуру компьютера

uname -m

uname -r

отобразить используемую версию ядра

dmidecode -q

показать аппаратные системные компоненты — (SMBIOS / DMI)

hdparm -i /dev/hda

вывести характеристики жесткого диска

hdparm -tT /dev/sda

протестировать производительность чтения данных с жесткого диска

cat /proc/cpuinfo

отобразить информацию о процессоре

cat /proc/interrupts

показать прерывания

cat /proc/meminfo

проверить использование памяти

cat /proc/swaps

показать файл(ы) подкачки

cat /proc/version

вывести версию ядра

cat /proc/net/dev

показать сетевые интерфейсы и статистику по ним

cat /proc/mounts

отобразить смонтированные файловые системы

lspci -tv

показать в виде дерева PCI устройства

lsusb -tv

показать в виде дерева USB устройства

date

вывести системную дату

cal 2007

вывести таблицу-календарь 2007-го года

date 041217002007. 00

установить системные дату и время ММДДЧЧммГГГГ.СС (МесяцДеньЧасМинутыГод.Секунды)

clock -w

сохранить системное время в BIOS

Остановка системы

shutdown -h now

Остановить систему

init 0

telinit 0

shutdown -h hours:minutes &

запланировать остановку системы на указанное время

shutdown -c

отменить запланированную по расписанию остановку системы

shutdown -r now

перегрузить систему

reboot

logout

выйти из системы

Файлы и директории

cd /home

перейти в директорию ‘/home’

cd . .

перейти в директорию уровнем выше

cd ../..

перейти в директорию двумя уровнями выше

cd

перейти в домашнюю директорию

cd ~user

перейти в домашнюю директорию пользователя user

cd —

перейти в директорию, в которой находились до перехода в текущую директорию

pwd

показать текущюю директорию

ls

отобразить содержимое текущей директории

ls -F

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

ls -l

показать детализированое представление файлов и директорий в текущей директории

ls -a

показать скрытые файлы и директории в текущей директории

ls *[0-9]*

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

tree

показать дерево файлов и директорий, начиная от корня (/)

lstree

mkdir dir1

создать директорию с именем ‘dir1’

mkdir dir1 dir2

создать две директории одновременно

mkdir -p /tmp/dir1/dir2

создать дерево директорий

rm -f file1

удалить файл с именем ‘file1’

rmdir dir1

удалить директорию с именем ‘dir1’

rm -rf dir1

удалить директорию с именем ‘dir1’ и рекурсивно всё её содержимое

rm -rf dir1 dir2

удалить две директории и рекурсивно их содержимое

mv dir1 new_dir

переименовать или переместить файл или директорию

cp file1 file2

сопировать файл file1 в файл file2

cp dir/* .

копировать все файлы директории dir в текущую директорию

cp -a /tmp/dir1 .

копировать директорию dir1 со всем содержимым в текущую директорию

cp -a dir1 dir2

копировать директорию dir1 в директорию dir2

ln -s file1 lnk1

создать символическую ссылку на файл или директорию

ln file1 lnk1

создать «жёсткую» (физическую) ссылку на файл или директорию

touch -t 0712250000 fileditest

модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm)

Поиск файлов

find / -name file1

найти файлы и директории с именем file1. Поиск начать с корня (/)

find / -user user1

найти файл и директорию принадлежащие пользователю user1. Поиск начать с корня (/)

find /home/user1 -name «*.bin»

Найти все файлы и директории, имена которых оканчиваются на ‘. bin’. Поиск начать с ‘/ home/user1’

find /usr/bin -type f -atime +100

найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней

find /usr/bin -type f -mtime -10

найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней

find / -name *.rpm -exec chmod 755 ‘{}’ ;

найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, и изменить права доступа к ним

find / -xdev -name «*.rpm»

найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, игнорируя съёмные носители, такие как cdrom, floppy и т.п.

locate «*.ps»

найти все файлы, сожержащие в имени ‘.ps’. Предварительно рекомендуется выполнить команду ‘updatedb’

whereis halt

показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу ‘halt’

which halt

отображает полный путь к файлу ‘halt’

Монтирование файловых систем

mount /dev/hda2 /mnt/hda2

монтирует раздел ‘hda2’ в точку монтирования ‘/mnt/hda2’. Убедитесь в наличии директории-точки монтирования ‘/mnt/hda2’

umount /dev/hda2

размонтирует раздел ‘hda2’. Перед выполнением, покиньте ‘/mnt/hda2’

fuser -km /mnt/hda2

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

umount -n /mnt/hda2

выполнить размонитрование без занесения информации в /etc/mtab. Полезно когда файл имеет атрибуты «только чтение» или недостаточно места на диске

mount /dev/fd0 /mnt/floppy

монтировать флоппи-диск

mount /dev/cdrom /mnt/cdrom

монтировать CD или DVD

mount /dev/hdc /mnt/cdrecorder

монтировать CD-R/CD-RW или DVD-R/DVD-RW(+-)

mount -o loop file.iso /mnt/cdrom

смонтировать ISO-образ

mount -t vfat /dev/hda5 /mnt/hda5

монтировать файловую систему Windows FAT32

mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share

монтировать сетевую файловую систему Windows (SMB/CIFS)

mount -o bind /home/user/prg /var/ftp/user

«монтирует» директорию в директорию (binding). Доступна с версии ядра 2.4.0. Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в «песочнице» (chroot), когда симлинки сделать невозможно.

Дисковое пространство

df -h

отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства (Прим.переводчика. ключ -h работает не во всех *nix системах)

ls -lSr |more

выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр

du -sh dir1

подсчитывает и выводит размер, занимаемый директорией ‘dir1’ (Прим.переводчика. ключ -h работает не во всех *nix системах)

du -sk * | sort -rn

отображает размер и имена файлов и директорий, с соритровкой по размеру

rpm -q -a —qf ‘%10{SIZE}t%{NAME}n’ |sort -k1,1n

показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.)

dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n

показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)

Пользователи и группы

groupadd group_name

создать новую группу с именем group_name

groupdel group_name

удалить группу group_name

groupmod -n new_group_name old_group_name

переименовать группу old_group_name в new_group_name

useradd -c «Nome Cognome» -g admin -d /home/user1 -s /bin/bash user1

создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell’а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome

useradd user1

создать пользователя user1

userdel -r user1

удалить пользователя user1 и его домашний каталог

usermod -c «User FTP» -g system -d /ftp/user1 -s /bin/nologin user1

изменить атрибуты пользователя

passwd

сменить пароль

passwd user1

сменить пароль пользователя user1 (только root)

chage -E 2005-12-31 user1

установить дату окончания действия учётной записи пользователя user1

pwck

проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow

grpck

проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group

newgrp [-] group_name

изменяет первичную группу текущего пользователя. Если указать «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd

Выставление/изменение полномочий на файлы

ls -lh

просмотр полномочий на файлы и директории в текущей директории

ls /tmp | pr -T5 -W$COLUMNS

вывести содержимое директории /tmp и разделить вывод на пять колонок

chmod ugo+rwx directory1

добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) — всем полные права. Аналогичное можно сделать таким образом «chmod 777 directory1»

chmod go-rwx directory1

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

chown user1 file1

назначить владельцем файла file1 пользователя user1

chown -R user1 directory1

назначить рекурсивно владельцем директории directory1 пользователя user1

chgrp group1 file1

сменить группу-владельца файла file1 на group1

chown user1:group1 file1

сменить владельца и группу владельца файла file1

find / -perm -u+s

найти, начиная от корня, все файлы с выставленным SUID

chmod u+s /bin/binary_file

назначить SUID-бит файлу /bin/binary_file. Это даёт возможность любому пользователю запускать на выполнение файл с полномочиями владельца файла.

chmod u-s /bin/binary_file

снять SUID-бит с файла /bin/binary_file.

chmod g+s /home/public

назначить SGID-бит директории /home/public.

chmod g-s /home/public

снять SGID-бит с директории /home/public.

chmod o+t /home/public

назначить STIKY-бит директории /home/public. Позволяет удалять файлы только владельцам

chmod o-t /home/public

снять STIKY-бит с директории /home/public

Специальные атрибуты файлов

chattr +a file1

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

chattr +c file1

позволяет ядру автоматически сжимать/разжимать содержимое файла.

chattr +d file1

указавет утилите dump игнорировать данный файл во время выполнения backup’а

chattr +i file1

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

chattr +s file1

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

chattr +S file1

указывает, что, при сохранении изменений, будет произведена синхронизация, как при выполнении команды sync

chattr +u file1

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

lsattr

показать атрибуты файлов

Архивирование и сжатие файлов

bunzip2 file1.bz2

разжимает файл ‘file1.gz’

gunzip file1.gz

gzip file1

сжимает файл ‘file1’

bzip2 file1

gzip -9 file1

сжать файл file1 с максимальным сжатием

rar a file1.rar test_file

создать rar-архив ‘file1.rar’ и включить в него файл test_file

rar a file1.rar file1 file2 dir1

создать rar-архив ‘file1.rar’ и включить в него file1, file2 и dir1

unrar x file1.rar

распаковать rar-архив

tar -cvf archive.tar file1

создать tar-архив archive.tar, содержащий файл file1

tar -cvf archive.tar file1 file2 dir1

создать tar-архив archive.tar, содержащий файл file1, file2 и dir1

tar -tf archive.tar

показать содержимое архива

tar -xvf archive.tar

распаковать архив

tar -xvf archive.tar -C /tmp

распаковать архив в /tmp

tar -cvfj archive.tar.bz2 dir1

создать архив и сжать его с помощью bzip2(Прим.переводчика. ключ -j работает не во всех *nix системах)

tar -xvfj archive.tar.bz2

разжать архив и распаковать его(Прим.переводчика. ключ -j работает не во всех *nix системах)

tar -cvfz archive.tar.gz dir1

создать архив и сжать его с помощью gzip

tar -xvfz archive.tar.gz

разжать архив и распаковать его

zip file1.zip file1

создать сжатый zip-архив

zip -r file1.zip file1 file2 dir1

создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий

unzip file1.zip

разжать и распаковать zip-архив

RPM пакеты (Fedora, Red Hat и тому подобное)

rpm -ivh package.rpm

установить пакет с выводом сообщений и прогресс-бара

rpm -ivh —nodeps package.rpm

установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей

rpm -U package.rpm

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

rpm -F package.rpm

обновить пакет только если он установлен

rpm -e package_name.rpm

удалить пакет

rpm -qa

отобразить список всех пакетов, установленных в системе

rpm -qa | grep httpd

среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd»

rpm -qi package_name

вывести информацию о конкрентном пакете

rpm -qg «System Environment/Daemons»

отобразить пакеты входящие в группу пакетов

rpm -ql package_name

вывести список файлов, входящих в пакет

rpm -qc package_name

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

rpm -q package_name —whatrequires

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

rpm -q package_name —whatprovides

show capability provided by a rpm package

rpm -q package_name —scripts

отобразит скрипты, запускаемые при установке/удалении пакета

rpm -q package_name —changelog

вывести историю ревизий пакета

rpm -qf /etc/httpd/conf/httpd.conf

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

rpm -qp package.rpm -l

отображает список файлов, входящих в пакет, но ещё не установленных в систему

rpm —import /media/cdrom/RPM-GPG-KEY

ипортировать публичный ключ цифровой подписи

rpm —checksig package.rpm

проверит подпись пакета

rpm -qa gpg-pubkey

проверить целостность установленного содержимого пакета

rpm -V package_name

проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменеия пакета

rpm -Va

проверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью!

rpm -Vp package.rpm

проверить пакет, который ещё не установлен в систему

rpm2cpio package.rpm | cpio —extract —make-directories *bin*

извлечь из пакета файлы содержащие в своём имени bin

rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm

установить пакет, собранный из исходных кодов

rpmbuild —rebuild package_name.src.rpm

собрать пакет из исходных кодов

YUM — средство обновления пакетов(Fedora, RedHat и тому подобное)

yum install package_name

закачать и установать пакет

yum update

обновить все пакеты, установленные в систему

yum update package_name

обновить пакет

yum remove package_name

удалить пакет

yum list

вывести список всех пакетов, установленных в систему

yum search package_name

найти пакет в репозитории

yum clean packages

очисть rpm-кэш, удалив закачанные пакеты

yum clean headers

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

yum clean all

очисть rpm-кэш, удалив закачанные пакеты и заголовки

DEB пакеты (Debian, Ubuntu и тому подобное)

dpkg -i package.deb

установить / обновить пакет

dpkg -r package_name

удалить пакет из системы

dpkg -l

показать все пакеты, установленные в систему

dpkg -l | grep httpd

среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd»

dpkg -s package_name

отобразить инфрмацию о конкретном пакете

dpkg -L package_name

вывести список файлов, входящих в пакет, установленный в систему

dpkg —contents package.deb

отобразить список файлов, входящих в пакет, который ешё не установлен в систему

dpkg -S /bin/ping

найти пакет, в который входит указанный файл.

APT — средство управление пакетами (Debian, Ubuntu и тому подобное)

apt-get install package_name

установить / обновить пакет

apt-cdrom install package_name

установить / обновить пакет с cdrom’а

apt-get update

получить обновлённые списки пакетов

apt-get upgrade

обновить пакеты, установленные в систему

apt-get remove package_name

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

apt-get purge package_name

удалить пакет, установленный в систему с удалением файлов конфигурации

apt-get check

проверить целостность зависимостей

apt-get clean

удалить загруженные архивные файлы пакетов

apt-get autoclean

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

Просмотр содержимого файлов

cat file1

вывести содержимое файла file1 на стандартное устройсво вывода

tac file1

вывести содержимое файла file1 на стандартное устройсво вывода в обратном порядке (последняя строка становиться первой и т.д.)

more file1

постраничный вывод содержимого файла file1 на стандартное устройство вывода

less file1

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

head -2 file1

вывести первые две строки файла file1 на стандартное устройство вывода. По-умолчанию выводится десять строк

tail -2 file1

вывести последние две строки файла file1 на стандартное устройство вывода. По-умолчанию выводится десять строк

tail -f /var/log/messages

выводить содержимое файла /var/log/messages на стандартное устройство вывода по мере появления в нём текста.$/d’ example.txt

удалить пустые строки и комментарии из файла example.txt

echo ‘test’ | tr ‘[:lower:]’ ‘[:upper:]’

преобразовать символы из нижнего регистра в верхний

sed -e ‘1d’ result.txt

удалить первую строку из файла example.txt

sed -n ‘/string1/p’

отобразить только строки содержашие «string1»

sed -e ‘s/ *$//’ example.txt

удалить пустые символы в в конце каждой строки

sed -e ‘s/string1//g’ example.txt

удалить строку «string1» из текста не изменяя всего остального

sed -n ‘1,8p;5q’ example.txt

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

sed -n ‘5p;5q’ example.txt

вывести пятую строку

sed -e ‘s/0*/0/g’ example.txt

заменить последовательность из любого количества нулей одним нулём

cat -n file1

пронумеровать строки при выводе содержимого файла

cat example.txt | awk ‘NR%2==1’

при выводе содержимого файла, не выводить чётные строки файла

echo a b c | awk ‘{print $1}’

вывести первую колонку. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции

echo a b c | awk ‘{print $1,$3}’

вывести первую и треью колонки. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции

paste file1 file2

объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m

paste -d ‘+’ file1 file2

объединить содержимое file1 и file2 в виде таблицы с разделителем «+»

sort file1 file2

отсортировать содержимое двух файлов

sort file1 file2 | uniq

отсортировать содержимое двух файлов, не отображая повторов

sort file1 file2 | uniq -u

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

sort file1 file2 | uniq -d

отсортировать содержимое двух файлов, отображая только повторяющиеся строки

comm -1 file1 file2

сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file1’

comm -2 file1 file2

сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file2’

comm -3 file1 file2

сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах

Преобразование наборов символов и файловых форматов

dos2unix filedos.txt fileunix.txt

конвертировать файл текстового формата из MSDOS в UNIX (разница в символах возврата коретки)

unix2dos fileunix.txt filedos.txt

конвертировать файл текстового формата из UNIX в MSDOS (разница в символах возврата коретки)

recode ..HTML < page.txt > page.html

конвертировать содержимое тестового файла page.txt в html-файл page.html

recode -l | more

вывести список доступных форматов

Анализ файловых систем

badblocks -v /dev/hda1

проверить раздел hda1 на наличие bad-блоков

fsck /dev/hda1

проверить/восстановить целостность linux-файловой системы раздела hda1

fsck.ext2 /dev/hda1

проверить/восстановить целостность файловой системы ext2 раздела hda1

e2fsck /dev/hda1

 

e2fsck -j /dev/hda1

проверить/восстановить целостность файловой системы ext3 раздела hda1 с указанием, что журнал расположен там же

fsck.ext3 /dev/hda1

проверить/восстановить целостность файловой системы ext3 раздела hda1

fsck.vfat /dev/hda1

проверить/восстановить целостность файловой системы fat раздела hda1

fsck.msdos /dev/hda1

dosfsck /dev/hda1

Форматирование файловых систем

mkfs /dev/hda1

создать linux-файловую систему на разделе hda1

mke2fs /dev/hda1

создать файловую систему ext2 на разделе hda1

mke2fs -j /dev/hda1

создать журналирующую файловую систему ext3 на разделе hda1

mkfs -t vfat 32 -F /dev/hda1

создать файловую систему FAT32 на разделе hda1

fdformat -n /dev/fd0

форматирование флоппи-диска без проверки

mkswap /dev/hda3

создание swap-пространства на разделе hda3

swap-пространство

mkswap /dev/hda3

создание swap-пространства на разделе hda3

swapon /dev/hda3

активировать swap-пространство, расположенное на разделе hda3

swapon /dev/hda2 /dev/hdb3

активировать swap-пространства, расположенные на разделах hda2 и hdb3

Создание резервных копий (backup)

dump -0aj -f /tmp/home0.bak /home

создать полную резервную копию директории /home в файл /tmp/home0.bak

dump -1aj -f /tmp/home0.bak /home

создать инкрементальную резервную копию директории /home в файл /tmp/home0.bak

restore -if /tmp/home0.bak

восстановить из резервной копии /tmp/home0.bak

rsync -rogpav —delete /home /tmp

синхронизировать /tmp с /home

rsync -rogpav -e ssh —delete /home ip_address:/tmp

синхронизировать через SSH-туннель

rsync -az -e ssh —delete ip_addr:/home/public /home/local

синхронизировать локальную директорию с удалённой директорией через ssh-туннель со сжатием

rsync -az -e ssh —delete /home/local ip_addr:/home/public

синхронизировать удалённую директорию с локальной директорией через ssh-туннель со сжатием

dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr ‘dd of=hda.gz’

сделать «слепок» локального диска в файл на удалённом компьютере через ssh-туннель

tar -Puf backup.tar /home/user

создать инкрементальную резервную копию директории ‘/home/user’ в файл backup.tar с сохранением полномочий

( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr ‘cd /home/share/ && tar x -p’

копирование содержимого /tmp/local на удалённый компьютер через ssh-туннель в /home/share/

( tar c /home ) | ssh -C user@ip_addr ‘cd /home/backup-home && tar x -p’

копирование содержимого /home на удалённый компьютер ч

сборник команд для администрирования linux систем

Ниже представлены различные команды системной оболочки Unix подобных операционных систем. Имейте в виду, это просто сборник, не относящийся к какому-то конкретному дистрибутиву, то есть многие из этих команд, специфичны для какой-то определенной системы и могут отсутствовать в других дистрибутивах Linux. Большинство из приведенных ниже команд, являются достаточно повседневными, то есть часто используются в процессе администрирования Unix систем ( различных дистрибутивов Linux ).

Корректные: выключение, перезагрузка, выход из системы

# init 0
Выключить систему
# logout
Завершить текущую сессию
# reboot
Перезагрузка
# shutdown -h now
Еще один вариант корректного выключения
# shutdown -h 22:15 &
Запланировать выключение системы на 22 часа 15 минут
# shutdown -c
Отменить запланированное выключения системы
# shutdown -r now
Еще один вариант перезагрузки
# telinit 0
Тоже способ выключения системы
]]>Вверх]]>

Получение различной информации о системе

# arch
Вывести на экран архитектуру компьютера
# uname -m
Так-же выводит архитектуру компьютера
# cal 2010
Печатает календарь на 2010 год. Без аргументов выводит календарь на текущий месяц
# cat /proc/cpuinfo
Вывести подробную информацию о процессоре
# cat /proc/interrupts
Вывести информацию о прерываниях
# cat /proc/meminfo
Выводит статистику использования памяти
# cat /proc/swaps
Вывести информацию о swap файле(ах) ( файл подкачки )
# cat /proc/version
Вывести информацию о версии текущего ядра
# cat /proc/net/dev
Вывести информацию и статистику по сетевым устройствам
# cat /proc/mounts
Показать смонтированные файловые системы
# clock -w
Записать текущую системную дату в BIOS
# date
Вывести текущую системную дату и время
# date 041217002007.00
Установить дату и время в значение МесяцДеньЧасМинутаГод.Секунда
# dmidecode -q
Вывести в читабельном виде информацию по аппаратному оборудованию системы (SMBIOS / DMI)
# hdparm -i /dev/hda
Вывести характеристики жесткого диска
# hdparm -tT /dev/sda
Измерять скорость чтения данных с жесткого диска
# lspci -tv
Вывести список устройств на шине PCI
# lsusb -tv
Вывести список устройств на USB шине
# uname -r
Вывести версию используемого ядра
]]>Вверх]]>

Дисковое пространство

# df -h
Вывод информации о свободном и занятом дисковом пространстве на смонтированных разделах, в формате, удобном для чтения
# dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n
Выводит объем используемого дискового пространства, занятого файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)
# du -sh dir
Выводит объем дискового пространства, занимаемый директорией dir
# du -sk * | sort -rn
Выводит листинг файлов и директорий с размером, сортируя его по размеру
# ls -lSr | more
Выводит листинг файлов и директорий, сортируя по возрастанию размера и перенаправляет его в программу more для постраничного просмотра
# rpm -q -a —qf ‘%10{SIZE}t%{NAME}n’ | sort -k1,1n
Выводит объем дискового пространства, занимаемого файлами rpm-пакета, с сортировкой по размеру ( fedora, redhat и т.п. )
]]>Вверх]]>

Работа с файлами и папками

# pwd
Вывести текущую директорию
# cd /home
Перейти в директорию /home
# cd ..
Перейти в родительский каталог, то есть подняться на уровень выше
# cd ../..
Подняться в дереве каталогов на два уровня
# cd
Перейти в домашний каталог
# cd ~user
Перейти в домашний каталог пользователя user
# cd —
Перейти в предыдущую директорию, из которой был сделан переход в текущую директорию
# cp -a test_1 test_2
Копировать директорию test_1 в директорию test_2
# cp file_1 file_2
Копировать файл file_1 в файл file_2
# cp -a /tmp/test .
Rопировать директорию test и все ее содержимое в текущую директорию
# cp test/* .
Копировать все файлы содержащиеся в директории test в текущую директорию
# iconv -l
Выводит список доступных для использования кодировок
# iconv -c -f windows-1251 -t utf-8 inputFile > outputFile
Конвертировать файл из кодировки windows-1251 в кодировку utf-8
# ln -s /path/to/filedir ./link
Создать в текущей директории символическую ссылку link на директорию или файл filedir
# ln /path/to/filedir ./link
Создать в текущей директории жесткую ссылку link на директорию или файл filedir
# ls
Вывести листинг содержимого текущей директории
# ls -F
Листинг текущей директории с добавлением к именам символов, обозначающих тип объекта
# ls -l
Листинг текущей директории с подробностями по каждому объекту ( права доступа, владелец, группа, дата, размер )
# ls -a
Кроме обычных объектов, вывести в листинге, скрытые файлы и директории, текущего каталога
# ls /tmp | pr -T5 -W$COLUMNS
Листинг директории /tmp в 5 колонок
# ls *[0-9]*
Вывести в листинг файлов и директорий текущего каталога, содержащие в имени цифровые символы
# lstree
Листинг иерархии директорий и файлов, начиная с корневого каталога (/)
# mkdir dir
Создать в текущем каталоге, директорию с именем dir
# mkdir dir_1 dir_2
Создать в текущем каталоге две директории, с именами dir_1 и dir_2
# mkdir -p /path/to/dir
Создать иерархию директорий. Кроме самой директории dir будут созданы все промежуточные директории
# mv filedir new_filedir
Переместить ( переименовать ) файл или директорию из filedir в new_filedir
# rm -rf /dir
Рекурсивно удалить директорию dir и всё её содержимое, без запроса подтверждения на удаление
# rm -f file
Удалить файл file, без запроса подтверждения
# rm -rf /dir_1 /dir_2
Удалить директории /dir_1 и /dir_2 вместе с содержимым, без запроса подтверждения
# rmdir /dir
Удалить директорию /dir
# tree
Вывести иерархию директорий и файлов, начиная с корневой (/)
# touch -t 0712250000 file1
Изменить дату и время создания файла, если указанный файл не существует, создать его с указанными датой и временем (YYMMDDhhmm)
]]>Вверх]]>

Поиск нужного файла

# find / -user vasya
Найти все директории и файлы принадлежащие пользователю vasya. Поиск будет производиться, начиная с корневой директории (/)
# find / -name filedir
Найти директории и файлы с именем filedir. Поиск будет производиться, начиная с корневой директории (/)
# find /usr/bin -type f -atime +20
Найти все файлы в директории /usr/bin, время последнего обращения к которым более 20 дней
# find /usr/bin -type f -mtime -10
Найти все файлы в директории /usr/bin, которые были созданы или модифицированы в течении последних 10 дней
# find / -xdev -name \*.rpm
Искать директории и файлы, имена которых оканчиваются на «.rpm«, но игнорируя съёмные накопители, cdrom, usb и т.п.
# find . -maxdepth 1 -name *.jpg -print -exec convert
Найти в текущей директории все файлы с расширением jpg и выполнить для каждого команду convert ( Imagemagick )
# find /path/to/dir -name \*.c
Найти все директории и файлы, имена которых оканчиваются на ««. Поиск будет производиться, начиная с директории /path/to/dir
# find / -name *.rpm -exec chmod 755 ‘{}’ \;
Начиная с корня, найти все фалы и директории, имена которых оканчиваются на «.rpm«, и для каждого изменить права доступа
# whereis ls
Вывод полных путей к бинарным файлам, файлом исходных кодов и руководств, имеющих отношение к файлу ls
# locate \*.ps
Поиск всех файлов, содержащих в имени «.ps» по специальной базе данных, предварительно сформированной командой updatedb
# which ls
Вывести полный путь до файла ls
]]>Вверх]]>

Монтирование файловых систем

# mount /dev/hda1 /mnt/disk
Монтировать устройство /dev/hda1 в папку с именем /mnt/disk. точка монтирования, папка /mnt/disk, должна существовать
# fuser -km /mnt/hda1
Размонтировать устройство hda1 если оно заблокировано каким либо процессом
# mount -o loop file.iso /mnt/cdrom
Смонтировать фаил или образ ISO в директорию /mnt/cdrom
# mount /dev/hdb /mnt/cdrecorder
Монтировать cdrw или dvdrom
# mount -t vfat /dev/hda5 /mnt/hda5
Смонтировать раздел с файловой системой FAT32
# mount /dev/cdrom /mnt/cdrom
Монтировать cdrom или dvdrom
# mount /dev/fd0 /mnt/floppy
Монтировать floppy disk ( дисковод мягких дисков )
# mount /dev/hdc /mnt/cdrecorder
Монтировать cdrw или dvdrom
# mount /dev/sda1 /mnt/usbdisk
Монтировать USB устройство
# mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share
Монтировать сетевую файловую систему Windows (SMB/CIFS)
# umount -n /mnt/hda2
Размонтировать без записи в файл /etc/mtab, используется в ситуациях, когда файл находится в режиме только чтение или жесткий диск переполнен
# umount /dev/hda2
Размонтировать диск hda2, предварительно неоходимо выйти из точки монтирования /mnt/hda2
]]>Вверх]]>

Пользователи и группы

# useradd -c «User Vasya» -g admin -d /home/vasya -s /bin/bash vasya
Создать пользователя vasya, домашним каталогом будет создана директория /home/vasya, в качестве системной оболочки будет назначен /bin/bash, пользователь будет включен в группу admin, кроме того для учетной записи будет создан комментарий «User Vasya»
# useradd vasya
Создать пользователя vasya
# usermod -c «User FTP» -g system -d /ftp/ftpuser -s /bin/nologin ftpuser
Изменение пользователя
# userdel -r vasya
Удалить пользователя с именем vasya и его домашнюю директорию
# groupadd [ group_name ]
Создать группу с именем group_name
# chage -E 2005-12-31 vasya
Установить дату окончания действия учётной записи пользователя vasya
# groupdel [ group_name ]
Удалить группу group_name
# groupmod -n test new_test
Переименовать группу test в new_test
# newgrp — [group]
Изменяет основную группу текущего пользователя. При указании «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, основная группа будет назначена из файла /etc/passwd
# grpck
Проверка корректности системных файлов учётных записей. Проверяется файл/etc/group
# pwck
Проверка корректности системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow
# passwd
Изменить пароль текущего пользователя
# passwd vasya
Изменить пароль пользователя vasya ( может выполнять только root )
]]>Вверх]]>

Атрибуты файлов

# chattr +a file
Разрешает только добавление данных в файл
# chattr +d file
Игнорировать данный файл при создании резервной копии с помощью программы dump
# chattr +c file
Разрешить ядру автоматически сжимать/разжимать содержимое файла
# chattr +i file1
Защита файла от каких либо изменений или манипуляций: редактирование, перемещение, удаление, создание ссылок на него
# chattr +S file1
Определяет, будет-ли при сохранении изменений, произведена синхронизация, как при использовании команды sync
# chattr +u file1
При удалении файла с данным атрибутом, его будет сохранено, что-бы оставить пользователю возможность восстановить данные в случае необходимости
# chattr +s file1
Позволяет безвозвратное удаление данного файла. При удалении файла с этим атрибутом, место на диске, занимаемое файлом, перезаписывается нулями, после чего файл уже не подлежит восстановлению
# lsattr
Листинг файлов с атрибутами
]]>Вверх]]>

Работа с правами доступа файлов и директорий

# chown vasya /file
Назначить пользователя vasya владельцем файла file
# chown -R vasya directory
Рекурсивно обойти директорию directory и назначить пользователя vasya владельцем всех вложенных файлов и директорий
# chown vasya:group /file
Назначить владельца и группу для файла /file
# chmod ugo+rwx /directory
Установить полные права доступа rwx ( Read Write eXecute ) для всех ugo ( User Group Other ) на директорию /directory. То-же самое можно сделать, используя числовой представление chmod 777 directory
# chmod go-rwx /directory
Удалить все права на директорию /directory для группы и остальных
# chgrp new_group file
Изменить группу-владельца для file на new_group
# chmod o+t /home/public
Установить так называемый STIKY-бит на директорию /home/public. Удалить файл в такой директории может только владелец данного файла
# chmod o-t /home/public
Удалить STIKY-бит с директории /home/public
# chmod u+s /bin/binary_file
Установить SUID-бит на файл /bin/binary_file. Это позволяет любому пользователю системы, запускать данный файл с правами владельца файла
# chmod u-s /bin/binary_file
Удалить SUID-бит с файла /bin/binary_file
# chmod g+s /home/public
Установить SGID-бит на директории /home/public
# chmod g-s /home/public
Удалить SGID-бит с директории /home/public
# find / -perm -u+s
Поиск всех файлов с установленным SUID битом, начиная с корня файловой системы
# ls -lh
Листинг текущего каталога с правами доступа
]]>Вверх]]>

Архивация и сжатие файлов

# gzip -9 file1
Поместить файл file1 в архив gzip с максимальной степенью сжатия
# rar a file1.rar file1 file2 dir1
Создать rar архив file1.rar, заархивировав файлы: file1, file2 и директорию: dir1
# rar a file1.rar test_file
Упаковать в rar архив file1.rar файл test_file
# rar x file.rar
Разархивировать rar архив file.rar
# bzip2 file1
Сжимает файл file1
# bunzip2 file1.bz2
Разжимает файл file1.bz2
# gzip file1
Сжимает файл file1
# gunzip file1.gz
Разжимает файл file1.gz
# tar -cvf archive.tar file1 file2 dir1
Создать tar архив archive.tar, упаковав в него файлы file1, file2 и директорию dir1
# tar -cvf archive.tar file
Упаковать в tar-архив archive.tar, файл file
# tar -tf archive.tar
Вывести содержимое tar архива
# tar -xvf archive.tar
Распаковать tar архив
# tar -xvf archive.tar -C /tmp
Распаковать архив в /tmp
# tar -cvfz archive.tar.gz dir1
Создать tar архив и сжать его с помощью программы gzip
# tar -xvfz archive.tar.gz
Разжать tar архив и распаковать его
# tar -cvfj archive.tar.bz2 dir1
Создать архив и сжать его с помощью bzip2 ( ключ -j работает не во всех *nix системах )
# tar -xvfj archive.tar.bz2
Разжать архив и распаковать его ( ключ -j работает не во всех *nix системах )
# zip file1.zip file1
Создать сжатый zip-архив
# zip -r file1.zip file1 file2 dir1
Запаковать в архив несколько файлов и/или директорий
# unzip file1.zip
Разжать и распаковать zip-архив
# unrar x file1.rar
Распаковать rar-архив
]]>Вверх]]>

Работа с RPM пакетами ( Fedora, Red Hat и им подобные дистрибутивы )

# rpm -e [ package ]
Удалить пакет package
# rpm -qa | grep httpd
Вывести список установленных в системе пакетов и отобрать, содержащие в своем имени httpd
# rpm -qa
Вывести список всех установленных в системе пакетов
# rpm -qi [ package ]
Вывести информацию о пакете package
# rpm -ivh [package.rpm]
Установить пакет с выводом сообщений и прогресс-бара
# rpm -U [package.rpm]
Обновить пакет без изменений конфигурационных файлов, в случае отсутствия пакета, он будет установлен
# rpm -ivh —nodeeps [package.rpm]
Установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей
# rpm -F [package.rpm]
Обновить пакет только если он установлен
# rpm -q [package] —whatprovides
Список предоставляемой функциональности
# rpm -q [package] —changelog
Вывести историю ревизий пакета
# rpm -q [package] —scripts
Отобразит скрипты, запускаемые при установке/удалении пакета
# rpm -qf /etc/httpd/conf/httpd.conf
Проверить какому пакету принадлежит указанный файл. Указывать следует полный путь и имя файла
# rpm -qg «System Environment/Daemons»
Отобразить пакеты входящие в группу пакетов ( fedora, redhat )
# rpm -qc [package]
Вывести список конфигурационных файлов, входящих в пакет
# rpm -ql [package]
Вывести список файлов, входящих в пакет
# rpm -q [package] —whatrequires
Вывести список пакетов, необходимых для установки конкретного пакета по зависимостям
# rpm -qp [package.rpm] -l
Отображает список файлов, входящих в пакет, но ещё не установленных в систему
# rpm -Va
Проверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью!
# rpm -ivh /usr/src/redhat/RPMS/`arch`/[package.rpm]
Установить пакет, собранный из исходных кодов
# rpm -Vp [package.rpm]
Проверить пакет, который ещё не установлен в систему
# rpm2cpio [package.rpm] | cpio —extract —make-directories *bin*
Извлечь из пакета файлы содержащие в своём имени bin
# rpm —import /media/cdrom/RPM-GPG-KEY
Импортировать публичный ключ цифровой подписи
# rpm —checksig [package.rpm]
Проверит подпись пакета
# rpm -qa gpg-pubkey
Проверить целостность установленного содержимого пакета
# rpm -V [package]
Проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменения пакета
# rpmbuild —rebuild [package.src.rpm]
Собрать пакет из исходных кодов
]]>Вверх]]>

Средство управления пакетами — YUM ( Fedora, RedHat и т.д. )

# yum list
Вывести листинг пакетов, установленных в системе
# yum clean headers
Удалить все заголовки файлов, которые система использует для разрешения зависимостей
# yum clean [package]
Очистить rpm-кэш, удалив закачанные пакеты
# yum search [package]
Найти пакет в репозитории
# yum clean all
Очистить rpm-кэш, удалив закачанные пакеты и заголовки
# yum -y install [ package ]
Скачать и установить пакет
# yum update [package]
обновить пакет
# yum -y update
Обновить все пакеты, установленные в систему
# yum localinstall [ package.rpm ]
Попытаться установить пакет RPM и все зависимые от него пакеты, используя ваши репозитории
# yum remove [package]
Удалить пакет
]]>Вверх]]>

Средства управления DEB пакетами ( Debian, Ubuntu и т.д. )

# dpkg -l
Список пакетов, установленных в системе
# dpkg -r [package]
Удалить пакет из системы
# dpkg -i [package.deb]
Установить / обновить пакет
# dpkg -l | grep httpd
Вывести список установленных в системе пакетов, отобрав, содержащие в своем названии httpd
# dpkg -s [package]
Вывести информацию о конкретном пакете
# dpkg —contents [package.deb]
Вывести список файлов, входящих в пакет, который ешё не установлен в систему
# dpkg -L [package]
Вывести список файлов, входящих в пакет, установленный в систему
# dpkg -S /bin/ping
В какой пакет входит указанный файл.
]]>Вверх]]>

Система управления пакетами Pacman ( Arch, Frugalware and alike )

# pacman -S name
Установить пакет name со всеми зависимостями
# pacman -R name
Удалить пакет и все его файлы
]]>Вверх]]>

Средство управление пакетами — APT ( Debian, Ubuntu и т.д. )

# apt-cache search [ package ]
Вывести список пакетов, чье имя совпадает со строкой package
# apt-get check
Проверить зависимости
# apt-cdrom install [ package ]
Установить / обновить пакет с cdrom’а
# apt-get install [ package ]
Установить / обновить пакет
# apt-get upgrade
Обновить установленные в систему пакеты
# apt-get remove [ package ]
Удалить установленный пакет из системы, сохранив файлы конфигурации
# apt-get update
Обновить списки пакетов репозитария
# apt-get clean
Удалить загруженные архивные файлы пакетов
]]>Вверх]]>

Анализ файловой системы

# badblocks -v /dev/hda1
Проверить раздел hda1 на наличие bad-блоков
# fsck /dev/hda1
Проверить и при необходимости попробовать восстановить целостность linux-файловой системы раздела hda1
# fsck.ext2 /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы ext2 раздела hda1
# fsck.msdos /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы fat раздела hda1
# fsck.vfat /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы fat раздела hda1
# fsck.ext3 /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы ext3 раздела hda1
# dosfsck /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы fat, раздела hda1
# e2fsck /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы ext2 раздела hda1
# e2fsck -j /dev/hda1
Проверить и при необходимости попробовать восстановить целостность файловой системы ext3 раздела hda1, журнал файловой системы расположен там же
]]>Вверх]]>

Просмотр содержимого файлов

# cat file1
Вывести все содержимое файла начиная с первой строки
# head -2 file1
Отобразить две первые строки файла
# tac file1
Отобразить содержимое файла начиная с последней строки
# tail -f /var/log/messages
В реальном времени выводить все, что добавляется в файл
# tail -2 file1
Вывести две последние строки файла
# more file1
Отобразить содержимое файла постранично
# less file1
Аналогична команде more но позволяет перемещаться по содержимому вперед и назад
]]>Вверх]]>

Манипуляции с текстом

# cat -n file1
Вывести содержимое файла, нумеруя выводимые строки
# cat example.Aug /var/log/messages
Отобрать и вывести строки, начинающиеся с сочетания символов «Aug», из файла /var/log/messages
# grep Aug /var/log/messages
Отобрать и вывести строки, содержащие сочетание символов «Aug» из файла /var/log/messages
# grep Aug -R /var/log/*
Отобрать и вывести строки, содержащие сочетание символов «Aug», из всех файлов, расположенных в директории /var/log и ниже
# paste -d ‘+’ file1 file2
Объединить содержимое file1 и file2 в виде таблицы с разделителем «+»
# paste file1 file2
Объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m
# sdiff file1 file2
Сравнить содержимое двух файлов
# sed ‘s/string1/string2/g’ example.txt
Заменить string1 на string2 в файле example.$/d’ example.txt
Удалить пустые строки и комментарии из файла example.txt
# sed -e ‘1d’ exampe.txt
Удалить первую строку из файла example.txt
# sed -n ‘/string1/p’
Отобразить только строки содержащие string1
# sed -e ‘s/string//g’ example.txt
Удалить строку string1 из текста файла example.txt не изменяя всего остального
# sed -e ‘s/ *$//’ example.txt
Удалить пустые символы в конце каждой строки файла example.txt
# sed -n ‘5p;5q’ example.txt
Вывести пятую строку
# sed -n ‘2,5p’ example.txt
Вывести строки со второй по пятую
# sed -e ‘s/00*/0/g’ example.txt
Заменить последовательность из любого количества нулей одним нулём
# sort file1 file2
Вывести отсортированное содержимое двух файлов
# sort file1 file2 | uniq
Вывести отсортированное содержимое двух файлов исключая повторные значения
# sort file1 file2 | uniq -u
Вывести уникальные значения из отсортированного содержимого двух файлов
# sort file1 file2 | uniq -d
Вывести только повторяющиеся значения из отсортированного содержимого двух файлов
# echo ‘word’ | tr ‘[:lower:]’ ‘[:upper:]’
Перевести символы нижнего регистра в верхний
]]>Вверх]]>

Конвертирование соодержимого текстовых файлов

# dos2unix filedos.txt fileunix.txt
Конвертировать содержимое текстового файла из MSDOS кодировки в UNIX кодировку (разница в символах возврата коретки)
# unix2dos fileunix.txt filedos.txt
Конвертировать содержимое текстового файла из UNIX кодировки в MSDOS кодировку (разница в символах возврата коретки)
# recode ..HTML < page.txt > page.html
Конвертировать содержимое тестового файла page.txt в html-файл page.html
# recode -l | more
Вывести список доступных форматов
]]>Вверх]]>

Файловая система SWAP ( файл подкачки )

# mkswap /dev/hda3
Создание swap-пространство на разделе hda3
# swapon /dev/hda3
Включить swap-пространство, расположенное на разделе hda3
# swapon /dev/hda2 /dev/hdb3
Активировать swap-пространства, расположенные на разделах hda2 и hdb3
]]>Вверх]]>

Форматирование файловой системы

# fdformat -n /dev/fd0
Форматирование флоппи-диска без проверки
# mkfs /dev/hda1
Создать файловую систему linux на разделе hda1
# mke2fs -j /dev/hda1
Создать журналируемую файловую систему ext3 на разделе hda1
# mke2fs /dev/hda1
Создание файловой системы ext2 на разделе hda1
# mkfs -t vfat 32 -F /dev/hda1
Создать файловую систему FAT32 на разделе hda1
]]>Вверх]]>

Резервное копирование ( Backup )

# find /var/log -name ‘*.log’ | tar cv —files-from=- | bzip2 > log.tar.bz2
Поиск всех файлов, заканчивающихся на «.log» в директории /var/log, и упаковка их в bzip-архив
# find /home/user -name ‘*.txt’ | xargs cp -av —target-directory=/home/backup/ —parents
Поиск в директории /home/user файлов, имена которых оканчиваются на «.txt», и копирование их в другую директорию
# rsync -rogpav —delete /home /tmp
Синхронизировать директории /tmp и /home
# rsync -az -e ssh —delete ip_addr:/home/public /home/local
Синхронизировать локальную и удаленную директории через ssh туннель используя сжатие
# rsync -rogpav -e ssh —delete /home ip_address:/tmp
Синхронизация через SSH туннель
# rsync -az -e ssh —delete /home/local ip_addr:/home/public
Синхронизировать удалённую директорию с локальной используя ssh туннель со сжатием
# dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr ‘dd of=hda.gz’
Создать «слепок» локального диска в файл на удалённом сервере используя ssh туннель
# dd if=/dev/hda of=/dev/fd0 bs=512 count=1
Создание копии MBR ( Master Boot Record ) с /dev/hda на флоппи-диск
# dd if=/dev/sda of=/tmp/backup
Создание резервной копии содержимого жесткого диска в файл backup
# dd if=/dev/fd0 of=/dev/hda bs=512 count=1
Восстановить MBR с флоппи-диска на /dev/hda
# dump -0aj -f /tmp/home0.bak /home
Создать полную резервную копию директории /home в файл /tmp/home0.bak
# dump -1aj -f /tmp/home0.bak /home
Создать инкрементную резервную копию директории /home в файл /tmp/home0.bak
# restore -if /tmp/home0.bak
Восстановить данные из резервной копии /tmp/home0.bak
# tar -Puf backup.tar /home/user
Создать инкрементную резервную копию директории /home/user в файл backup.tar сохраняя права доступа
# ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr ‘cd /home/share/ && tar x -p’
Упаковка в архив и копирование содержимого /tmp/local в директорию /home/share/ удалённого сервера, используя ssh туннель
# ( tar c /home ) | ssh -C user@ip_addr ‘cd /home/backup-home && tar x -p’
Упаковка в архив и копирование содержимого /home в директорию /home/backup-home удалённого сервера, используя ssh туннель
# tar cf — . | (cd /tmp/backup ; tar xf — )
Упаковка в архив и копирование одной директории в другую с сохранением прав доступа и ссылок
]]>Вверх]]>

CDROM

# cd-paranoia -B
Перенести аудио-треки с компакт-диска в wav-файлы.
# cd-paranoia —
Перенести три аудио-трека с компакт-диска в wav-файлы.
# cdrecord -v dev=/dev/cdrom cd.iso
Записать ISO-образ на компакт-диск.
# gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom —
Записать сжатый ISO-образ на компакт-диск.
# mkisofs /dev/cdrom > cd.iso
Создать ISO-образ компакт-диска.
# mkisofs -J -allow-leading-dots -R -V
Создать ISO-образ из содержимого директории.
# mkisofs /dev/cdrom | gzip > cd_iso.gz
Создать сжатый ISO-образ компакт-диска.
# mount -o loop cd.iso /mnt/iso
Смонтировать ISO-образ компакт-диска в файловую систему.
# cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force
Очистить перезаписываемый компакт-диск.
# cdrecord —scanbus
Сканировать системную шину для поиска идентификаторов SCSI каналов.
# dd if=/dev/hdc | md5sum
Вычислить контрольную сумму MD5 для устройства, например, компакт-диска.
]]>Вверх]]>

Сети (LAN / WiFi)

# dhclient eth0
Включить DHCP на сетевом интерфейсе eth0
# ethtool eth0
Вывод статистики по сетевому интерфейсу eth0
# hostname
Вывести имя компьютера
# host www.example.com
Преобразовать домен www.example.org в ip-адрес и наоборот
# ifconfig eth0
Вывести настройки сетевой карты eth0
# ifconfig eth0 promisc
Переключить интерфейс eth0 в promiscuous-режим для сбора ( сниффинг ) сетевых пакетов
# ifup eth0
Включить сетевой интерфейс eth0
# ifdown eth0
Отключить сетевой интерфейс eth0
# ifconfig eth0 192.168.1.1 netmask 255.255.255.0
Назначить IP адрес и маску сетевому интерфейсу eth0
# ip link show
Вывести статус связи всех сетевых интерфейсов
# iwconfig eth2
Вывести конфигурацию беспроводного сетевого интерфейса eth2
# iwlist scan
Сканирование и поиск беспроводных сетей и точек доступа
# mii-tool eth0
Вывести состояние связи сетевого интерфейса eth0
# nslookup www.example.com
Ресольвить ( преобразовать/разрешить ) доменное имя www.example.org в ip-адрес и наоборот
# route -n
Песать локальной таблицы маршрутизации
# route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1
Добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1
# route add -net 0/0 gw IP_Gateway
Назначить ip-адрес шлюза по умолчанию ( default gateway )
# route del 0/0 gw IP_gateway
Удалить ip-адрес шлюза по умолчанию ( default gateway )
# netstat -tup
Выводит листинг всех установленных соединений по протоколам TCP и UDP без разрешения имён в ip-адреса а так-же PID‘ы и имена процессов, обслуживающих данные соединения
# netstat -tupl
Вывод списка соединений по протоколам TCP и UDP без разрешения имён в ip-адреса а так-же и PID‘ы и имена процессов, ожидающих соединений на сетевых портах
# netstat -rn
Вывести таблицу маршрутизации, аналог команды route -n
# echo «1» > /proc/sys/net/ipv4/ip_forward
Разрешить форвардинг ( пересылку ) пакетов
# tcpdump tcp port 80
Отлавливать и выводить весь трафик на TCP-порт 80 (обычно — HTTP)
# whois www.example.com
Вывести информацию о доменном имени из базы данных whois
]]>Вверх]]>

Microsoft Windows networks (samba)

# mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share
Монтировать smb-ресурс, расшаренный на windows-машине, в папку локальной файловой системы
# nbtscan ip_addr
Преобразовать имя netbios. Программа nbtscan не во всех системах присутствует по-умолчанию, nmblookup включен в пакет samba
# nmblookup -A ip_addr
Преобразовать имя netbios. Программа nbtscan не во всех системах присутствует по-умолчанию, nmblookup включен в пакет samba
# smbclient -L ip_addr/hostname
Вывести список ресурсов, выделенных в общий доступ на windows-машине
# smbget -Rr smb://ip_addr/share
Аналог программы wget для SMB протокола
]]>Вверх]]>

Фаервол IPTABLES, штатный, для большинства дистрибутивов Linux

# iptables -t filter -L
Вывести список всец цепочек правил
# iptables -t nat -L
Вывести все цепочки из NAT таблицы
# iptables -t nat -F
Очистить все цепочки правил в таблице NAT
# iptables -t filter -X
Очистить все пользовательские цепочки правил в таблице filter
# iptables -t filter -F
Очистить все цепочки правил в таблице filter
# iptables -t filter -A INPUT -p tcp —dport telnet -j ACCEPT
Разрешить входящие соединения с telnet
# iptables -t filter -A OUTPUT -p tcp —dport http -j DROP
Запретить исходящие HTTP соединения
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
включить NAT (Network Address Translate) исходящих пакетов на интерфейс eth0. Допустимо при использовании с динамически выделяемыми ip-адресами.
# iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp —dport 22 -j DNAT —to-destination 10.0.0.2:22
Пересылка пакетов, адресованных одному хосту, на другой хост
# iptables -t filter -A INPUT -j LOG —log-prefix
Включить логгирование пакетов, проходящих через цепочку INPUT, и добавлением к сообщению префикса «DROP INPUT»
# iptables -t filter -A FORWARD -p tcp —dport pop3 -j ACCEPT
Разрешить форвардинг POP3 соединений
]]>Вверх]]>

Мониторинг и отладка системы

# free -m
Вывод статистики по оперативной памяти
# kill -9 proc_id
Убить процесс с PID proc_id, без соблюдения целостности данных, то есть насмерть
# kill -1 proc_id
Перечитать файл конфигурации процессом с PID proc_id
# last reboot
Вывод истории ребутов системы
# lsof /home/user1
Вывести список открытых файлов из директории /home/user1
# lsof -p proc_id
Вывести список файлов, открытых процессом с PID proc_id
# lsmod
Список загруженных модулей ядра
# ps -e -o pid,args —forest
Вывести список PID’ов и процессов в виде дерева
# ps -eafw
Отобразить работающие в системе процессы, используемые ими ресурсы и другую полезную информацию ( единожды )
# pstree
Вывести дерево процессов
# smartctl -i /dev/hda
Проверить доступность SMART на жёстком диске /dev/hda
# smartctl -A /dev/hda
Проверка состояния жёсткого диска /dev/hda через SMART
# strace -c ls >/dev/null
Вывести список системных вызовов, созданных и полученных процессом ls
# strace -f -e open ls >/dev/null
Вывести список вызовов системных бибилотек
# tail /var/log/messages
Вывести десять последних записей из системного журнала
# tail /var/log/dmesg
Вывести десять последних записей из журнала загрузки ядра
# top
Вывести список работающих в системе процессов с различной полезной информацией в режиме реального времени с автоматическим обновлением данных
# watch -n1 ‘cat /proc/interrupts’
Выводить прерывания в режиме реального времени
]]>TOP]]>

Другие полезные команды

# alias hh=’history’
Создать псевдоним hh для команды history
# apropos …keyword
Вывод комманд, так или иначе относящихся к ключевым словам. Полезно, когда вы знаете что делает программа, но не помните команду
# chsh
Изменить системную оболочку пользователя
# gpg -c file1
Шифрует файл file1 с помощью GNU Privacy Guard
# gpg file1.gpg
Дешифруе

25 базовых команд Linux, которые должны знать все системные администраторы — Linux Hint

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

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

Команды Linux для системных администраторов

1. Время работы

Linux поставляется с инструментом uptime , который позволяет вам проверить, как долго работает система, и сколько пользователей вошли в систему в данный момент времени. Инструмент также отображает среднюю нагрузку на систему с интервалами в 1, 5 и 15 минут.

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

Инструмент безотказной работы также может отображать время безотказной работы системы, начиная с определенного времени.Чтобы использовать эту функцию, время должно быть отформатировано в формате гггг-мм-дд ЧЧ: ММ .

$ uptime -s <гггг-мм-дд_ЧЧ: ММ>

2. Пользователи

Команда users выведет список всех пользователей, которые в данный момент вошли в систему.

Эта команда не содержит многих опций. Единственными доступными вариантами являются функции help и версии .

3. w

Команда w — это инструмент, определяемый только одним символом.Этот инструмент используется для проверки состояния системы. Команда w отобразит текущих пользователей, вошедших в систему, а также процессы и средние значения нагрузки для каждого пользователя. Эта команда также сообщает имя входа, время входа в систему, имя терминала, JCPU, PCPU и команды.

Команда w имеет несколько опций. Параметр -h отобразит вывод без каких-либо заголовков.

Флаг -s исключает JCPU и PCPU из вывода.

Флаг -f удаляет поле «FROM» из вывода.

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

4. ls

Команда ls используется для проверки содержимого каталога вместе с другой важной информацией. Основное использование команды ls выглядит следующим образом. Если целевой каталог не указан, ls будет использовать текущий каталог.

Чтобы заказать вывод в формате списка, используйте флаг -l .

$ ls -l <целевой_каталог>

Если вы хотите получить более качественный результат, используйте флаг -h . Это означает удобочитаемый формат .

$ ls -lh <целевой_каталог>

Если вам нужно проверить все каталоги вместе с их подкаталогами, вы должны использовать рекурсивный флаг -R . Однако, в зависимости от каталога, вывод может быть очень длинным.

$ ls -R <целевой_каталог>

Если вы хотите отсортировать вывод, флаг -lS отсортирует вывод по размеру.

$ ls -lhS <целевой_каталог>

Команда ls также может отображать UID и GID файлов и каталогов. Используйте флаг -n для выполнения этой задачи.

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

5. ВОЗ

Команда who вернет имя, дату, время и информацию о текущем пользователе.Однако, в отличие от команды w, эта команда не выводит информацию о том, что делает пользователь.

Для полного вывода используйте флаг -a .

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

6. подробнее

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

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

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

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

Если вы хотите прокрутить вниз, нажмите Введите . Если вы хотите прокрутить вверх, нажмите B (в верхнем регистре). Для выхода нажмите Q .Обратите внимание, что прокрутка вверх не будет работать с содержимым, которое передается по конвейеру.

Инструмент more имеет несколько доступных опций. Вы можете проверить эти параметры на странице дополнительной помощи.

7. меньше

Как и больше, меньше — это мощный инструмент для упрощения навигации по большим выводам. Как и раньше, большой вывод будет направлен на меньший.

Инструмент «Меньше» также полезен при навигации по большим текстовым файлам.

Что касается навигации, то горячие клавиши остались прежними.Для прокрутки вверх нажмите B. Для прокрутки вниз нажмите . Введите или , пробел . В отличие от more, less позволяет прокручивать вверх и вниз, даже когда содержимое передается по конвейеру.

Дополнительные параметры см. На странице справки less.

8. cp

Инструмент cp — наиболее важный инструмент для копирования файлов и каталогов. Обратите внимание, что источником может быть несколько файлов или каталогов.

$ cp <параметры> <источник> <назначение>

В этом примере файл будет скопирован в целевой каталог.Флаг -v означает подробный режим.

В случае конфликтов cp обычно перезаписывает файл. Чтобы избежать случайной перезаписи, используйте флаг -i , который означает интерактивный режим.

$ cp -iv output.txt test /

Если вы хотите скопировать каталог вместе со всем его содержимым, используйте флаг -R , который означает рекурсивное копирование.

$ cp -vR <источник> <назначение>

Инструмент cp содержит множество опций.Ознакомьтесь с быстрым списком доступных опций с помощью команды справки.

9. мв

Как и cp, mv — это типичный инструмент для перемещения файлов и каталогов. Инструмент mv также можно использовать для переименования файлов и каталогов. Как и в случае с cp, источником может быть несколько файлов или каталогов.

Базовая структура команды mv следующая:

$ mv <опция> <источник> <назначение>

Для перемещения выхода .txt в каталог test используется флаг -v , обозначающий подробный режим.

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

$ mv -v <старое_имя_файла> <новое_имя_файла>

Чтобы переместить каталог, используйте пути к каталогам.

$ mv

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

$ mv -vn <источник> <цель>

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

$ mv -vi <источник> <цель>

С инструментом mv можно использовать множество опций.Чтобы быстро просмотреть все доступные параметры, выполните команду help .

10. кот

Инструмент cat , который расшифровывается как concatenate , является одним из наиболее часто используемых администраторами инструментов. Этот инструмент используется для проверки содержимого файла без внесения каких-либо изменений в файл. Основное использование этой команды — проверка содержимого файла, в основном текстовых файлов.

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

Инструмент также может подсчитывать линии за вас.Чтобы включить нумерацию строк, используйте флаг -n .

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

$ cat <файл1>; cat <файл2>; cat <файл3>

Команда cat может творить чудеса, когда ее сопровождают другие команды. Например, вы можете легко включить больше или меньше инструментов для упрощения навигации. Я рекомендую по возможности использовать инструмент «меньше», чем «больше».

Чтобы получить быстрый список доступных опций, выполните следующую команду.

11. grep

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

Ниже показано, как использовать grep с текстовыми файлами.

$ grep <файл>

Для поиска без учета регистра используйте флаг -i .

$ grep -i <поисковый_терм> <файл>

Используя команду grep, вы также можете выполнять поиск в файлах всего каталога. Если есть несколько подкаталогов, то grep также может выполнять рекурсивный поиск в каталогах. Для выполнения рекурсивного поиска используйте флаг -r или -R .

$ grep -r <поисковый_терм> <каталог>

Когда вы ищете термин, grep будет соответствовать любой строке, содержащей искомый термин.Например, при поиске текста «alsa» grep будет соответствовать таким терминам, как «alsabat», «alsaucm» и т. Д. Для поиска совпадения только всего слова используйте флаг -w .

$ grep -w <поисковый_терм> <файл>

Инструмент grep также может подсчитывать, сколько раз найденный контент был найден. Чтобы увидеть количество найденных совпадений, используйте флаг -c .

$ grep -c

Также возможно выполнить обратное совпадение.В этом случае инструмент grep сообщит обо всех строках, которые не содержат поисковый запрос. Чтобы использовать поиск с обратным совпадением, используйте флаг -v .

$ grep -v

Инструмент grep также работает с перенаправленным контентом. В следующем примере инструмент grep будет использоваться для чтения текстового файла с помощью cat. Вывод будет перенаправлен на grep для выполнения поиска.

$ cat <файл> | grep

С grep доступно множество функций.Чтобы быстро ознакомиться с этими функциями, посетите страницу справки grep.

12. CD

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

Если вы просто хотите перейти в родительский каталог текущего, используйте .. в качестве цели.

Для команды cd доступно не так много параметров.Это очень простая команда. Однако есть несколько вариантов, которые могут пригодиться при использовании этого инструмента. Посетите страницу справки компакт-диска, чтобы узнать больше.

13. pwd

Команда pwd или печать текущего каталога выведет абсолютный путь к текущему каталогу. Например, каталог «~ /» является ярлыком для «/ home / ».

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

14.сорт

Команда sort — это инструмент, используемый для сортировки передаваемого ей содержимого в порядке возрастания или убывания. Вероятно, лучший способ использовать этот инструмент — передать в него содержимое. По умолчанию команда sort сортирует содержимое в порядке возрастания.

Для сортировки в порядке убывания используйте флаг -r .

Если вы хотите, чтобы сортировка игнорировала регистры, используйте флаг -f .

Инструмент сортировки также может работать непосредственно с текстовыми файлами.

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

15. найди

Команда find — удобный инструмент для выполнения быстрого поиска в целевом каталоге. Однако, в отличие от grep, find будет искать по имени файла.

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

$ найти / домашнее имя viktor

Как видите, в некоторых ситуациях find может не иметь разрешения на чтение определенного каталога. В этом случае убедитесь, что текущий пользователь имеет разрешение на чтение, необходимое для просмотра этих расположений. Также можно выполнять поиск с привилегиями sudo, но это не рекомендуется (если не требуется).

Если вы хотите выполнить поиск без учета регистра, используйте флаг -iname вместо флага -name.

$ find -iname

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

$ find <каталог_поиска> -user -name

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

$ find <каталог_поиска> -группа <группа>

Вы можете дополнительно уточнить поиск, выполнив поиск определенного файла или каталога с помощью флага -type . Что касается значения, f обозначает файл, а d обозначает каталог.

$ find <каталог_поиска> -тип f-имя <поиск_терм>

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

16. деготь

Команда tar — один из наиболее распространенных инструментов в Linux, используемых для архивирования, сжатия и распаковки. В этот инструмент можно включить три алгоритма сжатия: gz, bz2 и xz. Эти параметры будут определять расширение файла сжатого архива; например, tar.gz, tar.bz2 и tar.xz.

Для создания архива структура команд будет выглядеть следующим образом. Следующая команда создаст tar-архив, сжатый с помощью gzip.

$ tar -cvzf <имя_файла> .tar.gz <каталог_файла в_архив>

Всего с командой tar используются четыре разных флага:

  • -c : Указывает tar создать архив
  • -v : Указывает tar работать в подробном режиме
  • -z : Указывает tar использовать сжатие gz
  • -f : Сообщает tar имя целевого файла

Чтобы создать сжатый архив bz2, используйте следующую команду.Здесь флаг -j предназначен для сжатия bz2.

$ tar -cvjf <имя_файла> .tar.bz2 <каталог_файла в_архив>

Чтобы создать сжатый архив xz, используйте следующую команду. Здесь флаг -J предназначен для сжатия xz.

$ tar -cvJf <имя_файла> .tar.xz <каталог_файла в_архив>

Используйте следующую команду для извлечения tar-архива. Флаг -x указывает tar извлечь архив.

Существует множество опций для тонкой настройки процесса архивирования / сжатия / распаковки tar. Проверьте эти параметры на странице справки tar.

17. последняя

Команда last возвращает ценную информацию об активности пользователей в системе. Эту команду могут выполнять обычные пользователи. Последняя команда сообщает такую ​​информацию, как время, дата, версия ядра, загрузка / перезагрузка системы и т. Д. Эта информация может быть особенно полезна для устранения неполадок.

Вывод последней команды может быть длинным. Можно ограничить количество строк, которые будут сообщать последними. Для этого используйте флаг -n , за которым следует количество строк, которым вы хотите ограничить поиск.

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

Чтобы опустить поле имени хоста, используйте флаг -R , который помогает упростить вывод.

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

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

18. пс

Инструмент ps — одна из самых простых команд для просмотра текущих процессов в системе. Эта команда предлагает снимок момента выполнения команды в реальном времени. Инструмент ps также предоставляет другую информацию, такую ​​как идентификатор пользователя, использование ЦП, потребление памяти, выполняемые команды и т. Д.

Ниже приводится простейший способ использования инструмента ps.

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

Если вы хотите получить более подробную информацию о процессах, используйте флаг -u или -f .

Чтобы проверить процессы, запущенные под определенным пользователем, используйте флаг -u , за которым следует имя пользователя.

Для поиска процессов по имени используйте флаг -C , за которым следует условие поиска.

Для поиска процессов по PID используйте флаг -p , за которым следуют PID.

$ ps -f -p ,

Чтобы увидеть процессы в древовидном формате, используйте флаг –forest .

Это только основы инструмента ps, который поставляется с множеством других опций.Проверьте эти параметры на странице справки ps.

19. убить

Команда kill обычно используется для завершения процессов. Внутри эта команда отправляет определенные сигналы процессу, который определяет поведение процесса. По умолчанию команда kill завершает процесс, отправляя сигнал TERM. Чтобы убить процесс, вам понадобится его PID, который можно получить с помощью команды ps.

Чтобы отправить специальный сигнал целевому процессу, используйте флаг -s , за которым следует сигнал.

Следующий логичный вопрос: какие сигналы вы можете посылать? Чтобы узнать это, проверьте список доступных сигналов. Обратите внимание, что «KILL» и «SIGKILL» — это один и тот же сигнал, но с разными метками.

Kill — это довольно простая команда, которую легко использовать. Однако, если вы все еще не знаете, что делать, загляните на страницу справки по уничтожению.

20. п.м.

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

Ниже показано, как удалить файл с помощью rm.

Чтобы удалить каталог, добавьте флаг -r , который означает рекурсивное удаление каталогов и их содержимого. Также часто этот флаг сочетается с флагом -f , который означает принудительное удаление.

При удалении я рекомендую использовать флаг -v для подробного режима.

$ rm -rfv <каталог_файла>

Чтобы увидеть все доступные параметры, посетите страницу справки rm.

21. мкдир

Команда mkdir используется для создания каталога в файловой системе. Эта команда — простой и понятный инструмент.

Чтобы создать каталог в желаемом месте, выполните следующую команду. Флаг -v означает подробный режим.

$ mkdir -v <путь_каталога>

Ознакомьтесь с другими доступными параметрами на странице помощи mkdir.

22. верх

Команда top — это мощный инструмент для мониторинга системных ресурсов и запущенных процессов в реальном времени.

Запустите инструмент, используя следующую команду.

Чтобы выйти из инструмента, нажмите q .

Вы можете фильтровать процессы по владельцу. Для этого используйте флаг -u , за которым следует имя пользователя.

Окно по умолчанию может показаться скучным и скучным. Если вам это окно кажется тусклым, вы можете оживить его, нажав z .Это действие применит упрощенную окраску к выводу, что упростит работу.

Нажмите c , чтобы увидеть абсолютный путь запущенных процессов.

Инструмент сообщает информацию в режиме реального времени. Лента обновляется только через определенные промежутки времени. По умолчанию значение интервала составляет 3 секунды. Чтобы изменить интервал по умолчанию, нажмите d и измените значение на желаемое.

Чтобы убить целевой процесс, нажмите k .

Чтобы получить быструю помощь, нажмите h .

23. бесплатно

Команда free полезна для проверки системных ресурсов, таких как физическая память и память подкачки. Этот инструмент также сообщает о буферах, используемых ядром.

Запустите инструмент, используя следующую команду.

Выходные значения будут в килобайтах (1 КБ = 1024 байта). Если вы хотите, чтобы вывод был в мегабайтовом формате, используйте флаг -m .

Чтобы получить вывод в формате гигабайта, используйте флаг -g .

Для более удобочитаемого формата используйте флаг -h .

Команды Linux — LinuxConfig.org

Введение

Кто должен прочитать это руководство

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

Что такое командная строка GNU / Linux

Скорее всего, когда вы слышите, как кто-то говорит об операционной системе GNU / Linux, вы также слышите, как они говорят о командной строке или командах Linux. Запустите эту команду и выполните ту и ту команду! Правильно?

Но почему? Почему операционная система GNU / Linux почти всегда связана с командами и командной строкой? Простой ответ заключается в том, что командная строка является неотъемлемой частью операционной системы GNU / Linux и, как таковая, предлагает пользователю возможность выполнять задачи более эффективно, с большей точностью и, что наиболее важно, с дополнительной информацией обо всем процессе выполнения.

Многие начинающие пользователи GNU / Linux связывают командную строку и команды Linux с трепетом, магическими навыками волшебника высокого уровня и ненужными накладными расходами.

Будем честны сами с собой! Неважно, какое оправдание вы могли бы иметь в своем отвращении к системе GNU / Linux и ее командной строке, причина, скорее всего, связана с отсутствием понимания и нежеланием учиться.

Поэтому не будем винить систему GNU / Linux в наших недостатках! Он здесь, чтобы помочь независимо от того, являетесь ли вы полным новичком или пользователем продвинутого уровня.Насколько система может вам помочь, не зависит от глубины вашего кошелька, как это бывает с некоторыми другими проприетарными операционными системами! Объем помощи, которую вы получите от системы GNU / Linux, зависит исключительно от вашего желания учиться и вашей решимости.

На данном этапе я уверен, что вы задаете себе вопрос: Нужны ли мне

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

Статья обновлена на 06 дек 2020

Подписаться на обновления статьи

В этой статье собраны основные команды и процедуры Linux, относящиеся к использованию вашей встроенной системы.

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

И Torizon, и эталонные образы Toradex для Yocto Project основаны на Linux. Некоторые инструкции, представленные в этой статье, будут без проблем применяться к обоим, другие могут потребовать доработки или просто не применимы к тем или другим.

Будет представлено следующее содержимое:

  • Используйте основные команды Linux touch , cp , cd , ls , mv , mkdir , rm и pwd
  • Базовое чтение / запись файла с использованием echo , cat и текстового редактора Vi
  • Поиск файла или содержимого файла с помощью file и grep
  • Получите IP-адреса и MAC-адреса вашей платы либо из UART отладки с помощью ip , либо с ПК для разработки с помощью arp-scan
  • Сжимайте и распаковывайте папки с помощью tar
  • Получите системную дату и время с помощью команд timedatectl , date и hwclock
  • Создание, запуск в фоновом режиме и завершение сценария оболочки с помощью команд chmod , ps и kill
  • Мониторинг производительности системы с помощью системного менеджера htop
  • Автоматический запуск сценария во время загрузки путем создания службы systemd
  • Измените системный пароль, используя passwd
  • Скачать файлы, используя wget

Цель этого раздела познакомить вас с основными командами Linux touch , cp , cd , ls , mv , mkdir , rm и pwd , а также некоторыми концепциями, касающимися структура каталогов.

Примечание: Если вам нужна быстрая справка по конкретной команде, используйте параметр —help , как в примере ниже:

  

<команда> --help

Выходные данные команды pwd (текущий рабочий каталог) сообщают вам полный путь к каталогу, в котором вы находитесь:

  

# pwd

/ home / root

Команда touch создает пустой файл:

  

коснитесь sample_file.txt

Используя команду pwd , вы уже знаете, что текущий каталог — / home / root . Создадим в нем два каталога с именами dir1 и dir2 :

  

mkdir dir1 dir2

Примечание: Этот шаг объясняет структуру каталогов для среды Linux. Вы можете пропустить его, если это теоретический шаг. Нажмите кнопку ниже, чтобы отобразить.

В среде Linux существует понятие абсолютного или полного пути и относительного пути.См. Следующую структуру каталогов:

Есть некоторые обозначения для описания пути к каталогу:

  • / — корневой каталог. Все абсолютные пути начинаются с /
  • / также является разделителем каталогов
  • . обозначает текущий или текущий каталог
  • .. обозначает родительский каталог относительно текущего каталога
  • ~ — это домашний каталог.Для модулей Toradex это всегда каталог / home / root .

Полный путь указывает на место в файловой системе вне зависимости от текущего каталога. На рисунке ниже представлены абсолютные пути для ранее представленной структуры каталогов:

  • Абсолютные пути

Относительный путь указывает на место в файловой системе относительно текущего пути. На рисунке ниже представлены относительные пути для ранее представленной структуры каталогов, учитывая, что / home / root — это текущий каталог:

  • Относительные пути

Изменение на недавно созданный dir1 :

  

# относительный путь

cd dir1

# абсолютный путь

cd / home / root / dir1

Вернуться в родительский каталог:

  

# относительный путь

cd..

# откуда угодно (три возможности)

cd

cd ~

cd / home / root

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

  

кд /

Вернитесь в домашний каталог, прежде чем переходить к следующему шагу.

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

  

# copy с тем же именем в dir1

cp sample_file.txt dir1

# скопировать в dir2 и переименовать файл в copy_dir2_file.txt

cp sample_file.txt ./dir1/copy_dir2_file.txt

# сделать копию в тот же каталог с именем copy_file.txt

copy_file.txt

Для копирования всего каталога и его содержимого с сохранением атрибутов файла:

  

cp -a dir1 dir1_copy

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

  

mkdir dir1_contents

cp -a dir1 /.dir1_contents

Примечание. Используйте команду ls на следующем шаге для проверки содержимого каталога.

Используйте команду ls , чтобы просмотреть содержимое каталога:

  

ls

ls / дом

ls / bin

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

  

ls -l / bin

ls -lh / bin

Команда mv может использоваться для переименования или перемещения файла / каталога:

  

коснитесь sample_file.txt

mv sample_file.txt renamed.txt

mv dir2 directory2

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

Предупреждение: Процесс необратим, поэтому будьте осторожны, чтобы не удалить что-то важное!

  

# Удалить файл

rm renamed.txt

# Удалить каталог

rm -r dir1_copy

# Спросить перед удалением

rm -ri dir1_contents

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

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

Примечание: Эта команда будет полезна для установки / настройки аппаратных функций из командной строки, хотя она ограничена для редактирования текстовых файлов.

  

# создать или перезаписать файл

echo "Hello World"> readwrite.txt

# создать или добавить в файл

echo "Hello Again" >> readwrite.txt

Используйте команду cat для чтения файла из командной строки.

  

cat readwrite.txt

# печатать номера строк, игнорируя пустые строки

cat -b readwrite.txt

cat -n readwrite.txt

Чтобы привыкнуть к основным командам Linux, вы можете поиграть в игры bashcrawl и Terminus.

Примечание. Vi, а также редактор Vim имеют множество функций и команд и известны как трудные в использовании для новичков. Поищите в Интернете, если вы хотите углубиться в изучение того, как их использовать, или взгляните на текстовый редактор nano, который может быть немного более удобным для пользователя.

Для создания или редактирования файла с помощью текстового редактора Vi:

  

vi чтение и запись

Когда вы открываете приложение, вы находитесь в обычном режиме и не можете редактировать текст. Нажмите клавишу «i», чтобы войти в режим «вставки». Затем вы можете редактировать файл по своему усмотрению.

После внесения некоторых изменений нажмите клавишу «ESC», чтобы вернуться в «нормальный» режим. В этом режиме вы можете сохранить изменения и выйти из Vi. Для этого введите следующее:

  

: wq

Это команда для записи -> выйти из .

  • Сохранить изменения и выйти из Vi

Для перехода на определенную линию:

  

#: , например:

: 4

Для поиска определенного текста:

  

# / , например

/ world

Нажмите клавишу «n», чтобы просмотреть вхождения.

  • Vi текстовый поиск

Сыграйте в браузерную игру VIM Adventures, чтобы узнать больше о Vim в увлекательной игровой форме.

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

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

  

#find -name ""

#search для определенного имени файла

find. -name "readwrite.txt"

# искать все файлы с определенным расширением

find / -name "*.txt "

# поиск всех файлов, содержащих" read "в имени, для текущего каталога

find. -name" * read * "

# поиск всех файлов, содержащих" read "в имени, для каталога пользователя

найти / home / root / -name "* read *"

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

  

# поиск файлов, содержащих строку "hello world" в текущем каталоге

grep -nre "hello world" ./*

# поиск без учета регистра с абсолютным путем

grep -nrie "hello world" / home / корень / *

В этом разделе описывается, как получить IP-адрес и MAC-адрес вашей платы, либо с самой платы, используя ip , если у вас есть отладочное последовательное соединение, либо с вашего ПК разработчика, используя arp-scan .

Убедитесь, что у вас есть работающее последовательное соединение, следуя инструкциям из раздела Настройка консоли отладки последовательного порта (Linux / U-Boot).

  # ip-адрес

или, как ярлык

# ip a
  

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

  • lo , который является интерфейсом обратной связи.
  • Проводной интерфейс.Обычно он начинается с eth или enp и может незначительно отличаться в зависимости от используемого вами дистрибутива (TorizonCore, эталонные изображения Toradex для Yocto, устаревшие изображения, такие как Angstrom-based из BSP 2.8).

В приведенном ниже примере с использованием TorizonCore интерфейс Ethernet — ethernet0 , IP-адрес — 192.168.10.44 , а MAC-адрес — 00: 14: 2d: 63: 19: 3f :

Убедитесь, что и ваша плата, и ваш компьютер подключены к одной и той же локальной сети.Сначала используйте команду ip , чтобы вывести список доступных и активных сетевых интерфейсов на вашем компьютере :

  $ ip ссылка отображается
  

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

  • lo , который является интерфейсом обратной связи.
  • Какой-то проводной или беспроводной интерфейс. Обычно он начинается с eth , enp или wlo .Из приведенного ниже примера видно, что проводной интерфейс — enp3s0f1 , а Wi-Fi — wlo1 :
  • .

После того, как вы определили один интерфейс, подключенный к той же сети, что и ваша плата, используйте arp-scan , чтобы найти IP-адрес платы:

  # sudo arp-scan --localnet --interface = <ваш интерфейс>
  

См. Пример ниже, где IP-адреса и MAC-адреса платы, найденные при сканировании LAN с интерфейса enp3s0f1 на вашем ПК, равны 192.168.10.43 и 00: 14: 2d: 63: 19: 3f соответственно:

В приведенном выше примере мы могли сканировать локальную сеть с помощью Wi-Fi wlo1 , только если бы он был подключен к той же локальной сети (обычно к тому же маршрутизатору), что и плата.

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

  

# сжатая папка и ее содержимое

tar -cjvf compressed.tar.bz2 dir1

tar -cvf compressed.tar.gz dir1

# сжимать только содержимое папки (обратите внимание, что после каталога стоит точка)

tar -cjvf compressed.tar.bz2 -C ./dir1.

tar -cvf compressed.tar.gz -C ./dir1.

базовых команд Linux с справочными страницами

Вот несколько основных команд, которые помогут вам начать работу в чудесном мире Linux и других вариантов UNIX. Все эти команды должны работать из командной строки (независимо от того, какую оболочку вы используете).Вы ДОЛЖНЫ нажать клавишу ВВОД, чтобы вызвать команду. Все команды UNIX и Linux чувствительны к регистру. Конечно, существуют тысячи команд и процедур, связанных с Linux.

Вы также можете выполнять несколько команд, разделяя их символом; например cd newdir; mkdir thatdir; ls -la сначала изменит каталоги на каталог newdir, затем создаст каталог с именем thatdir, а затем перечислит все файлы в длинном формате. Вы можете связать вместе столько команд, сколько захотите, но следует проявлять осторожность, чтобы случайно не сделать что-нибудь вредное.

Если вы считаете, что что-то нужно добавить в этот список, дайте мне знать.

доступ — определить, доступен ли файл

Синтаксис

файл режима доступа

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

псевдоним — определение или отображение псевдонимов

Синтаксис

псевдоним [псевдоним [= строка]…]

Дополнительные параметры и способы использования проверки псевдонима см. На странице руководства

bg — запускать задания в фоновом режиме

Синтаксис

bg [job_id…]

Дополнительные параметры и способы использования см. На странице руководства bg

cal — отображает календарь

Синтаксис

кал [-smjy13] [[месяц] год]

Для получения дополнительных сведений о дополнительных параметрах и использовании см. Справочную страницу

.

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

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

Синтаксис

cd [-L | -P] [каталог]

Дополнительные параметры и способы использования см. На странице руководства на компакт-диске

chown — изменить владельца файла и группу

Синтаксис

chown [ОПЦИЯ] ВЛАДЕЛЕЦ [: [ГРУППА]] ФАЙЛ

chown [ОПЦИЯ]: ФАЙЛ ГРУППЫ

chown [ОПЦИЯ] –reference = RFILE FILE

Дополнительные параметры и способы использования см. На странице руководства chown

chmod — изменить права доступа к файлам

Синтаксис

chmod [-r] perm

Базовые команды Linux | 123 Центр поддержки Reg

Что такое Unix?

UNIX — это операционная система, которая была впервые разработана в 1960-х годах и с тех пор находится в постоянном развитии.Под операционной системой мы подразумеваем набор программ, обеспечивающих работу компьютера. Это стабильная, многопользовательская, многозадачная система для серверов, настольных компьютеров и ноутбуков.

Список файлов и каталогов

ls (list) Команда ls (L в нижнем регистре и S в нижнем регистре) выводит список содержимого вашего текущего рабочего каталога. В вашем домашнем каталоге могут не быть видимых файлов, и в этом случае будет возвращено приглашение UNIX. Кроме того, некоторые файлы могут быть уже вставлены системным администратором при создании вашей учетной записи.На самом деле ls не приводит к отображению всех файлов в вашем домашнем каталоге, а только тех, чье имя не начинается с точки (.) Файлы, начинающиеся с точки (.), называются скрытыми файлами и обычно содержат важная информация о конфигурации программы. ls -a перечисляет файлы, которые обычно скрыты.

Создание каталогов

mkdir (make каталог) Теперь мы создадим подкаталог в вашем домашнем каталоге. Чтобы создать подкаталог unixstuff в вашем текущем рабочем каталоге, введите

Чтобы увидеть только что созданный каталог, введите

Переход в другой каталог

cd (изменить каталог) Команда cd directory означает изменение текущего рабочего каталога в «каталог».Текущий рабочий каталог можно рассматривать как каталог, в котором вы находитесь, то есть вашу текущую позицию в дереве файловой системы. Чтобы перейти в только что созданный каталог, введите

Введите ls, чтобы увидеть содержимое (которое должно быть пустым). . (Текущий каталог) В UNIX (.) Означает текущий каталог, поэтому ввод

означает оставаться на месте (каталог unixstuff). Сначала это может показаться не очень полезным, но использование (.) В качестве имени текущего каталога сэкономит много времени при вводе. .. (Текущий каталог) (..) означает родительский элемент текущего каталога, поэтому ввод

перенесет вас на один каталог вверх по иерархии.

Обратите внимание: Ввод cd без аргументов всегда возвращает вас в ваш домашний каталог. Это очень полезно, если вы потерялись в файловой системе.

Пути

pwd (рабочий каталог печати) Пути позволяют вам определить, где вы находитесь по отношению ко всей файловой системе.Например, чтобы узнать абсолютный путь к своему домашнему каталогу, введите cd , чтобы вернуться в домашний каталог, а затем введите

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

cp (copy) Команда cp сделает копию файл в текущем рабочем каталоге, чтобы сделать копию файла file1 и называть его file2 введите

Перемещение файлов

mv (перемещение) Чтобы переместить файл из одного места в другое, используйте команду mv. Это приводит к перемещению, а не к копированию файла, так что в итоге вы получаете только один файл, а не два.Его также можно использовать для переименования файла, переместив его в тот же каталог, но присвоив ему другое имя. Чтобы переместить (или переименовать) файл1 в файл2 введите

Удаление файлов и каталогов

rm (удалить), rmdir (удалить каталог) Чтобы удалить (удалить) файл, используйте команду rm . Чтобы удалить file1, введите

# rm file1

Вы можете использовать команду rmdir для удаления каталога (сначала убедитесь, что он пуст). Вы не сможете этого сделать, поскольку UNIX не позволит вам удалить непустой каталог.

Отображение содержимого файла на экране

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

. Это очистит весь текст и оставит вас с приглашением% в верхней части окна. cat (объединение) Команда cat может использоваться для отображения содержимого файла на экране.

Оставить комментарий

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

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