随笔

记录一些常用小技巧

hexo
  • hexo新建文章
1
hexo new xxxx
  • hexo部署一条龙
1
hexo clean && hexo g && hexo d
  • hexo本地运行
1
hexo s
markdown
  • 添加代码块
1
```+编程语言
java
  • 查看java版本
1
java -version
  • 运行jar包
1
java -jar xxx.jar
linux
  • 后台运行jar包并指定日志文件
1
nohup java xxx.jar > xxx.log 2>&1 &
  • 查看某一进程并杀死进程
1
2
ps -ef | grep java
kill -9 xxx
sed添加文件内容
1
sed -i 'N;106a\ddddddd' file

1、-i:原地编辑文件

2、N:将下一行添加到pattern space中。将当前读入行和用N命令添加的下一行看成“一行”。

2、a:追加文件内容。

sed修改文件内容
1
sed -i 's/待替换的内容/替换后的内容/g' file

1、-i:原地编辑文件

2、/g:全局修改,没有只修改第一处

测试

1
2
3
4
5
spring:
datasource:
username: admin
password: xxxxx
url: jdbc:mysql://localhost:3306/database

使用命令

1
2
sed -i 's/xxxxx/123456/g' file
sed -i 's/localhost/127.0.0.1/g' file

结果

1
2
3
4
5
spring:
datasource:
username: admin
password: 123456
url: jdbc:mysql://127.0.0.1:3306/database

另一种方法:

1
sed -i '0,/^\([[:space:]]*username: *\).*/s//\1xxx/;' file

1、0:匹配以下模式的第一次出现

2、/^\([[:space:]]username: \).*/:搜索并捕获零个或多个空格或制表符,后跟username:

3、s//:替换匹配字符串

4、…使用捕获的 key 和新值

5、-i:原地编辑文件

测试

1
2
3
4
5
spring:
datasource:
username: admin
password: xxxxx
url: jdbc:mysql://localhost:3306/database

使用命令

1
2
sed -i '0,/^\([[:space:]]*username: *\).*/s//\1admin123/;' file
sed -i '0,/^\([[:space:]]*password: *\).*/s//\1123456/;' file

结果

1
2
3
4
5
spring:
datasource:
username: admin123
password: 123456
url: jdbc:mysql://127.0.0.1:3306/database
windows

查找指定端口

1
netstat -aon|findstr "8080"

强制(/F参数)杀死 pid 为 8080的所有进程包括子进程(/T参数)

1
taskkill /T /F /PID 8080 

打开cmd

1
2
win+R
cmd

打开屏幕键盘

1
win+Ctrl+o
ffmpeg剪切视频
  • 剪辑参数讲解
1
2
3
4
5
6
7
-ss 0:00:43.73 #指定剪辑开始时间
-to 0:00:53.73 #指定剪辑结束时间
-t 10 #指定剪辑持续时间(单位:秒)
-i input.mp4 #指定剪辑视频文件
-c copy #采用原视频编码,直接复制,速度更快
output.mp4 #输出视频文件
-y #直接覆盖输出视频文件不提示
  • 剪辑视频(指定开始时间和结束时间)
1
ffmpeg -ss 0:00:43.73 -to 0:00:53.73 -accurate_seek -i input.mp4 -c copy -avoid_negative_ts 1 output.mp4 -y
  • 压缩参数讲解
1
2
3
4
5
-r 20 #帧率20
-s 1280x720 #设置分辨率
-vf scale=iw*0.75:ih*0.75 #设置分辨率为原来的0.75,与-s互斥使用
-b:v 500k #视频的码率为500k
libx264 #使用libx264编码库编码
  • 压缩视频
1
ffmpeg -i input.mp4 -r 20 -vf scale=iw*0.75:ih*0.75 -b:v 500k -c:v libx264 output.mp4 -y

视频分辨率与码率关系

视频大小 分辨率 建议码率
480P 720X480 1800Kbps
720P 1280X720 3500Kbps
1080P 1920X1080 8500Kbps
ffmpeg图片处理

1、图片压缩

1
2
ffmpeg -i image_source -q compress_level out_source
#compress_level:压缩等级为正整数,数值越大压缩等级越高

2.约束比例压缩

ffmpeg可以将图片压缩成指定的尺寸

1
2
3
4
ffmpeg -i image_source -vf scale=width:height out_source
#width为压缩后的图片宽度
#height为压缩后的图片高度
#当width或height其中有一个数值为-1时将保持原来图片尺寸比例压缩

记录一些接口

必应每日 API 接口

https://cn.bing.com/HPImageArchive.aspx?n=1&format=js&idx=0

壁纸 API 参数:

参数名 必选 类型 说明
n Number 控制API返回多少组图片数据,至少需要1组数据,最多返回8组数据
format String 返回数据的格式,默认:xml 格式,可支持json格式,参数:js
idx Number 回朔7天之内的信息,默认:0,代表今天

今日壁纸:

头像接口

QQ头像接口

https://q.qlogo.cn/g?b=qq&nk=1982989137&s=100

参数名 必选 类型 说明
nk Number QQ号码
s Number 头像大小,目前只找到100和640两个值

示例:

由随机文字生成头像接口:

https://api.multiavatar.com/randomword.png

示例:

文字图片接口:

https://ui-avatars.com/api/?name=John+Doe

示例:

记录一些零散知识

以太网

以太网是一种将几台电脑连接起来,能够进行通讯的技术,也就是组建所谓的“局域网”。

MySQL命令集

登陆mysql

1
mysql -u root -p

修改密码

1
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

新建用户允许远程连接

1
`grant all on *.* to admin@'%' identified by '123456' with grant option;flush privileges;`

现有用户下允许远程连接

1
2
3
use mysql;
update user set host='%' where user='root' and host='localhost';
flush privileges;