轶哥

📚 Having fun with AI Agent. Always learning.

Windows安装rsync命令一键脚本
  •   更新:2023-06-13 23:57:26
  •   首发:2023-05-09 21:45:26
  •   shell
  •   2857

在Windows上安装rsync通常需要使用诸如WSL2或Cygwin等解决方案。然而,这些方法可能会导致性能下降、系统资源占用高以及用户体验不佳等问题。因此,我们将通过一个简单的PowerShell脚本来安装cwRsync,避免上述问题。

请注意: 执行这个脚本意味着您同意cwRsync的相关协议。

C++ LLVM生成测试覆盖率
  •   更新:2023-05-25 17:13:13
  •   首发:2023-05-25 17:13:13
  •   shell
  •   1972

测试覆盖率是衡量软件测试质量的一个重要指标,它表示在运行测试用例时,被执行到的代码占总代码数的百分比。通过测试覆盖率,我们可以评估测试集对源码的覆盖程度及潜在漏洞。

本文将介绍两种使用LLVM实现C++测试覆盖率的方法:

  • 方案1 使用lcov和llvm-cov将gcda文件转换为lcov.info文件。
  • 方案2 使用grcov。
ssh一键部署frpc内网穿透脚本
  •   更新:2023-03-22 23:05:33
  •   首发:2023-03-13 23:22:16
  •   shell
  •   1934

以下是实现自动安装frpc的Shell脚本,实现ssh的22端口内网穿透,注册systemd服务开机自动启动。

直接使用线上地址快速下载并执行Shell脚本一件部署可以使用以下命令:

使用curl:

curl -sSL https://openapi.site/install_frpc.sh | bash -s 端口号 token server_addr [server_port=7000]

使用wget:

wget -qO- https://openapi.site/install_frpc.sh | bash -s 端口号 token server_addr [server_port=7000]

其中端口号、token、server_addr为必须传入的参数,server_port为可选参数,如果没有传入则默认为7000。请根据自己的需要替换相应的参数值。

执行Shell脚本报错:/bin/bash^M: bad interpreter 解决方法
  •   更新:2023-03-21 18:25:20
  •   首发:2023-03-21 18:25:20
  •   shell
  •   666

执行Shell脚本提示:

/bin/bash^M: bad interpreter: No such file or directory
...

这个问题是由于在 Windows 系统中创建或编辑的 shell 脚本文件,在行尾使用了 Windows 风格的换行符(CRLF,即回车+换行),而非 Unix 风格的换行符(LF,即换行)。当您在 Unix 或 Linux 系统上运行这个脚本时,它不能正确解析这个 Windows 风格的换行符,从而导致报错。

Linux安装微信并设置缩放与快捷键
  •   更新:2022-10-28 16:14:59
  •   首发:2022-06-12 23:00:42
  •   shell
  •   3936

由于没有得到官方适配,在Linux中安装微信的最佳方案是使用Wine。

借助开源项目https://github.com/zq1997/deepin-wine,我们可以非常方便的在Linux中安装微信。只不过安装完成后设置缩放及绑定快捷键并非易事。特整理具体方法如下。

以下方法在Ubuntu 22.04、Ubuntu 20.04、Kali Linux 2022.2(Debian)测试通过。

Linux网卡优先级配置及同时访问内外网设置
  •   更新:2022-05-02 14:47:20
  •   首发:2022-05-02 12:15:11
  •   shell
  •   10434

在Linux系统中,双网卡或多网卡上网并不会同时使用两者同时上网,只会优先把请求发送到优先级高的默认网关(对应网卡的内网网段除外)。插入多个网卡的时候,路由表中就会存在多个默认网关,访问外部网络的时候,系统根据路由原则,Metric值小的网卡优先级高,会优先使用该网卡上网。

在MacOS系统中,设置网卡优先级只需要在系统偏好设置-网络中设置设定网卡服务顺序,具体操作见《MacOS 同时使用内网和外网(双网卡同时联网)》。

在Windows系统中,设置网卡优先级只需要设置网卡的跃点数,具体操作见《win10链路聚合,双网卡带宽叠加负载均衡》(win11同理)。

而在Linux系统中,设置网卡优先级需要修改路由表配置,调整默认网关的Metric值。

Shell异步延迟执行命令
  •   更新:2022-05-02 14:44:44
  •   首发:2022-05-02 11:22:48
  •   shell
  •   3616

在Shell脚本中,特别是Linux操作系统内置的各项启动脚本,经常会遇到需要延迟异步去执行的命令。例如在/etc/rc.local文件或配置网卡相关的脚本文件里面,希望对应脚本能够先返回exit 0以免阻塞任务,然后再异步的去执行不关注执行结果的一些命令,甚至延迟执行异步命令。

在*nux命令中,命令 &为后台进程命令(放在命令参数最后面的&表示设置此命令后台执行)。

因此,在Shell中,命令之后跟上&即异步去执行该命令。

sleep是延时命令,sleep 1代表将命令延迟1秒后执行。

MacOS 12.3 无法正常使用code命令的解决方法
  •   更新:2022-04-17 14:59:53
  •   首发:2022-02-03 23:32:40
  •   shell
  •   13809

从MacOS 12.3 Beta版本开始,系统将不再内置python2且将无法正常安装python2,无论是intel芯片还是Apple芯片的设备都无法安装。原因是/usr/bin/python的软链接无法正常被删除或覆盖。并且默认不开启python3命令。

2022年04月17日14:58:00更新: 从MacOS 12.4 Beta版(21F5048e) 开始,可以通过pyenv在intel和Apple芯片中安装python2。详细方法见《brew安装python2》

因此可能会导致一系列依赖python命令的应用程序无法运行。

例如将会遇到VS(Visual Studio Code)无法使用code命令。

➜  saas-web git:(892f9ef) ✗ code .
/usr/local/bin/code: line 6: python: command not found
/usr/local/bin/code: line 10: ./MacOS/Electron: No such file or directory

由此也可能导致"Visual Studio Code - Insiders" needs to be updated on macOS Monterey弹窗的问题。

  上一页 下一页