File tree Expand file tree Collapse file tree 1 file changed +64
-7
lines changed Expand file tree Collapse file tree 1 file changed +64
-7
lines changed Original file line number Diff line number Diff line change 1
- ## 检索文件内容 grep
1
+ # Linux面试题
2
+
3
+ 如今程序员生产的代码99%都部署在linux环境下,代码发现缺陷,程序员的第一反应是到 Linux 上拉日志下来看。程序员不是运维,不需要掌握非常多复杂命令。
4
+
5
+ # 推荐终端工具
6
+
7
+ - SecureCRT
8
+ - xshell
9
+
10
+ ## 常用命令(重要)
11
+
12
+ ls/ll、cd、mkdir、rm-rf、cp、mv、ps -ef | grep xxx、kill、free-m、tar -xvf file.tar
13
+
14
+ ** 查看进程:** (例:如何查看所有xx进程)
15
+
16
+ ps -ef | grep xxx
17
+
18
+ ps -aux | grep xxx(-aux显示所有状态)
19
+
20
+ ** 查看日志:**
21
+
22
+ tail -f * .log : 适用于实时查看日志,开发环境还行,生产就算了,日志会很多。
23
+
24
+ ** tail -f error.log** :生产中一般用这个实时看异常日志
25
+
26
+ ** 编辑 vi/vim : **
27
+
28
+ ** vi x.log** 编辑你的日志文件
29
+
30
+ i 写入
31
+
32
+ : wq 保存退出
33
+
34
+ : q ! 或者 ctrl+c 退出不保存
35
+
36
+ Shift+g 跳至当前文本最后一行,看最新的日志,都在最下面
37
+
38
+ ## grep 查找(重要)
39
+
40
+ ** grep 是必备日志分析命令**
41
+
42
+ ** grep -r '关键字如商品ID' \* .log (使用频率最高)**
43
+
44
+ ** grep '关键字如商品ID' \* .log | grep 免费商品(在管道符前条件结果中,在加条件筛选下) **
45
+
46
+ ** grep '关键字如商品ID' \* .log >> anan.txt 【相关日志输入到一个txt中,下载到本地慢慢看,我最喜欢】**
47
+
2
48
grep "被查找的字符串" 文件名
3
49
` grep -n 2019-10-24 00:01:11' *.log `
4
- 可以.log文件中,查到时间内的所有信息
50
+ 可以查找 * .log文件中,查到时间内的所有信息
51
+
52
+ ## 查找特定文件 find
53
+
54
+ ** find ~ -name "需要查找的文件名"**
55
+
56
+ 比如:` find ~ -name "本机ip.txt" ` 就可以得到文件名所在的目录
5
57
6
- 参数:
7
- -o 或 --only-matching : 只显示匹配PATTERN 部分。
8
- -v 或 --revert-match : 显示不包含匹配到的文本的所有行。 (过滤掉自己当前操作的信息,就是-v后面的内容)
9
58
### 管道操作符 |
59
+
10
60
可将指令连接起来,前一个指令的输出作为后一个指令的输入
11
61
62
+ ### 杀僵尸进程
63
+
64
+ 部分程序员,肯定喜欢下面命令
65
+
66
+ ps -ef | grep java 【先查java进程ID】
67
+
68
+ kill -9 java进程ID 【生产环境谨慎使用】
69
+
12
70
## 对文件内容做统计 awk
13
- awk
14
- 类似一个函数的命令,更复杂的检索。
15
71
16
72
17
73
## 批量替换 sed
74
+
18
75
sed 配合正则表达式批量替换文本内容
You can’t perform that action at this time.
0 commit comments