注意事项
- 该文的
Linux 部分只包括一些不常用的简便方式,基本的常用命令详见如下链接(其中包含vi的基本命令)
Linux
日志查找
Less
应用场景
适合查看有 确定目标 的日志,每次只显示一面,可以上下翻页
常用命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| # 高效搜索高亮 less -p "error" app.log
# less 命令可以和 cat 命令组合使用,在 xshell 中使用 Ctrl + Shift + F 高亮查询 tac /data/applogs/dlis-policy/dlis-policy.log-2026-03-27 | grep t_79dbc7239f4540d1acc0f69f067a68ca -C20 | less
操作: 1. Space / f:向下翻一页 2. b:向上翻一页 3. j / k:逐行移动 4. /关键词:向下搜索 5. ?关键词:向上搜索 6. n:跳到下一个匹配项 7. N:跳到上一个匹配项 8. G:跳转到文件末尾 9. g:跳到文件开头
|
Cat
应用场景
适合查找有对应的 事务号 的日志,可以查出一个需求相关的所有日志
常用命令
1 2 3 4 5 6 7 8 9 10 11
| # 正序查找, -C是额外打印前后匹配的日志 cat dlis-gateway.log-2025-12-31 | grep "t_cf798a9b6d214b1687a273c658c09a0b" | grep "---出参++++++---" -C10
# 倒序查找, 只需要将cat反过来写 tac dlis-gateway.log-2025-12-31 | grep "t_cf798a9b6d214b1687a273c658c09a0b" | grep "---出参++++++---" -C10
# 简便查找方式 grep "t_cf798a9b6d214b1687a273c658c09a0b" dlis-gateway.log-2025-12-31 -C10
# 如果添加 -C 符号后输出的内容过多,导致 xshell 拉到顶仍然看不到最后内容,可以结合 less tac dlis-gateway.log-2025-12-31 | grep "t_cf798a9b6d214b1687a273c658c09a0b" | grep "---出参++++++---" -C10 | less
|
Tail
应用场景
适合 实时查看 日志输出
常用命令
1 2
| tail -f -n 50 /var/log/syslog # 先显示最后50行,再实时跟踪 tail -F app.log # 重点:文件被重命名/删除/轮转后自动重试
|
-F vs -f:
-f:文件被删除或移动后会退出
-F:持续跟踪,即使文件被 logrotate 轮转,也会继续监控新文件(生产环境推荐)
文本查看
Vim & Vi
Vim 是 Vi 的增强版,待补充
宝塔
1 2 3 4 5
| # 查看当前信息 bt 14
# 修改密码 bt 5
|
Redis
以下链接分别是 redis 的命令行操作和 redis 在 SpringBoot 项目中的操作
redis 常用命令行指令汇总_redis 命令行-CSDN博客
一文带你了解如何在Java中操作Redis_java redis-CSDN博客
Git
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| # 创建并切换到新分支(最常用),注意是从master分支里面拉新分支而不是从main分支里面拉新分支 git checkout -b <分支名>
# 撤销 commit 但保留修改(最常用) git reset --soft HEAD~1
# 设置用户名 git config user.name "muyi"
# 设置邮箱 git config user.email "3308632775@qq.com"
# 删除多个远程分支 git push origin --delete branch1 branch2 branch3
# 示例:删除本地 feature/login 分支 git branch -d feature/login
# 告诉 Git 忽略 target 目录下的所有文件变更(防止云端有人提了target代码,然后maven在构建项目时一直记录缓存的问题) git update-index --assume-unchanged $(git ls-files | grep target)
# 频繁提示要输入 git 用户名和密码 git config --global credential.helper store
|
Maven
1 2 3 4 5
| # maven mvn clean compile -Psit -U -T 2C
-U — 强制更新所有 SNAPSHOT 依赖 -T 2C — 以 CPU 核心数 × 2 的线程数并行编译模块
|
更新所有 SNAPSHOT 依赖工作机制详解
- SNAPSHOT 依赖的生命周期
- 每次构建时:Maven 默认会检查 SNAPSHOT 依赖是否有更新(检查频率可配置,默认一天一次)。
- 添加
-U 参数后:Maven 会强制检查所有 SNAPSHOT 依赖,忽略本地缓存的时效性,直接向远程仓库发起请求,获取最新的版本。
- 实际效果:
- 如果远程仓库上有更新的 SNAPSHOT 版本(比如
2.0.0-SNAPSHOT 有了新快照),Maven 会下载它并覆盖本地仓库中的旧文件。
- 如果远程仓库没有更新,Maven 会使用本地已有的版本,但这次请求仍会发出。
- 正式版本依赖(Release)
- 对于
1.0.0、2.1.3 这类非 SNAPSHOT 版本,Maven 认为它们是不可变的。一旦下载到本地,就不会再主动去远程仓库检查更新。
- 即使加了
-U,Maven 也不会重新拉取这些正式版本。
Docker
1 2 3 4 5
| # 启动docker容器 docker compose up -d
# 关闭docker docker compose stop
|
Anaconda
1 2
| # 创建一个新环境 conda create -n py311 python=3.11 -y
|
Python
1 2
| # 后台执行命令 nohup python script.py &
|
Windows
1 2 3
| # 关掉对应端口的命令 netstat -ano | findstr :8080 taskkill /PID 1234 /F
|
NotePad++
1 2
| # Linux中换行符是"\n" # Windows中换行符是"\r\n"
|
Vue
1 2
| # npm 的一个安装命令选项,用来解决依赖包之间的版本冲突问题。简单来说,它的作用是:在遇到依赖冲突时,忽略冲突,使用 npm 旧版本(v4-v6)的安装策略,继续完成安装。 npm install --legacy-peer-deps
|
Postman
Postman 的 Tests 脚本(基于 JavaScript),主要用于处理接口返回的响应数据,将转义字符还原,并将处理后的结果设置为环境变量。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| let responseData = pm.response.json();
let originalPrompt = responseData.data.content;
try { let fallbackPrompt = originalPrompt .replace(/\\n/g, "\n") .replace(/\\t/g, "\t") .replace(/\\'/g, "'") .replace(/\\"/g, '"') .replace(/\\\\/g, "\\");
pm.environment.set("processedPrompt", fallbackPrompt); console.log("提示词:", fallbackPrompt);
} catch (parseError) { console.error("JSON解析错误:", parseError.message); }
|