linux常用命令记录

linux基础命令

linux常用命令大全

查看指定端口

powershell 复制代码
netstat -anp | grep 8800
或者
lsof -i:8080

关闭指定端口的使用程序

powershell 复制代码
kill -9 PID号

文件操作

使用xshell来操作服务非常方便,传文件也比较方便。 就是使用rz,sz 首先,服务器要安装了rz,sz yum install lrzsz 当然你的本地windows主机也通过ssh连接了linux服务器 运行rz,会将windows的文件传到linux服务器 运行sz filename,会将文件下载到windows本地

bash 复制代码
# 文件创建时间
stat fileName.txt
# 复制单个文件
# cp 源文件 目标文件夹
cp file.txt backup
# 复制多个文件
cp file1.txt file2.txt file3.txt backup

# 将一个文件夹下的所有内容复制到另一个文件夹下,这两种方法效果是一样的。
cp -r /home/packageA/* /home/cp/packageB/
cp -r /home/packageA/. /home/cp/packageB/

# 将一个文件夹复制到另一个文件夹下
cp -r /home/packageA /home/packageB

# 移动一个文件夹到另一个文件夹下面,这两种方法效果是一样的。
mv /home/packageA /home/packageB/
mv /home/packageA /home/packageB

Nginx常用指令

powershell 复制代码
# 检查nginx.conf配置是否正确
 sudo nginx -t
 
 # 查看Nginx服务器的状态
 sudo systemctl status nginx
 
 # 停止Nginx
 sudo systemctl stop nginx

 # 启动Nginx
 sudo systemctl start nginx

 # Nginx重启
 sudo systemctl reload nginx

MySQL相关

powershell 复制代码
# 查看MySQL服务状态
systemctl status mysql.service

显示如下结果说明mysql服务是正常的:

powershell 复制代码
# 启动MySQL
service mysql start

# 授权用户
grant all ON *.* to ****@'%' identified by '*******' with grant option;
grant all ON *.* to ****@'%' identified by '*******' with grant option;

数据库备份 相关参考: 在Ubuntu/Linux中自动备份MySQL数据库 mysqldump: [Warning] Using a password on the command line interface can be insecure问题原因及解决方法

powershell 复制代码
# 使用mysqldump命令进行备份
mysqldump --defaults-extra-file=/etc/my.cnf blog01 > /home/abcd.sql

# 导入/恢复数据库
mysql --defaults-extra-file=/etc/my.cnf blog0101 < /home/test0101.sql

# 给备份程序添加操作权限
chmod +x backup_mysql.sh

注意:恢复数据库时,指定的数据库一定要存在(即blog0101必须要存在),否则无法恢复

jar包维护相关

powershell 复制代码
# 单次运行jar包
java -jar xxx.jar

# 永久运行jar包;运行命令后,在同级目录下会出现system.log文件,这个文件就项目的日志文件。
nohup java -jar xxx.jar > system.log 2>&1 &

ps -a可以查看Java程序运行的进程号,用于停止程序,不过当程序有好几个的时候,用命令:ps -ef|grep java这个命令会将搜索Java相关的所有进程号,根据jar包名称找到需要停止的进程号

powershell 复制代码
# 搜索Java相关的所有进程号
ps -ef|grep java

使用命令:kill -9 11759杀死进程,11759是进程号。(PS:杀死进程时一定要注意不要看错了进程号,以免杀错!!)

shell脚本执行出现奇怪的问题

比如Syntax error: "(" unexpected (expecting "fi")或者start.sh: No such file or directory 一般情况是因为该sh脚本的格式不正确,如果这个脚本在你本地修改过(使用txt、notepad++打开修改),可能在保存的时候会默认把文件的格式保存为: doc格式(windows系统)、mac(苹果系统),那么在上传到xshell(unix系统)后,unix系统是不支持doc(mac)格式的,那么就需要把doc(mac)格式的文件修改为unix格式即可。

用vim打开脚本文件,命令行模式输入

bash 复制代码
:set ff

发现出来的是dos 现在通过命令:set ff=unix设置我们的代码模式

bash 复制代码
:set ff=unix

:set ff确认一下格式,现在已经修改了 最后:wq保存退出,再执行脚本就正常了

docker

bash 复制代码
# 查看所有容器列表(包含 正在运行 和 已停止的)
docker ps -a
 
# 停止容器
docker stop 容器ID/容器名
 
# 重启容器
docker restart 容器ID/容器名
 
# 启动容器
docker start 容器ID/容器名
 
# kill 容器
docker kill 容器ID/容器名
 
# ----------------容器文件拷贝 (无论容器是否开启 都可以进行拷贝)
 
# docker cp 容器ID/名称:文件路径  要拷贝到外部的路径 | 要拷贝到外部的路径  容器ID/名称:文件路径
 
# 从容器内 拷出
docker cp 容器ID/名称: 容器内路径  容器外路径
 
# 示例:
docker cp nginx:/etc/nginx/conf.d /data/applications/nginx/conf/conf.d
 
# 从外部 拷贝文件到容器内
docker  cp 容器外路径 容器ID/名称: 容器内路径
 
# ----------------查看容器日志
docker logs -f --tail=要查看末尾多少行 默认all 容器ID
 
# 示例:
docker logs -f -t --tail 1000 2ab447816a66
 
# ----------------更换容器名
docker rename 容器ID/容器名 新容器名

进入容器

bash 复制代码
#进入容器(方式一)
 
docker exec -it 容器名/容器ID /bin/bash
 
#进入容器(方式二) --- 不推荐使用
 
docker attach 容器名/容器ID
 
 

退出容器

bash 复制代码
# 直接退出 (如果没有添加-d 参数(持久化运行容器) 该容器会被关闭 ) 
exit
 
# 优雅退出 (无论是否添加-d 参数 容器都不会被关闭)
Ctrl + p + q
 

docker文件操作

bash 复制代码
# 假设我们有一个名为my_container的Docker容器,以及一个位于宿主机中的文件/path/to/myfile.txt,我们可以使用以下命令将其复制到Docker容器中:
# 这里的/path/in/container/是你想将文件复制到的容器路径。注意,这个路径必须是已存在的目录。
docker cp /path/to/myfile.txt my_container:/path/in/container/

# 创建文件夹,与linux一致
mkdir my_folder
相关推荐
Vone_66几秒前
node.js 邮箱验证服务器搭建
运维·服务器·node.js
丢丢丢丢丢丢~40 分钟前
apache2的默认html修改
linux·运维·服务器
wusam42 分钟前
Linux系统管理与编程20:Apache
linux·运维·服务器·apache·shell编程
我不想当小卡拉米1 小时前
【Linux】操作系统入门:冯诺依曼体系结构
linux·开发语言·网络·c++
ChironW1 小时前
Ubuntu 24.04 LTS系统上配置国内时间同步
linux·运维·服务器·ubuntu
TPBoreas1 小时前
排查服务器内存空间预警思路
运维·服务器
*郑*2 小时前
nginx配置反向代理后端
运维·nginx
苏生要努力2 小时前
第九届御网杯网络安全大赛初赛WP
linux·python·网络安全
若风的雨2 小时前
【DeepSeek】判断两个 PCIe 设备是否属于**同一个 PCIe 子树
linux
江畔独步3 小时前
vim中的查找
linux·编辑器·vim