Linux превращается из невежественного в игривого

Linux
Linux превращается из невежественного в игривого

Это будет не банально.

Чтобы изучить Linux, вы должны сначала иметь среду Linux. Здесь мы используем виртуальную машину (рекомендуется VirtualBox, это бесплатно) для запуска CentOS.

Обратитесь к конкретным шагам установки:Установите CentOS7 с VirtualBox.

После завершения установки, как показано ниже:

CentOS 7

Я использую здесь не VirtualBox, а Parallels. Как и VirtualBox, это отличная виртуальная машина. Разница в том, что Parallels работает только на MacOS и не является бесплатным.

Это графический интерфейс, доступ к которому можно получить с помощью горячих клавиш.Ctrl + Alt + F2Переключитесь на полный интерфейс командной строки:

ФактическиF2-F6можно переключать.

命令行界面

Введите имя пользователя, нажмите Enter и введите пароль для входа в систему.

Вернуться к использованию графического интерфейсаCtrl + Alt + F1.

В некоторых системах может потребоваться одновременное нажатиеfnдля запускаF1,F2функциональные клавиши.

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

date

dateКоманда используется для печати текущего времени.

[qe@centos-7 ~]$ date
2020年 02月 22日 星期六 10:41:47 CST

В этой команде[qe@centos-7 ~]$это командная строка. вqeпредставляет текущее имя пользователя,centos-7представляет имя хоста,~Представляет текущий каталог.

~это специальный каталог, представляющий домашний каталог текущего пользователя. Итак, здесь это означает, что текущий каталогqeДомашний каталог пользователя.


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

ls

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

[parallels@centos-7 ~]$ ls
Desktop    Downloads   Music     Public     Videos
Documents  fontconfig  Pictures  Templates

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

[parallels@centos-7 ~]$ ls -a
.              .bashrc  Documents      .local      .pki
..             .cache   Downloads      .mozilla    Public
.bash_history  .config  .esd_auth      Music       Templates
.bash_logout   .dbus    fontconfig     .parallels  Videos
.bash_profile  Desktop  .ICEauthority  Pictures    .viminfo

в-aЭто означает все, что означает все файлы и каталоги, включая скрытые файлы и каталоги. Префикс имени файла в Linux.Указывает скрытое.

Обратите внимание, что в Linux это чувствительно к регистру.

другой примерls -lУказывает на список деталей.

Также можно комбинировать несколько коротких параметров, напримерls -la:

ls -la

--Представляет длинный параметр. Напримерls --all,такой жеls -aТот же эффект.

Практические советы

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

2. использоватьhistoryкоманда для просмотра всех выполненных команд.

history

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

[parallels@centos-7 ~]$ !6
ls
Desktop    Downloads   Music     Public     Videos
Documents  fontconfig  Pictures  Templates

3. горячая клавишаCtrl + aперейти к началу текущей строки,Ctrl + eПерейти в конец текущей строки.

организация каталогов

目录

Linux имеет корневой каталог/, Это каталог верхнего уровня. Прямой подкаталог корневого каталога, как показано на фиг. В отличие от систем Windows, в Linux не концепция диска C диска D, а использование Linux/как разделитель пути, например:/home/parallels/Desktop.

pwd

pwdИспользуется для печати текущего каталога.

[parallels@centos-7 Desktop]$ pwd
/home/parallels/Desktop

which

whichИспользуется для печати местоположения команды.

[parallels@centos-7 ~]$ which pwd
/usr/bin/pwd

ls

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

ls -l

На приведенном выше рисунке единицей размера файла являются байты, вы можете использоватьls -lhKB,MB,GBотображается в единицах.

ls -ltСортировать по времени последнего изменения.

cd

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

[parallels@centos-7 ~]$ cd /

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

[parallels@centos-7 ~]$ cd ..

du

duАббревиатура использования диска, показывающая размер файлов, содержащихся в каталоге, единица измерения по умолчанию — байты. использоватьdu -hМогуKB,MB,GBотображается в единицах.

duПо умолчанию отображается только размер каталога, используйтеdu -aРазмер каталогов и файлов может отображаться.du -sОтображается только общий размер.

Файл действия

Операции с файлами в основном включают просмотр файлов и создание файлов.

catа такжеless

catа такжеlessИспользуется для отображения содержимого файла.catМожно отобразить все содержимое файла сразу:

[parallels@centos-7 log]$ cat Xorg.0.log

можно использоватьcat -n filenameПоказать номера строк.

lessСодержимое файла можно отобразить в разбивке на страницы.

[parallels@centos-7 log]$ less Xorg.0.log

lessКоманда может отображать содержимое страницы, используйте回车键Чтобы увидеть следующую строку, используйте空格键Чтобы увидеть следующую страницу, используйтеb 键Чтобы увидеть предыдущую страницу, используйтеy 键вернуться на одну строку,q 键покидать.

headа такжеtail

headа такжеtailИспользуется для отображения начала и конца файла. По умолчанию отображается 10 строк. можно использоватьtail -nУказывает количество отображаемых строк.

[parallels@centos-7 log]$ head Xorg.0.log
......
[parallels@centos-7 log]$ tail -n 5 Xorg.0.log
......

touchа такжеmkdir

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

[parallels@centos-7 Desktop]$ touch test.txt
[parallels@centos-7 Desktop]$ mkdir test

mkdir -pКаталоги могут создаваться рекурсивно.

[parallels@centos-7 Desktop]$ mkdir -p test1/test2/test3

cpа такжеmv

cpЭто копия COPY для копирования файлов или каталогов.

[parallels@centos-7 Desktop]$ cp test.txt test_copy.txt

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

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

[parallels@centos-7 Desktop]$ mv test.txt test1/

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

[parallels@centos-7 Desktop]$ mv test_copy.txt test.txt

rm

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

[parallels@centos-7 Desktop]$ rm test.txt

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

[parallels@centos-7 Desktop]$ rm -r test.txt

rm -fбудет вынужден удалить.

Связь

Давайте объясним ссылки в Linux.

В Linux имена файлов и их содержимое хранятся не вместе, а отдельно.

文件存储

жесткая ссылка

Жесткая ссылка приводит к тому, что два имени файла указывают на один и тот же фрагмент содержимого файла. Изменить файл1 эквивалентно изменению файла2.

硬链接

Как создать жесткую ссылку:

[parallels@centos-7 Desktop]$ ln test.txt test_hard.txt

Стоит отметить, что при удалении файла удаляется именно имя файла. поэтому удалитьtest_hard.txtНе удаляетtest.txt.

Жесткие ссылки используются мало.

мягкая ссылка

Мягкие ссылки эквивалентны ярлыкам в Windows.

Как показано на рисунке ниже, если вы удалите файл2, это не повлияет на файл1, но если вы удалите файл1, то файл2 станет «мертвой ссылкой».

软链接

Метод создания мягкой ссылки следующий:

[parallels@centos-7 Desktop]$ ln test.txt test_soft.txt

разрешение

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

用户组织

Обычные пользователи могут использоватьsuпереключиться наroot.

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

Пользователь

использовать толькоrootидентификационные данные для создания пользователя.

useraddМожно добавлять новых пользователей. существует/homeНовый каталог будет создан в каталогеtom,представлятьtomДомашний каталог пользователя.

[root@centos-7 Desktop]# useradd tom
[root@centos-7 Desktop]# ls /home/
parallels  tom

passwdПароль пользователя может быть изменен.

[root@centos-7 Desktop]# passwd tom
更改用户 tom 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

userdelИспользуется для удаления пользователей.

[root@centos-7 Desktop]# userdel -r tom

-rпараметры сделаютtomДомашний каталог удаляется вместе.

группа

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

Создайте группы для использованияgroupaddЗаказ.

[root@centos-7 ~]# groupadd friends

использоватьusermod -gКоманды могут изменять группу пользователя.

[root@centos-7 ~]# usermod -g friends tom

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

[root@centos-7 ~]# groups tom
tom : friends

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

[root@centos-7 ~]# usermod -G friends,family tom
[root@centos-7 ~]# groups tom
tom : family friends

использоватьusermod -aGКоманда может добавить группу пользователю.

[root@centos-7 ~]# usermod -aG lover tom
[root@centos-7 ~]# groups tom
tom : family friends lover

использоватьgroupdelУдалить группу.

[root@centos-7 ~]# groupdel lover
[root@centos-7 ~]# groups tom
tom : family friends

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

chownЭто аббревиатура от смены владельца, которая используется для смены владельца файла и требует для запуска root.

[root@centos-7 ~]# chown tom test.txt

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

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

[root@centos-7 ~]# chgrp friends test.txt

разрешение на редактирование

Я сказал раньше,ls -lПодробности файла перечислены, включая разрешения.

权限

первая буква в началеdУказывает, что это каталог. соответствующийlуказывает ссылку,-Представляет файл.

Назадrуказывает, что его можно прочитать,wозначает, что вы можете написать,xуказывает, что он может быть выполнен,-Указывает на отсутствие соответствующего разрешения.

Каждая тройка объединяется, указывая владельца, пользователя группы и разрешения других пользователей на файл (или каталог).

权限

Linux определяет номер для каждого разрешения.

权限

Таким образом, назначение разрешений на чтение и запись равно 4 + 2 = 6, поэтому 6 означает разрешения на чтение и запись.

权限

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

[root@centos-7 Desktop]# chmod 755 test.txt

Приведенная выше команда означает, что владелецrwxРазрешения, принадлежащие пользователям группы, к которой они принадлежатr-xразрешения, принадлежащие другим пользователямr-xразрешения.

использоватьchmod -RРазрешения могут быть изменены рекурсивно.

репозиторий программного обеспечения

В CentOS yum обычно используется для управления пакетами.

О yum см.линукс ням команда.

найти

locate

locateДля быстрого поиска.

[root@centos-7 Desktop]# locate test.txt
/home/parallels/Desktop/test.txt
/home/parallels/Desktop/test1/test.txt

Только что созданный файл не будетlocateОн записан и может быть использованupdatedbОбновите базу данных:

[root@centos-7 Desktop]# updatedb

find

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

Формат:

find

Среди них второй параметр «цель поиска» является обязательным параметром.

Такие как:

[root@centos-7 Desktop]# find /home -name test.txt
/home/parallels/Desktop/test1/test.txt
/home/parallels/Desktop/test.txt

Подробнее об использовании find см.:

Подробное объяснение команды поиска Linux

Команда поиска Linux: найти файлы в каталоге (очень подробно).

grep

grepСокращение для глобального поиска регулярного выражения и печати.

grepОсновное использование:

grep

Такие как:

[root@centos-7 Desktop]# grep path /etc/profile
pathmunge () {
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
unset -f pathmunge 

Вышеупомянутая команда будет в/etc/profileнайти в файлеpath. использовать-iПараметры нечувствительны к регистру,-nПараметр будет отображать номер строки,-vПараметр будет отображать строку, где текст отсутствует,-rПараметры перебираются рекурсивно.

использовать-EАргументы используют регулярные выражения:

[root@centos-7 Desktop]# grep -E ^[Pp]ath /etc/profile
pathmunge () {

sort

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

[root@centos-7 Desktop]# cat test.txt 
Tom
jack
jemmy
Marry
Lucky
smith
[root@centos-7 Desktop]# sort test.txt 
jack
jemmy
Lucky
Marry
smith
Tom

sortКоманда фактически не изменяет содержимое файла. доступный-oЗапишите отсортированное содержимое в новый файл.

[root@centos-7 Desktop]# sort -o test_sorted.txt test.txt 
[root@centos-7 Desktop]# cat test_sorted.txt 
jack
jemmy
Lucky
Marry
smith
Tom

-rПараметры сортируются в обратном порядке,-RСлучайная последовательность,-nИспользуется для сортировки номеров.

wc

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

[root@centos-7 Desktop]# wc test.txt 
 6  6 33 test.txt

wc

uniq

uniqИспользуется для удаления дублирующегося содержимого файлов.

[root@centos-7 Desktop]# cat repeat.txt 
Tom
Tom
Jack
Tom
Jack
Smith
[root@centos-7 Desktop]# uniq repeat.txt 
Tom
Jack
Tom
Jack
Smith

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

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

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

[root@centos-7 Desktop]# ls / > test.txt 

>>Также возможно перенаправить вывод команды в файл, но>>будет добавлен в конец файла.

трубопровод

Pipes может принимать вывод одной команды как ввод другой команды.

[root@centos-7 Desktop]# ls | sort
Parallels Shared Folders
repeat.txt
test1
test_sorted.txt
test.txt

Приведенная выше команда будетlsвывод, какsortввод.

обработать

psа такжеtop

psа такжеtopСписок запущенных процессов.

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

topПроцессы, перечисленные командой, изменяются динамически.

killКоманды используются для завершения процесса.

[root@centos-7 Desktop]# kill 671

где 671 — номер процесса.

haltдля выключения,rebootИспользуется для перезапуска.

&

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

[parallels@centos-7 Desktop]$ ls &
[1] 4175

nohup

[root@centos-7 Desktop]# nohup ls
nohup: 忽略输入并把输出追加到"nohup.out"

Ctrl + zПриостановите процесс в фоновом режиме.bgКоманда перезапустит его в фоновом режиме.fgкоманда для запуска фонового процесса на передний план.

компрессия

Сначала объясните концепцию упаковки и сжатия.

Упаковка - это архив нескольких файлов в одном файле, сжатие большого файла сжимается в небольшой файл.

В Linux сначала используйтеtarУпакуйте несколько файлов в один файл, затем используйтеgzipилиbzip2Сжать упакованный файл.

打包压缩

tar -cvfПакет:

[root@centos-7 Desktop]# tar -cvf archive.tar test_copy.txt test.txt
test_copy.txt
test.txt

Также можно упаковать каталог:

[root@centos-7 Desktop]# tar -cvf test_archive.tar test1
test1/
test1/test2/
test1/test2/test3/
test1/test.txt

Разархивируйте архив:

[root@centos-7 Desktop]# tar -xvf archive.tar 
test_copy.txt
test.txt

gzipсжатие:

[root@centos-7 Desktop]# gzip archive.tar 

gunzipразархивировать:

[root@centos-7 Desktop]# gunzip archive.tar.gz

(Продолжение следует...)