文章目录[隐藏]
记录一些零碎的日常知识。
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