Интерфейсная команда Linux

внешний интерфейс Linux Shell
Интерфейсная команда Linux

предисловие

После перевода официальных документов TypeScript я использовал VuePress для создания блога и реализовал автоматическое развертывание GitHub и Gitee Pages, но в конце концов решил создать свой собственный веб-сайт.В процессе создания веб-сайта необходимо использовать команды Linux, Итак, в этой статье написана достаточно простая команда Linux, которая будет охватывать различные команды, используемые в статьях из серии статей о создании блогов, что удобно для запросов и обучения.

0. Владелец, Группа, Другие, Корень

Система Linux — это многопользовательская система, которая разделяет идентификаторы посетителей файлов на три типа:

Владелец файла (владелец)

При создании пользователя, когда Linux создает домашний каталог для пользователя, путь/home/<username>, мы можем использоватьcd ~для быстрого входа в домашний каталог. Если вы хотите поместить личный файл, вы можете поместить его в свой домашний каталог, а затем настроить его для просмотра только вами.

Группа

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

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

Другие

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

Суперпользователь (рут)

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

1. adduser для добавления пользователя и passwd для смены пароля

# 添加一个名为 git 的用户
adduser git
# 设置 git 用户的密码
passwd git

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

# 会打开 sudoers 配置文件
sudo visudo

Обратите внимание, что это же редактированиеsudoersфайл конфигурации, использование этой команды более эффективно, чем использованиеsudo vim /etc/ sudoersБолее безопасный, помимо проверки синтаксиса, а также блокирует файлы при многопользовательском редактировании.

ОткрытымsudoersПосле файла конфигурации мы добавляем эту строку конфигурации:

# Allow git to run any commands anywhere
git ALL=(ALL:ALL) ALL 

Кратко поясните это предложениеgit ALL=(ALL:ALL) ALL :

  • git указывает имя пользователя, к которому применяется правило
  • ПервыйALLУказывает, что правило применяется ко всем хостам
  • секундаALLУказывает, что правило применяется ко всем пользователям
  • ТретийALLУказывает, что правило применяется ко всем группам
  • четвертыйALLУказывает, что правило применяется ко всем командам

После сохранения и выхода,gitПользователь получит root-права.

2. ls выводит список файлов и каталогов

  1. lsСписок файлов и каталогов
[root@iZ2ze learn-typescript.git]# ls
branches  config  description  HEAD  hooks  index  info  objects  refs
  1. ls -laЗависит от-aпоказать все файлы и каталоги (включая скрытые) и-lПоказать подробный состав списка:
[root@iZ2ze learn-typescript.git]# ls -la
总用量 20
drwxrwxr-x  7 git git  132 12月 15 12:33 .
drwx------  3 git git  127 12月 15 14:51 ..
drwxrwxr-x  2 git git    6 12月 15 12:21 branches
-rw-rw-r--  1 git git   66 12月 15 12:21 config
-rw-rw-r--  1 git git   73 12月 15 12:21 description
-rw-rw-r--  1 git git   23 12月 15 12:21 HEAD
drwxrwxr-x  2 git git 4096 12月 15 13:10 hooks
-rw-rw-r--  1 git git  217 12月 15 12:33 index
drwxrwxr-x  2 git git   21 12月 15 12:21 info
drwxrwxr-x 10 git git   90 12月 15 12:33 objects
drwxrwxr-x  4 git git   31 12月 15 12:21 refs

Каждая строка имеет 7 столбцов, мы начинаем сbranchesПример, объясняющий значение каждого столбца:

drwxrwxr-x 2 git git 6 15 декабря 12:21 branches
Информация о типе файла и разрешениях Количество ссылок или количество подкаталогов первого уровня владелец группа размер файла, в байтах Последнее изменение имя файла

Сосредоточьтесь на содержании столбца 1, чтобыdrwxrwxr-xНапример, здесь всего 10 цифр, и первая цифра представляет тип файла, где-представляет собой обычный файл,dПредставляет файл каталога.

Биты со 2 по 4 представляют права владельца, гдеrУказывает разрешение на чтение,wУказывает разрешение на запись,xУказывает исполняемое разрешение,-Указывает на отсутствие разрешения, цифры со 2-й по 5-юrwx, что означает, что владелец доступен для чтения, записи и выполнения.

Цифры с 5-й по 7-ю представляют права группового пользователя, которые также здесьrwx.

Цифры с 8-й по 10-ю представляют другие права пользователя, вотr-x, что указывает на то, что у него есть права на чтение и выполнение, но нет прав на запись.

Вот еще что нужно добавить:

рисунокrootРазрешения по умолчанию для пользователей на создание папок:rwxr-xr-x:

[root@iZ2ze www]# mkdir test
[root@iZ2ze www]# ls -l

drwxr-xr-x  2 root root  6 12月 17 23:53 test

И разрешения по умолчанию для создания файловrw-r--r--, обратите внимание, что создание файла будет удалено по умолчаниюxРазрешения:

[root@iZ2ze www]# touch index.html
[root@iZ2ze www]# ls -l

-rw-r--r--  1 root root  0 12月 17 23:54 index.html

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

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

chown (change owner)грамматика:

# -R:递归更改文件属组
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

будетindex.htmlвладелец изменился наgit:

[root@iZ2ze www]# chown git index.html
[root@iZ2ze www]# ls -

-rw-r--r-- 1 git  root  0 12月 17 23:54 index.html

будетindex.htmlвладелец и группа изменены наgit:

[root@iZ2ze www]# chown git:git index.html
[root@iZ2ze www]# ls -l

-rw-r--r-- 1 git  git   0 12月 17 23:54 index.html

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

Разрешения в дополнение кr w xТаким образом, это также может быть представлено числами.Соответствие между числами и буквами:

  • r:4
  • w:2
  • x:1

Все такие соответствия в основном для удобства вывода.Например, если мы хотим, чтобы файл был доступен для чтения и записи, мы можем легко установить разрешение 6 (4 + 2).Точно так же, если мы знаем, что разрешение равно 3, мы также можем. Разрешения выводятся как доступные для записи и выполнения, потому что только 2 + 1 может равняться 3.​

Посмотримchmod (изменить режим)Конкретный синтаксис:

# -R:递归更改文件属组
chmod [-R] xyz 文件或目录

Где xyz представляют разрешения владельца, группы и других соответственно, если мы устанавливаем разрешения для файла следующим образом:

chmod 750 index.html

Мы можем знать, что разрешение Владельца равно 7, которое доступно для чтения, записи и выполнения, разрешение Группы равно 5, которое доступно для чтения и выполнения, а разрешение Других равно 0, что указывает на то, что оно не может быть прочитано, записано или выполнено. Соответствующие буквы:rwxr-x---.

В дополнение к этому числовому способу есть также способ изменить разрешения с помощью типов символов:

Таким образом, мы объединяем три тождестваOwner,Group,Others, сокращенноu(User),g,o,использоватьaУкажите все тождества, затем используйте+ - =Указывает на добавление, удаление, установку разрешения,r w xЗатем продолжайте указывать разрешения на чтение, запись и выполнение, например:

chmod u+x,g-x,o-x index.html

это значитOwnerплюс разрешение на выполнение,GroupиOthersУдалить разрешение на выполнение.

Конечно, мы также можем установить разрешения напрямую.

chmod u=rwx,g=rx,o=r index.html

На данный момент права доступа к файлу эквивалентны-rwxr-xr--.

Кроме того, мы также можем опустить не писатьugoaДля этого типа идентификационного контента напишите напрямую:

chmod +x index.html

Это эквивалентно использованиюa, что добавит разрешения на выполнение для всех удостоверений.

5. Су переключатель личности

# 切换为 git 用户
su git

6. whoami отображает имя пользователя

# whoami 
root

7. pwd показать текущий каталог

[git@iZ2ze www]$ pwd
/home/www

9. Справочник коммутации CD

# 进入 /home/www/
cd /home/www

# 进入自己的主目录
cd ~

# 进入当前目录的上上两层 :
cd ../..

10. mkdir создать каталог

  1. mkdirСоздайте каталог:
mkdir new_folder
  1. mkdir -pСоздавать каталоги рекурсивно:
mkdir -p one/two/three

11. коснитесь, чтобы создать файл

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

touch new_file

12. эхо-распечатка

echo — это команда оболочки, которая выводит вывод:

# 显示转义字符
echo "\"test content\""

Создайте или перезапишите содержимое файла как «тестовое содержимое»:

echo "test content" > index.html

Если вы хотите добавить контент, используйте>>:

[root@iZ2ze www]# echo "test content" > index.html
[root@iZ2ze www]# cat index.html
test content
[root@iZ2ze www]# echo "test content" >> index.html
[root@iZ2ze www]# cat index.html
test content
test content

13. cat объединить файлы и распечатать вывод

Посмотреть содержимое файла:

cat ~/.ssh/id_rsa.pub

Пустое содержимое index.html:

cat /dev/null > index.html

Запишите содержимое index.html в second.html:

cat index.html > second.html

Добавьте содержимое index.html в файл second.html:

cat index.html >> second.html

Добавьте index.html и second.html к третьему.html:

cat index.html second.html >> third.html

14. cp скопировать файл или каталог

Скопируйте все файлы в каталоге website/ в новый статический каталог:

# -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
cp –r website/ static

15. mv переместить и переименовать

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

mv index.html index2.html

Скрытые файлы:

# 文件名上加上 .
mv index.html .index.html

Переместить файлы:

# 仅仅移动
mv  /home/www/index.html   /home/static/
# 移动又重命名
mv /home/www/index.html   /home/static/index2.html

Массовое перемещение:

mv  /home/www/website/*  /home/www/static

16. rm удалить файл или каталог

# 系统会询问
rm file

# -f 表示直接删除
# -r 表示目录下的所有文件删除

# 删除当前目录下的所有文件及目录
rm -r  * 

# 跑路
rm -rf /*

17. vi/vim

В Linux есть встроенный текстовый редактор vi, а Vim — текстовый редактор, разработанный на основе vi.

В основном vi/vim делится на три режима, а именноКомандный режим,Режим вставкиРежим последней строки. Мы вводим эти три режима, когда мы работаем: ​ мы выступаемvim index.html, если файл не существует, файл будет создан:

vim index.html

Теперь интерфейс:

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

  • i Переключитесь в режим ввода.
  • x удаляет символ в текущей позиции курсора.
  • : Переключиться в командный режим нижней строки.

мы нажимаемi, войдетрежим ввода:

В режиме ввода левый нижний угол имеет-- INSERT --Флаги:

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

В этот момент ВСТАВКА в левом нижнем углу исчезла.Если мы хотим сохранить и выйти, мы сначала вводим:,ВходитьПрактический командный режим:

В командном режиме нижней строки распространенными командами являются:

  • ж сохранить файл
  • q выйти из программы

мы входимwq, что означает сохранить и выйти, после чего мы найдем и создадим файл HTML.

18. инструмент удаленного подключения ssh

Обратите внимание, что прослушиватель ssh находится на порту 22.

Его основной синтаксис:

ssh [OPTIONS] [-p PORT] [USER@]HOSTNAME [COMMAND]

Пример порта прослушивания:

ssh -p 300 git@8.8.8.8

Включите режим отладки:

# -v 冗详模式,打印关于运行情况的调试信息
ssh -v git@8.8.8.8

серия статей

Адрес каталога статей серии:GitHub.com/ в настоящее время имеет бриз…

WeChat: «mqyqingfeng», добавьте меня в единственную читательскую аудиторию Xianyu.

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