Linux
1. 文件基础操作
基本命令格式:
- Linux 命令格式:
command ``[``-options``] [``parameter``]
- tab补全最临近符合命令 双tab做相关提示
1.1.目录操作
1.1.1查看目录下的内容
- 语法: ls [-al] [dir]
ls
ls -al --> ll --> 查看当前目录文件及目录的详细信息
diff
-> 说明:
-a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
-l 除文件名称外,同时将文件型态(d表示目录,-表示文件)、权限、拥有者、文件大小等信息详细列出
-> 特殊说明:
~ 表示用户的home目录
. 表示目前所在的目录
.. 表示目前目录位置的上级目录
1.1.2 cd [进入指定文件]
- 语法: cd [dirName]
注 : 其他用户位置 /home/xxx
1.1.3 mkdir [创建目录]
- 语法: mkdir [-p] dirName
-p: 检空命令,不存在就创建,允许多层创建
1.1.4 rm [删除文件或者目录]
-
语法: rm [-rf] name
-
说明:
-r: 将目录及目录中所有文件(目录)逐一删除,即递归删除
-f: 无需确认,直接删除
1.2文件操作命令
1.2.1 cat显示文件内容
- 语法:
cat [-n] fileName
-n
: 由1开始对所有输出的行数编号

- 语法: cp [-r] source[起始文件] dest[目标路径]
-r: 如果复制的是目录需要使用此选项,此时将复制该目录下所有的子目录和文件,文件夹一般使用'-r '去整个的拷贝
1.3.2 mv 文件或目录改名、或将文件或目录移动到其它位置
- 语法: mv source dest
1.4 tar 打包压缩命令
tar [对文件进行打包、解包、压缩、解压]
- 语法: tar [-zcxvf] fileName [files]
常用 : tar -cvf 打包--压缩
tar -zxvf /path -C /path 解包到目的文件下
标注:
-
-z: z代表的是gzip,通过gzip命令处理文件,gzip可以对文件压缩或者解压
-
-c: c代表的是create,即创建新的包文件
-
-x: x代表的是extract,实现从包文件中还原文件
-
-v: v代表的是verbose,显示命令的执行过程
-
-f: f代表的是file,用于指定包文件的名称
补充:
-C 指定解压文件存放目录
bash
tar -zxvf jdk-21_linux-x64_bin.tar.gz -C /usr/local/
gg | 定位到文本内容的第一行 |
---|---|
G | 定位到文本内容的最后一行 |
dd | 删除光标所在行的数据 |
ndd | 删除当前光标所在行及之后的n行数据 |
u | 撤销操作 |
插入模式(Insert mode)-->i 或 a 或 o | 进入插入模式(进入后光标所处的位置不同而已) |
底行模式(Last line mode):
通过命令对文件内容进行查找、显示行号、退出等操作 :符号进入模式
wq(保存并退出)、q!(不保存退出)、set nu(显示行号)
:set nonu -- 取消行号显示
:n -- 定位到第n行,如 :10 就是定位到第10行
1.6 查找命令
1.6.1 find [在指定目录下查找文件]
find dirName -option fileName
find . --name "*.java"
在当前目录及其子目录下查找.java结尾文件
1.6.2 grep [从指定文件中查找指定的文本内容]
grep word fileName
- 选项:
-
- -i: 检索的关键字忽略(ignore)大小写
- -n: 显示关键字所在的这一行的行号
- -A: 输出关键字所在行及之后( A fter)的几行记录 (如:-A5 表示输出关键字所在行之后的5行记录)
- -B: 输出关键字所在行及之前( B efore)的几行记录 (如:-B5 表示输出关键字所在行之前的5行记录)
安装方式 | 特点 |
---|---|
二进制发布包安装 | 软件已经针对具体平台编译打包发布,只要解压,修改配置即可 |
软件已经针对具体平台编译打包发布,只要解压,修改配置即可 | 软件已经按照redhat的包管理规范进行打包,使用rpm命令进行安装,=不能自行解决库依赖问题= |
rpm安装 | 种在线软件安装方式,本质上还是rp安装,自动下载安装包并安装,安装过程中自动解决库依赖问题(安装过程需要联网) |
源代码编译安装 | 软件以源码工程的形式发布,需要自己编译打包 |
解包安装
例子:tar安装包:-->拆包(tar )+[引入变量(vim/etc/profile
)+ 重加载(source /etc/profile) ]
rpm操作:
A. 通过rpm相关指令,来查询当前系统中是否存在已安装的mysql软件包,执行指令如下:
rpm -qa
查询当前系统中安装的所有软件rpm -qa | grep mysql
查询当前系统中安装的名称带mysql的软件rpm -qa | grep mariadb
查询当前系统中安装的名称带mariadb的软件
卸载软件的语法为:rpm -e --nodeps 软件名称
2 服务启动相关
ps -ef | grep -i 进程名 查看线程运行信息
ss -tulpn | grep :3306 查看端口相关信息
ip addr show -->查看指定网卡IP
top 查看内存情况
pwd 查看当前所在目录
netstat -tuln | grep 3306
kill -9 pid 杀死指定线程
nohup java程序
bash
nohup java -jar tlias-web-management-0.0.1-SNAPSHOT.jar &> tlias.log &
模板: nohup command [ args ... ] [&]
- 参数说明:
- command:要执行的命令
- args:一些参数,可以指定输出文件
- &:让命令在后台运行
防火墙:
操作 | 指令 | 备注 |
---|---|---|
查看防火墙状态 | systemctl status firewalld / firewall-cmd --state | |
暂时关闭防火墙 | systemctl stop firewalld | |
永久关闭防火墙(禁用开机自启) | systemctl disable firewalld | 下次启动,才生效 |
暂时开启防火墙 | systemctl start firewalld | |
永久开启防火墙(启用开机自启) | systemctl enable firewalld | 下次启动,才生效 |
开放指定端口 | firewall-cmd --zone=public --add-port=8080/tcp --permanent | 需要重新加载生效 |
关闭指定端口 | firewall-cmd --zone=public --remove-port=8080/tcp --permanent | 需要重新加载生效 |
立即生效(重新加载) | firewall-cmd --reload | |
查看开放端口 | firewall-cmd --zone=public --list-ports |
mysql相关
systemctl start mysql 启动MySQL服务
创建账号, 并授权远程访问
sql
CREATE USER 'root'@'%' IDENTIFIED BY '1234'; #创建用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; #赋权
FLUSH PRIVILEGES; #刷新
# 修改root用户的密码
ALTER USER 'root'@'localhost
' IDENTIFIED WITH mysql_native_password BY '1234';
.tar.gz软件安装
bash
yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel #安装包
yum install gcc-c++ #c环境
tar -zxvf nginx-1.20.2.tar.gz #解压
#进入解压目录
cd nginx-1.20.2
#执行命令配置, 生成Makefile文件
./configure --prefix=/usr/local/nginx
#编译
make
#编译安装
make install
-->/usr/local/nginx,启动nginx服务
cd /usr/local/nginx/
sbin/nginx #启动
nginx相关
- 启动: sbin/nginx
- 重载: sbin/nginx -s reload
- 停止: sbin/nginx -s stop
Docker部署
docker--run命令:
docker run -d \ # -d 后台运行
--name mysql \ # 自定义容器名
-p 3307:3306 \ # 接口映射
-e TZ=Asia/Shanghai \ #容器参数 时区
-e MYSQL_ROOT_PASSWORD=123 \ #
mysql:8
命令 | 说明 | 文档地址 |
---|---|---|
docker pull | 拉取镜像 | docker pull |
docker push | 推送镜像到DockerRegistry | docker push |
docker images | 查看本地镜像 | docker images |
docker rmi | 删除本地镜像 | docker rmi |
docker run | 创建并运行容器(不能重复创建) | docker run |
docker stop | 停止指定容器 | docker stop |
docker start | 启动指定容器 | docker start |
docker restart | 重新启动容器 | docker restart |
docker rm | 删除指定容器 | docs.docker.com |
docker ps | 查看容器 | docker ps |
docker logs | 查看容器运行日志 | docker logs |
docker exec | 进入容器 | docker exec |
docker save | 保存镜像到本地压缩文件 | docker save |
docker load | 加载本地压缩文件到镜像 | docker load |
docker inspect | 查看容器详细信息 | docker inspect |

相关命令
bash
# Docker开机自启
systemctl enable docker
# Docker容器开机自启
docker update --restart=always [容器名/容器id]
docker update --restart=always 开机启动
docker容器数据卷映射

把目录关联起来,我们称为挂载 。 我们也允许让容器直接与宿主机目录挂载而不使用数据卷
数据卷相关命令:
命令 | 说明 | 文档地址 |
---|---|---|
docker volume create | 创建数据卷 | docker volume create |
docker volume ls | 查看所有数据卷 | docs.docker.com |
docker volume rm | 删除指定数据卷 | docs.docker.com |
docker volume inspect | 查看某个数据卷的详情 | docs.docker.com |
docker volume prune | 清除数据卷 | docker volume prune |
注意:容器与数据卷的挂载要在创建容器时配置,对于创建好的容器,是不能设置数据卷的。而且创建容器的过程中,数据卷会自动创建。

数据卷支持挂载在容器内部

docker run -d -name nginx -p 80:80 -v /opt/html:/usr/share/nginx/htmlng ginx/html nginx
--->挂载目标