一、查询
1.1、history
# 模糊查询有netstat的历史命令记录
history |grep netstat
1.2、find
# 模糊查询文件位置
find / -name xxx.conf
# 查看安装版本
rpm -qa|grep rabbitmq
1.3.查询端口、关闭端口
#查询8081端口情况
netstat -anp|grep 8081
[root@host-xxxxx]# netstat -anp |grep 8081
tcp6 0 0 :::8081 :::* LISTEN 28017/java
# 关闭8081端口(pid 28017)
kill -9 28017
1.4 查询redis服务进程
ps -ef|grep redis
[root@ecs-xxx ~]# ps -ef|grep redis
redis 834394 1 0 15:52 ? 00:00:01 /www/server/redis/src/redis-server *:6379
root 834861 834521 0 16:10 pts/1 00:00:00 grep --color=auto redis
2. 防火墙相关
2.1 关闭防火墙
# 找找防火墙用的哪个版本服务 service fire+tab 或者 service iptab +tab
service firewalld stop
3.启动jar包
#启动并查看启动日志
nohup java -jar xxx.jar > log.out & tail -f log.out
nohup java -jar xxx.jar --spring.profiles.active=prod > log.out & tail -f log.out
4.压缩相关
zip [选项] [参数] [文件]
image.png
zip -vr test.zip test/ #压缩test目录
unzip -o xxx.zip -d
-o
覆盖原文件
-d
指定目录,不写默认本目录
unzip -o xxx.zip -d ./a/ #解压xxx.zip 到本目录下的a文件夹下
unzip -o xxx.zip -d /usr/aa #解压xxx.zip 到本目录下的 /usr/aa文件夹下
5.不同服务器上传输文件
)
#scp -r() 某文件或目录 用户@IP:指定的目录下,多文件用空格隔开
scp -r ./dist.zip root@xxx.xx.xx.xxx:/data/dist
scp -r ./dist.zip ./dist2.zip root@xxx.xx.xx.xxx:/data/dist
scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2
简易写法:
scp [可选参数] file_source file_target
#demo
scp -r ./dist-manager.zip ./dist-mh.zip root@xxx.xxx.xxx.xxx:/tmp
6.linux内部服务器之间跳转
ssh root@ip
7.在Linux中批量替换文件夹中文件的内容
确定要替换内容的文件夹路径
首先,需要明确要替换内容的文件夹路径。例如,我们要在/var/www/test
文件夹中进行替换。编写脚本遍历文件夹中的所有文件
-》2.1 为了遍历文件夹中的所有文件,可以使用find命令。以下是一个简单的replaceTxt.sh
脚本示例:
vim replaceTxt.sh
# 定义文件夹路径和要替换的内容
FOLDER_PATH="/var/www/test"
OLD_TEXT="abc"
NEW_TEXT="123"
# 使用find命令遍历文件夹中的所有文件
find "$FOLDER_PATH" -type f -exec sed -i "s/$OLD_TEXT/$NEW_TEXT/g" {} +
sh replaceTxt.sh
-》2.2 使用文本处理工具(如sed
)进行内容替换
在上面的脚本中,sed -i "s/$OLD_TEXT/$NEW_TEXT/g" {}
是关键部分。这里,sed
命令用于对文件进行内容替换:
-i
选项表示直接修改文件内容。"s/$OLD_TEXT/$NEW_TEXT/g"
是sed的替换脚本,表示将文件中的所有$OLD_TEXT
替换为$NEW_TEXT
。
{}
是一个特殊的字符串,对于find命令找到的每个文件,它都会被替换成当前文件的名称。+
表示find命令将所有匹配的文件名作为列表传递给sed
命令,而不是一次传递一个文件名,这样可以提高效率。
4.保存替换后的文件内容,由于使用了-i
选项,sed
命令会直接修改原文件并保存替换后的内容,无需额外保存步骤。
- 验证替换是否成功并检查文件完整性
自动化验证:编写一个简单的脚本来搜索替换后的文本,确保它们确实存在于文件中。使用grep命令来验证替换是否成功:
grep -rl "$NEW_TEXT" "$FOLDER_PATH"