大数据学习教程:Linux 高级教程(上)

news2024/11/19 1:29:38

一、Linux用户与权限

1. 用户和权限的基本概念

1.1、基本概念

用户 是Linux系统工作中重要的一环, 用户管理包括 用户 与 组

管理 在Linux系统中, 不论是由本级或是远程登录系统, 每个系统都必须拥有一个账号, 并且对于不同的系统资源拥有不同的使用权限

对 文件 / 目录 的权限包括:

权限

英文

缩写

数字序号

read

r

4

write

w

2

执行

execute

x

1

无权限

-

0

在 Linux中 ,可以指定 每一个用户 针对 不同的文件或者目录 的 不同权限

图片

1.2、组

为了方便用户管理, 提出了 组 的概念, 如下图所示

图片

1.3、ls -l扩展

图片

ls -l 可以查看文件夹下文件的详细信息, 从左到右 依次是:

权限, 第一个字符如果是 d 表示目录

硬链接数, 通俗的讲就是有多少种方式, 可以访问当前目录和文件

拥有者, 家目录下 文件 / 木兰路 的拥有者通常都是 当前用户

组, 在linux中, 很多时候, 会出现组名 和 用户名 相同的情况, 后续会讲

大小

时间

名称

图片

图片

2. 终端命令:组管理

本质: 给 同一类型用户 分配权限

命令

作用

groupadd 组名

添加组

groupdel 组名

删除组

cat /etc/group

确认组信息

chgrp 组名 文件/目录名

修改文件/目录的所属组 —R递归

提示:

  • 组信息保存在 /etc/group 文件中

我们以root:x:0:root,linuxsir 为例:用户组root,x是密码段,表示没有设置密码,GID是0,root用户组下包括root、linuxsir以及GID为0的其它用户。

在实际应用中, 可以预先针对 组 设置好权限, 然后 将不同的用户添加到对应的组中, 从而不用依次为每一个用户设置权限

演练目标:

1、在 指定目录下 创建 aaa 目录

2、新建 dev 组

3、将 aaa 目录的组修改为 dev chgrp dev aaa

3. 终端命令:用户管理

3.1 创建用户 、 设置密码 、删除用户

命令

作用

说明

useradd -m -g 组 新建用户名

添加新用户

-m 自动建立用户家目录

-g 指定用户所在的组, 否则会建立一个和同名的组

passwd 用户名

设置用户密码

如果是普通用户, 直接用 passwd可以修改自己的账号密码

userdel -r 用户名

删除用户

-r 选项会自动删除用户家目录

cat /etc/passwd | grep 用户名

确认用户信息

新建用户后,用户信息会保存在 /etc/passwd文件夹中

提示:

  • 创建用户时, 默认会创建一个和用户名同名的组名

  • 用户信息保存在 /etc/passwd 文件中

/etc/passwd 文件存放的是用户的信息, 由6个分好组成的7个信息, 分别是

图片

  1. 用户名

  2. 密码 (x, 表示加密的密码)

  3. UID (用户标志)

  4. GID(组标志)

  5. 用户全名或本地账号

  6. 家目录

  7. 登录使用的Shell, 就是登录之后, 使用的终端命令

3.2 查看用户信息

命令

作用

id [用户名]

查看用户UID 和 GID 信息

who

查看当前所有登录的用户列表

whoami

查看当前登录用户的账户名

3.3 su切换用户

图片

  • 因为 普通用户 不能使用某些权限, 所以需要 切换用户

图片

  • su 不接用户名, 可以切换到 root , 但是不推荐使用, 因为不安全

  • exit 示意图如下:

图片

3.4 sudo

  • 虽然 通过 su -u root 可以切换到 root用户, 但是 存在严重的 安全隐患

  • linux系统中的 root 账号通常 用于系统的维护和管理, 对操作系统的所有资源 具有访问权限

  • 如果不小心使用 rm -rf ... ... , 就可能将系统搞瘫痪

  • 在大多数版本的linux中, 都不推荐 直接只用 root 账号登录系统

  • sudo 命令用来以其他身份来执行命令, 预设的身份为 root

  • 用户使用 sudo 时, 必须先输入密码, 之后5分钟的有效期限, 超过期限则必须重新输入密码

提示: 若其未经授权的用户企图使用 sudo, 则会发出警告邮件给管理员

3.4.1 给 指定用户 授予 权限

  • 本质: 通知 服务器 给 特定用户 分配 临时管理员权限

visudo

 
 

# 默认存在: root用户 具备所有的权限
root ALL=(ALL) ALL
# 授予 zhangsan 用户 所有的权限
zhangsan ALL=(ALL) ALL

3.4.2 使用 用户 zhangsan 登录, 操作管理员命令

  • 本质: 使用临时管理员权限

 
 

# 不切换root用户, 也可以完成 添加用户的功能
sudo useradd -m -g dev zhaoliu

4. 修改用户权限

命令

作用

chmod

修改权限

准备工作: 使用root用户操作

 
 

# 清空目录中的内容
rm -rf /root/test_tar/*
# 创建测试目录
mkdir -p /root/test_tar/aaa/
# 创建测试文件
touch /root/test_tar/aaa/01.txt /root/test_tar/aaa/02.txt
# 查看指定目录内容
tree /root/test_tar

4.1 方式一

  • chmod 可以修改 用户/组 对 文件/目录 的权限

  • 命令格式如下:

 
 

chmod +/- rwx 文件名|目录名 #+表示新增权限 #-表示删除权限

提示: 已上方式会一次向修改 拥有者 / 组权限

目标演练:

 
 

# 1. 使用 root 删除目录的可读 可写 可执行权限
chmod a-rwx aaa/
# 2. 使用 其他用户如 zhangsan 无法切换到 这个目录
# 3. 使用 root 增加目录的执行权限, 再次 使用 zhangsan 切换到目录试试

4.2 方式二

  • 虽然 方式一 直接修改文件|目录的 读|写|执行 权限, 但是不能精确到 拥有者|组|其他 权限

  • 命令格式如下:( u 表示所属用户 / g 表示所属组 / o 表示其他)

 
 

chmod -R u=rwx,g=rx,o=rwx 文件|目录

序号

权限

英文

缩写

数字序号

01

read

r

4

02

write

w

2

03

执行

execute

x

1

04

无权限

-

0

4.3 方式三

  • 第一个数字 是 拥有者权限, 第二个数字 是 组权限, 第三个数字 是 其他用户权限

二、Linux系统信息

本节内容主要是为了方便通过远程终端维护服务器时, 查看服务器上当前 系统日期和时间 / 磁盘空间占用情况 /程序执行情况

本小结学习终端命令都是查询命令, 通过这些命令对系统资源的使用情况有个了解

1. 时间和日期

1.1. date时间

命令

作用

date

查看系统时间(默认)

date +"%Y-%m-%d %H:%M:%S"

查看系统时间(指定格式)

date -s "时间字符串"

设置系统时间

第一步: 显示当前时间

 
 

# 显示时间
date
# 按照指定格式显示时间
date +"%Y-%m-%d %H:%M:%S"

第二步:设置系统时间

 
 

date -s "时间字符串"

1.2. cal日历

命令

作用

cal

查看当前月的日历

cal -y

查看当前年的日历

cal 2020

查看2020年的日历

cal 10 2020

查看2020年10月的日历

2. 磁盘、内存信息

命令

作用

df -h

disk free 显示磁盘剩余空间

du -h [目录名]

disk usage 显示目录下的目录大小

free -h

显示内存使用情况

选项说明

参数

含义

-h

以人性化的方式显示文件的大小(把字节换算为相应的kb/mb/gb)

3. 进程信息

命令

作用

ps aux

process status 查看进程的详细情况

top

动态显示运行中进程并且排序

kill [-9] 进程代号

终止指定代号的进程 -9 表示强行终止

ps 默认只会显示当前用户通过终端启动的应用程序

Linux下显示系统进程的命令ps,最常用的有ps -ef 和ps aux。这两个到底有什么区别呢?两者没太大差别,讨论这个问题,要追溯到Unix系统中的两种风格,System V风格和BSD 风格,ps aux最初用到Unix Style中,而ps -ef被用在System V Style中,两者输出略有不同。现在的大部分Linux系统都是可以同时使用这两种方式的。

ps 选项说明功能

选项

含义

a

显示终端上的所有进程,包括其他用户的进程

u

显示进程的详细状态

x

显示没有控制终端的进程

提示: 使用kill命令时, 最好只终止由当前用户开启的进程, 而不要终止root身份开启的进程, 否则可能导致系统崩溃

要退出 top 可以直接输入 q

三、Linux软件安装

1.  rpm软件包管理器

rpm(英文全拼:redhat package manager) 原本是 Red Hat Linux 发行版专门用来管理 Linux 各项软件包的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让Linux易于安装升级,间接提升了 Linux的适用度。

命令格式:rpm -参数  软件包名  

参数

英文

含义

-q

query

使用询问模式,当遇到任何问题时,rpm指令会先询问用户。

-a

all

查询所有软件包

-i

info

显示软件包的概要信息

-l

list

显示软件包中的文件列表

-f

file

文件,显示文件对应rpm包(查找文件所属的rpm包)

示例1:查询已安装的rpm列表,通常通过管道命令配合grep进行查找

 
 

rpm -qa | grep tree

图片

示例2:查询软件包信息

 
 

rpm -qi 软件包名称

图片

示例3:显示软件包中的文件列表 rpm -ql 软件包名称

图片

示例4:查看指定文件归属于哪个软件包 rpm -qf  文件绝对路径

图片

1.1. rpm包的卸载

rpm卸载命令:

命令

英文

含义

rpm -e  软件包名称

erase清除

卸载rpm软件包

rpm -e  --nodeps  软件包名称

don’t check dependencies

卸载前跳过依赖检查

图片

示例:卸载tree

[root@itheima ~]# rpm -qa | grep tree
tree-1.5.3-3.el6.x86_64
[root@itheima ~]# rpm -e --nodeps tree-1.5.3-3.el6.x86_64
[root@itheima ~]#
[root@itheima ~]# tree /home
-bash: /usr/bin/tree: No such file or directory
[root@itheima ~]#

1.2. rpm包的安装

rpm包安装命令:

命令

含义

rpm -ivh  rpm包名称

安装rpm包

安装命令参数:

参数

英文

含义

-i

install

安装

-v

verbose

打印提示信息

-h

hase

显示安装进度

2. yum软件包管理器

yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat中的 Shell 前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum 语法:

yum [options] [command] [package ...]

options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 "yes"),-q(不显示安装的过程)等等、command:要进行的操作、package:安装的包名。

2.1. yum常用命令

  1. 列出所有可更新的软件清单命令:yum check-update

  2. 更新所有软件命令:yum update

  3. 仅安装指定的软件命令:yum install

  4. 仅更新指定的软件命令:yum update

  5. 列出所有可安裝的软件清单命令:yum list

  6. 删除软件包命令:yum remove

  7. 查找软件包命令:yum search

  8. 列出当前可用仓库信息:yum repolist all

  9. 清楚仓库缓存信息:yum clean all

2.2. yum在线安装软件案例

图片

2.3. yum在线删除软件案例

图片

3. Linux安装JDK

3.1. 统一软件安装路径

理论上来说,可以把软件安装在Linux的任意路径下,但是企业为了规范化管理,通常会设置约束相关的目录用来安装软件、存储软件运行的数据、日志。

 
 

/export/server #软件安装目录
/export/software #安装包的目录
/export/data #软件运行数据保存的目录
/export/logs

mkdir -p /export/server
mkdir -p /export/software
mkdir -p /export/data

3.2. JDK安装

 
 

#上传安装包到/export/server下
jdk-8u241-linux-x64.tar.gz

# 解压到当前目录
tar zxvf jdk-8u241-linux-x64.tar.gz

# 删除红色安装包(可选)
rm -rf jdk-8u241-linux-x64.tar.gz

# 配置环境变量
vim /etc/profile #G + o
export JAVA_HOME=/export/server/jdk1.8.0_241
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# 重新加载环境变量文件 让配置生效
source /etc/profile

[root@node1 ~]# java -version
java version "1.8.0_241"
Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.241-b07, mixed mode)

4. Linux安装、卸载MySQL

4.1. 安装MySQL

step1:安装MySQL:

 
 

mkdir /export/software/mysql
# 上传mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar 到上述文件夹下 解压
tar xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar

# 执行安装
yum -y install libaio

[root@node3 mysql]# rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm mysql-community-libs-5.7.29-1.el7.x86_64.rpm mysql-community-client-5.7.29-1.el7.x86_64.rpm mysql-community-server-5.7.29-1.el7.x86_64.rpm
warning: mysql-community-common-5.7.29-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5:
NOKEY Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-common-5.7.29-1.e################################# [ 25%]
2:mysql-community-libs-5.7.29-1.el7################################# [ 50%]
3:mysql-community-client-5.7.29-1.e################################# [ 75%]
4:mysql-community-server-5.7.29-1.e################ ( 49%)

step2:初始化MySQL:

 
 

# 初始化
mysqld --initialize
# 更改所属组
chown mysql:mysql /var/lib/mysql -R
# 启动mysql
systemctl start mysqld.service
# 查看生成的临时root密码
cat /var/log/mysqld.log

[Note] A temporary password is generated for root@localhost: o+TU+KDOm004

step3:修改root密码 授权远程访问 设置开机自启动

 
 

[root@node2 ~]# mysql -u root -p
Enter password: #这里输入在日志中生成的临时密码
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.29

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>


更新root密码 设置为hadoop
mysql> alter user user() identified by "hadoop";
Query OK, 0 rows affected (0.00 sec)
授权
mysql> use mysql;
mysql> GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'hadoop' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

# mysql的启动和关闭 状态查看
systemctl stop mysqld
systemctl status mysqld
systemctl start mysqld
# 建议设置为开机自启动服务
[root@node2 ~]# systemctl enable mysqld
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /usr/lib/systemd/system/mysqld.service.
查看是否已经设置自启动成功
[root@node2 ~]# systemctl list-unit-files | grep mysqld mysqld.service enabled

4.2. 卸载MySQL

 
 

# 关闭mysql服务
systemctl stop mysqld.service

# 查找安装mysql的rpm包
[root@node3 ~]# rpm -qa | grep -i mysql
mysql-community-libs-5.7.29-1.el7.x86_64
mysql-community-common-5.7.29-1.el7.x86_64
mysql-community-client-5.7.29-1.el7.x86_64
mysql-community-server-5.7.29-1.el7.x86_64

# 卸载
[root@node3 ~]# yum remove mysql-community-libs-5.7.29-1.el7.x86_64 mysql-community-common-5.7.29-1.el7.x86_64 mysql-community-client-5.7.29-1.el7.x86_64 mysql-community-server-5.7.29-1.el7.x86_64

# 查看是否卸载干净
rpm -qa | grep -i mysql

# 查找mysql相关目录 删除
[root@node1 ~]# find / -name mysql /var/lib/mysql /var/lib/mysql/mysql /usr/share/mysql
[root@node1 ~]# rm -rf /var/lib/mysql
[root@node1 ~]# rm -rf /var/lib/mysql/mysql [root@node1 ~]# rm -rf /usr/share/mysql

# 删除默认配置 日志
rm -rf /etc/my.cnf
rm -rf /var/log/mysqld.log

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/826390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux学习】日积月累——进程控制

一、进程创建 1.1 fork函数的认识 #include<unistd.h> pid_t fork(void); 返回值&#xff1a;自进程返回0&#xff0c;父进程返回子进程PID&#xff0c;出错返回-1进程调用fork&#xff0c;当控制转移到内核中的fork代码后&#xff0c;内核做&#xff1a;分配新的内存块…

英语不好能学好Python吗?Python常用英文单词汇总

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 有些小可爱对英语好不好对学习python有没有什么影响有着很深的疑惑。 其实python学习&#xff0c;主要靠多敲多练&#xff0c;主打一个熟能生巧 那今天我就给大家带来Python常用英文单词汇总&#xff0c; 新手期小可…

关于领导要求logback日志时间格式要求为“年-月-日 时:分:秒,毫秒”

今天接到领导邮件要求整改系统输出日志规范&#xff0c;有一条要求调整输出日志时间格式为标题所述格式&#xff0c;例&#xff1a;2022-02-21 14:13:32,489 项目目前logback.xml里的配置是这样&#xff1a; <pattern>%d{yyyyMMdd hh:mm:ss} [%p][%c][%M][%L]-> %m%…

docker容器所有操作、创建私有仓库

目录 一、创建容器与运行容器 1、创建容器 2、启动容器&#xff08;后面加镜像:标签或者唯一ID都可以&#xff09; 3、容器的运行与终止 4、容器的进入 5、容器的导出与导入 6、容器的删除 7、文件复制 8、查看容器资源使用率 9、查看容器进程状态 10、更新容器配置 …

捷码低代码|5种常见的布局组件介绍!

在捷码中亲自体验&#xff0c;学习效果更好&#xff01;没有账号的&#xff0c;点击免费获得账号&#xff1a;http://dev.gemcoder.com/front/development/index.html#/login 本文会介绍五种布局组件&#xff0c;即流式布局、弹性布局、固定布局、多行多列布局、Layout布局。 一…

喜讯! WorkPlus入选中国信通院数字产品“2023全景图”!

“2023数字生态发展大会”暨中国信通院“铸基计划” WorkPlus喜讯 7月27日&#xff0c;中国信息通信研究院&#xff08;下称“中国信通院”&#xff09;主办的“2023数字生态发展大会”暨中国信通院“铸基计划”年中会议在京召开&#xff0c;大会全面地总结了“铸基计划”上半…

企业优化效率,进行数据在线管理是不二选择

如今商业环境的竞争是愈发激烈了起来&#xff0c;企业优化效率成为了提高竞争力和发展壮大的关键。数据与图文档管理是企业运营中不可或缺的一环&#xff0c;传统管理方式已不适应快速变化的市场需求和多样化的业务流程。而在线图文档管理结合BOM系统作为企业数字化管理的不二选…

无涯教程-Lua - repeat...until 语句函数

与 for 和 while 循环(它们在循环顶部测试循环条件)不同&#xff0c;Lua编程中的 repeat ... until 循环语言在循环的底部检查其条件。 repeat ... until 循环与while循环相似&#xff0c;不同之处在于&#xff0c;保证do ... while循环至少执行一次。 repeat...until loop - …

openGauss学习笔记-28 openGauss 高级数据管理-NULL值

文章目录 openGauss学习笔记-28 openGauss 高级数据管理-NULL值28.1 IS NOT NULL28.2 IS NULL openGauss学习笔记-28 openGauss 高级数据管理-NULL值 NULL值代表未知数据。无法比较NULL和0&#xff0c;因为它们是不等价的。 创建表时&#xff0c;可以指定列可以存放或者不能存…

AI绘画| 迪士尼风格|可爱头像【附Midjourney提示词】

Midjourney案例分享 图片预览 迪士尼风格&#xff5c;可爱头像 高清原图及关键词Prompt已经放在文末网盘&#xff0c;需要的自取 在数字艺术的新时代&#xff0c;人工智能绘画已经迅速崭露头角。作为最先进的技术之一&#xff0c;AI绘画结合了艺术和科学&#xff0c;开启了一…

WPF上位机6——文件操作、多线程

文件操作 文件夹操作 创建文件夹 磁盘信息 文件的读写 文件流 Thread多线程 带参数创建线程 Task多线程 创建方式1 第一种 第二种 第三种&#xff1a;线程池的方式 前台与后台线程

开源SCRM营销平台MarketGo-客户群裂变

一、概述 随着互联网社交的普及&#xff0c;企业通过社交渠道进行营销已经成为一种不可或缺的营销手段。在企微SCRM社交媒体营销模式中&#xff0c;基于留存用户做快速的拉取新客户的方式&#xff0c;叫裂变活动&#xff0c;下面我们就基于客户群裂变的概念、特点和方法做简单…

基于C#制作一个串口通信调试软件

串口调试软件是一种用于调试和监测串口通信的工具软件。它可以帮助用户通过串口与外部设备进行通信,并实时显示发送和接收的数据,方便用户进行数据的分析和调试。 串口知识了解什么是串口通信原理波特率数据位停止位奇偶校验位RS-232标准合格的通信软件应具备的特点实现步骤界…

css实现文字颜色渐变+阴影

效果 代码 <div class"top"><div class"top-text" text"总经理驾驶舱">总经理驾驶舱</div> </div><style lang"scss" scoped>.top{width: 100%;text-align: center;height: 80px;line-height: 80px;fo…

【Linux指令篇】--- Linux常用指令汇总(克服指令繁杂问题)

文章目录 前言&#x1f31f;一、Linux基本指令&#x1f31f;二、ls指令&#x1f30f;2.1.语法&#xff1a;&#x1f30f;2.2.功能&#xff1a;&#x1f30f;2.3.常用选项&#xff1a; &#x1f31f;三、pwd指令&#x1f30f;3.1.语法&#xff1a;&#x1f30f;3.2.功能&#xf…

软件设计师(五)软件工程基础知识

一、软件工程概述 软件开发和维护过程中所遇到的各种问题称为“软件危机”。 软件工程是指应用计算机科学、数学及管理科学等原理&#xff0c;以工程化的原则和方法来解决软件问题的工程&#xff0c;其目的是提高软件生产率、提高软件质量、降低软件成本。 #mermaid-svg-h3j6K…

誉天程序员-瀑布模型-敏捷开发模型-DevOps模型比较

文章目录 2. 项目开发-开发方式2.1. 瀑布开发模型2.2. 敏捷开发模型2.3. DevOps开发模型2.4. 区别 自增主键策略1、数据库支持主键自增自增和uuid方案优缺点 2. 项目开发-开发方式 由传统的瀑布开发模型、敏捷开发模型&#xff0c;一跃升级到DevOps开发运维一体化开发模型。 …

天津web前端开发培训班 零基础如何学习前端?

学习Web前端有很多好处&#xff0c;它可以提高你的数字技能&#xff0c;使你更具有竞争力&#xff0c;而且Web前端是一个需求量很大的岗位&#xff0c;有这项技能在手&#xff0c;你可以轻松地找到一份工作。 什么是web前端 前端开发是创建web页面或app等前端界面给用户的过程…

隐私计算互联互通第二批试点项目及标准解读

为进一步促进数据高效流通和数据要素市场高质量发展&#xff0c;推动隐私计算产业健康快速发展。2023隐私计算大会暨首届“星河杯”隐私计算大赛颁奖典礼活动于7月26日在青岛成功举办&#xff0c;吸引了过万人次关注。 DataFountain大数据竞赛平台&#xff08;简称DF平台&…

一款超强的终端复用神器 --Tmux介绍与键位配置(超详细)

Halo&#xff0c;这里是Ppeua。平时主要更新C&#xff0c;数据结构算法&#xff0c;Linux与ROS…感兴趣就关注我bua&#xff01; 文章目录 1.什么是Tmux&#xff1f;session、windows、pane 2.使用Tmux2.1安装Tmux2.2 创建第一个Tmux窗口SessionWindowPane 3.Tmux配置设置为vi…