202305

linux

sed

在每行的头添加字符,比如"HEAD",命令如下:

sed 's/^/HEAD&/g' test.file

#在每行的行尾添加字符,比如“TAIL”,命令如下:
sed ‘s/$/&TAIL/g’ test.file

Linux NFS服务的权限设置和身份映射
https://blog.csdn.net/m0_46756244/article/details/105342440

  • 权限主要分两种,ro(默认,只读)rw(读写)sync(同步,必须加);客户端还可以用*来表示,就代表所有客户端都可以访问
  • 在设置权限后,还应别忘了系统层面的权限设置
  • NFS 服务不具备用户身份验证的功能,而是基于客户端的 IP 来进行认证的
  • 在服务器上会有这么一个 nfsnobody 匿名用户,然后客户端在用nfs服务访问服务器上的共享目录时,就会被映射成这个用户来访问
  • 用户映射
    • root_squash,当 NFS 客户端以 root 用户身份访问时,映射为 NFS 服务器的 nfsnobody 用户
    • no_root_squash,当 NFS 客户端以 root 身份访问时,映射为 NFS 服务器的 root 用户,一般不建议采用。
    • all_squash,无论 NFS 客户端以哪种用户身份访问,均映射为 NFS 服务器的 nfsnobody 用户。
  • 如果在服务器端赋予某个用户对共享目录具有相应权限,而且在客户端正好也有一个相同 UID 的用户,那么当在客户端以该用户身份访问共享时,就会被映射成具有相同 UID 的用户,比如服务端和客户端都是 ubuntu 默认用户,避免这种情况就用 all_squash

linux 命令行查词
https://www.cnblogs.com/fusheng-rextimmy/p/15371057.html

sudo apt-get install ruby
sudo gem install fy
fy love

NGINX caching proxy fails with SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
https://stackoverflow.com/questions/25329941/nginx-caching-proxy-fails-with-ssl23-get-server-hellosslv3-alert-handshake-fail

proxy_ssl_server_name on;
proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

nginx upstream failover 容错机制
https://blog.csdn.net/bigtree_3721/article/details/72792141

  • 失效节点的 6 种状态
    • time out
    • connect refuse
    • 500、502、503、504
    • 后四项 5XX 需要配置 proxy_next_upstream 中的状态才可以生效
  • 负载均衡方式一共有 5 种
    • rr(轮询模式)
    • ip_hash
    • fair
    • url_hash
    • weight(加权)。

编程

HyperLogLog 使用及其算法原理详细讲解
https://blog.csdn.net/qq_41125219/article/details/119776824

Dotnet Async Guidance
https://github.com/davidfowl/AspNetCoreDiagnosticScenarios/blob/master/AsyncGuidance.md

Tailwind CSS:百万美元启示录
https://hardcored.substack.com/p/tailwind-css

rust

安装 rust
https://www.rust-lang.org/tools/install

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"

Rustup - Rust工具链安装器
https://zhuanlan.zhihu.com/p/382810160

rust 教程
https://doc.rust-lang.org/rust-by-example/hello/print.html

通过例子学 Rust
https://rustwiki.org/zh-CN/rust-by-example/

Rust 程序设计语言
https://rustwiki.org/zh-CN/book/

vimrc 设置 F5 编译运行

autocmd FileType rust nnoremap <buffer> <F5> :!rustc % -o a.out && ./a.out<CR>

英语

175个最实用的英语会话句型
https://www.cnblogs.com/winrarz/p/16885550.html

python

python协程(1): 基本介绍及yield实现协程
https://blog.csdn.net/qq_37674086/article/details/113243190

vim

光标移动

  • gg 到文档第一行
  • G 到文档最后一行
  • 0 到行首(第 1 列)
  • ^ 到第一个非空白字符
  • $ 到行尾
  • Ctrl-B 和 Ctrl-F 以及 PageUp 和 PageDown 按全页滚动
  • Ctrl-U 和 Ctrl-D 默认滚动半页
  • Ctrl-Y 和 Ctrl-E 滚动一行
  • zz 把当前行置为屏幕的中央
  • zt 把当前行置于屏幕的顶端
  • zb 把当前行置于屏幕的底端
  • H 移动到屏幕顶端
  • M 移动到屏幕中间
  • L 移动到屏幕底部
  • w or W 向右移动到下一单词开头
  • e or E 向右移动到单词结尾
  • b or B 向左移动到单词开头
  • % 跳转到相配对的括号
  • gD 跳转到局部变量的定义处
  • { 跳到上一段的开头
  • } 跳到下一段的的开头
  • ( 移到这个句子的开头
  • ) 移到下一个句子的开头
  • [[ 跳转至上一个函数(要求代码块中’{‘必须单独占一行)
  • ]] 跳转至下一个函数(要求代码块中’{'必须单独占一行)

php

tinker 的输出默认不翻页
https://github.com/bobthecow/psysh/wiki/Config-options

php -d cli.pager=cat artisan tinker