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