This commit is contained in:
yinkanglong
2023-08-13 16:09:29 +08:00
parent f068be44c3
commit 4c7ee762dc
47 changed files with 1564 additions and 444 deletions

View File

@@ -29,7 +29,7 @@ less(选项)(参数)
-S在单行显示较长的内容而不换行显示
-x<数字>将TAB字符显示为指定个数的空格字符。
```
### 交互命令
less 命令执行的快捷键
搜索快捷键总结
* /字符串:向下搜索“字符串”的功能
@@ -56,10 +56,25 @@ less 命令执行的快捷键
* 'a - 导航到标记 a 处
多文件浏览更换文件(:命令 底行模式)
:n newx file
:p previous file
= :f 打印文件的名字
### 参数
* :n newx file
* :p previous file
* = :f 打印文件的名字
### 正则支持搜索
```
[abc]a或b或c .任意单个字符 a?零个或一个a
[^abc]任意不是abc的字符 \s空格 a*零个或多个a
[a-z]a-z的任意字符 \S非空格 a+一个或多个a
[a-zA-Z]a-z或A-Z \d任意数字 a{n}正好出现n次a
^一行开头 \D任意非数字 a{n,}至少出现n次a
$一行末尾 \w任意字母数字或下划线 a{n,m}出现n-m次a
(...)括号用于分组 \W任意非字母数字或下划线 a*?零个或多个a(非贪婪)
(a|b)a或b \b单词边界 (a)...\1引用分组
(?=a)前面有a (?!a)前面没有a \B非单词边界
```
### 参数
文件:指定要分屏显示内容的文件。

View File

@@ -1,6 +1,10 @@
supervisord
===
https://blog.csdn.net/weixin_40680612/article/details/124422102
Supervisor是用Python开发的一套通用的进程管理程序能将一个普通的命令行进程变为后台daemon并监控进程状态异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动这样只要在supervisor的配置文件中把要管理的进程的可执行文件的路径写进去即可。也实现当子进程挂掉的时候父进程可以准确获取子进程挂掉的信息的可以选择是否自己启动和报警。supervisor还提供了一个功能可以为supervisord或者每个子进程设置一个非root的user这个user就可以管理它对应的进
配置后台服务/常驻进程的进程管家工具。
supervisord的出现可以用来管理后台运行的程序。通过supervisorctl客户端来控制supervisord守护进程服务真正进行进程监听的是supervisorctl客户端而运行supervisor服务时是需要制定相应的supervisor配置文件的。
@@ -11,6 +15,17 @@ supervisord的出现可以用来管理后台运行的程序。通过superviso
apt-get install supervisor
```
```
启动
systemctl start supervisord.service
停止
systemctl start supervisord.service
重启
systemctl restart supervisord.service
查看状态
systemctl status supervisord.service
```
## 使用
Supervisord工具的整个使用流程
@@ -36,6 +51,17 @@ supervisorctl stop app
supervisorctl reload # 修改/添加配置文件需要执行这个
supervisorctl status
webserver RUNNING pid 1120, uptime 0:08:07
supervisorctl status 查看进程运行状态
supervisorctl start 进程名 启动进程
supervisorctl stop 进程名 关闭进程
supervisorctl restart 进程名 重启进程
supervisorctl update 重新载入配置文件
supervisorctl shutdown 关闭supervisord
supervisorctl clear 进程名 清空进程日志
supervisorctl 进入到交互模式下。使用help查看所有命令。
start stop restart + all 表示启动,关闭,重启所有进程进程名 清空进程日志
supervisorctl 进入到交互模式下。使用help查看所有命令。
start stop restart + all 表示启动,关闭,重启所有进程
```
启动supervisor程序
@@ -117,3 +143,56 @@ numprocs 启动几个进程
autostart supervisor启动的时候是否随着同时启动
autorestart 当程序over的时候这个program会自动重启一定要选上
```
```shell
配置监控应用
cd /etc/supervisord.d
vim frpserver.conf
[program:frpServer] ; 程序名称可以通过ctl指定名称进行控制
#directory = /home/kangaroo/build/CIServer ; 程序的启动目录
command = /root/frp/frps -c /root/frp/frps.ini
# ; 启动命令,可以看出与手动在命令行启动的命令是一样的
autostart = true ; 在 supervisord 启动的时候也自动启动
startsecs = 20 ; 启动 5 秒后没有异常退出,就当作已经正常启动了
autorestart = true ; 程序异常退出后自动重启
startretries = 3 ; 启动失败自动重试次数,默认是 3
user = root ; 用哪个用户启动
redirect_stderr = true ; 把 stderr 重定向到 stdout默认 false
stdout_logfile = /home/supervisor/log/frps.log
stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默认 50MB
stdout_logfile_backups = 20 ; stdout 日志文件备份数
tomcat配置
cd /etc/supervisord.d
vim frpserver.conf
[program:tomcat]
command=/apache-tomcat-8.5.55/bin/catalina.sh run
environment=JAVA_HOME="/java/jdk1.8.0_191/",JAVA_BIN="/java/jdk1.8.0_191/bin"
directory=/apache-tomcat-8.5.55/
autostart = true
autorestart=true
redirect_stderr=true
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=20MB
nginx配置
cd /etc/supervisord.d
vim frpserver.conf
[program:nginxServer] ; 程序名称可以通过ctl指定名称进行控制
#directory = /home/kangaroo/build/CIServer ; 程序的启动目录
command = /usr/sbin/nginx -g 'daemon off;'
# ; 启动命令,可以看出与手动在命令行启动的命令是一样的
autostart = true ; 在 supervisord 启动的时候也自动启动
startsecs = 20 ; 启动 5 秒后没有异常退出,就当作已经正常启动了
autorestart = true ; 程序异常退出后自动重启
startretries = 3 ; 启动失败自动重试次数,默认是 3
user = root ; 用哪个用户启动
redirect_stderr = true ; 把 stderr 重定向到 stdout默认 false
stdout_logfile = /home/supervisor/log/nginx.log
stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默认 50MB
stdout_logfile_backups = 20 ; stdout 日志文件备份数
```

View File

@@ -154,9 +154,9 @@ home is a writable directory
```
数字测试: -eq -ne -lt -le -gt -ge[[ ]]同 [ ]一致
文件测试: -r、-l、-w、-x、-f、-d、-s、-nt、-ot[[ ]]同 [ ]一致
字符串测试: > < =(同==) != -n -z不可使用“<=”和“>=”,[[ ]]同 [ ]<
字符串测试: > < =(同==) != -n -z不可使用“<=”和“>=”,[[ ]]同 [ ]
SPAN style="COLOR: rgb(0,1,2)">一致,但在[]中,>和<必须使用\进行转义,即\>和\<
< >一致,但在[]中,>和<必须使用\进行转义,即\>和\<
逻辑测试: []为 -a -o ! [[ ]] 为&& || !
数学运算: [] 不可以使用 [[ ]]可以使用+ - */ %
组合: 均可用各自逻辑符号连接的数字(运算)测试、文件测试、字符测试