随手一记

记录一些零碎的日常知识。

Python

pow(x, y)x**y 等价,但pow(x, y, z)x**y % z 要快很多。与内置的 ** 运算符或 pow() 函数不同, math.pow() 将其参数转换为 float 类型。使用 ** 或内置的 pow() 函数来计算精确的整数幂。

Vim 使用

查找与替换

按下/即可进入查找模式,键入待查找内容(支持正则表达式)后按回车即可;

在查找结果中,按 n 为查找下一个,按 N 为查找上一个;

在待查找文本尾部补充\c 表示大小写不敏感查找,补充\C 表示大小写敏感查找。

替换::{作用范围}s/{目标}/{替换}/{替换标志}。如:%s/foo/bar/g 表示,在全局范围 (%) 查找 foo 并替换为 bar,所有出现都会被替换(g)。

查找完后取消高亮::noh

TMUX

tmux new-session -s 名字 -d " 命令内容"

创建一个新的 session-s 为命名,-d 为创建 session 后执行命令内容并在执行后自动 detached

Shell

2>/dev/null 可以将命令打印的 stderr 消息重定向到/dev/null,从而使其不再显示,在编写 shell 脚本时很有用。

在函数中,return 可以返回值,但只能为整型数字(范围为 0-255),使用 $? 在执行函数后读取。echo 可以输出内容,能用来模拟返回值,可以用 $(函数名)拿到函数执行时 echo 输出的内容。

在 if 语句中,判断整数相等可以用-eq,如 if [ "$a" -eq "$b" ],判断不相等则用-ne。也可以用==!=

在 if 语句中,判断字符串为空用-z,判断不为空用-n,判断相等用===,判断不相等用!=

在函数中,获取前 9 个参数时,可以使用 $n 获取第 n 个参数。不过,当 n>=10 时,需要使用 ${n}来获取参数。

ldd 命令可以显示共享库的依赖情况,其显示每个程序需要的共享库(shared library),程序名在命令行上给出。

Nginx

设置 IP 白名单

allow IP 1;
allow IP 2;
allow ...;
deny all;

如果要直接设置一个 IP 范围进入白名单,则使用 CIDR 格式标记 IP 范围。例如要标记 45.43.23.0–45.43.23.255,可以写作 45.43.23.0/24

allow 45.43.23.0/24;
deny all;

Google Chrome

清理 301 跳转缓存

如果一个站点的 301 跳转记录在调试程序时被缓存了,导致在 301 跳转去掉后,还是会自动跳转。则可以打开开发者工具的网络选项卡,在勾选 「保留日志」后,输入被缓存 301 跳转的 URL,然后选中跳转之前的原请求,右击,在菜单中选择 「清除浏览器缓存」即可。

参考文献

[1] Harttle. 在 Vim 中优雅地查找和替换 [G/OL]. Harttle Land, 2016(20160808)[2016-08-08]. https://harttle.land/2016/08/08/vim-search-in-file.html

[2] 菜鸟教程. Shell 变量 [G/OL]. 菜鸟教程, 2022(20220123)[2022-01-23]. https://www.runoob.com/linux/linux-shell-variable.html

[3] 菜鸟教程. Shell 基本运算符 [G/OL]. 菜鸟教程, 2022(20220123)[2022-01-23]. https://www.runoob.com/linux/linux-shell-basic-operators.html

[4] 菜鸟教程. Shell 流程控制 [G/OL]. 菜鸟教程, 2022(20220123)[2022-01-23]. https://www.runoob.com/linux/linux-shell-process-control.html

[5] 菜鸟教程. Shell 函数 [G/OL]. 菜鸟教程, 2022(20220123)[2022-01-23]. https://www.runoob.com/linux/linux-shell-func.html

[6] Ubiq. How To Whitelist IP in Nginx[G/OL]. Ubiq. https://ubiq.co/tech-blog/how-to-whitelist-ip-in-nginx/

[7] jigsaw. 谷歌浏览器 301 缓存,如何去除?[G/OL]. CSDN 博客, 2018(20180425)[2018-04-25]. https://blog.csdn.net/pintu274111451/article/details/80079273

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注