Shell
共 12 篇文章
通过 HTTP 服务器同步时钟
当NTP服务不可用或受限时,可通过HTTP服务器响应头中的Date字段同步时钟。使用curl获取响应头,awk提取日期,date -s命令设置本地时间。该方法依赖服务器时间准确性,需root权限,适合临时校准,不建议长期使用。
Shell 脚本 while read 与 ssh 组合使用
在bash脚本中,while read循环搭配ssh使用时,循环仅执行一次即退出。原因是:while循环通过重定向将文件内容读入缓冲区作为标准输入,read从中逐行读取;而ssh默认也从标准输入读取数据,消耗了缓冲区剩余内容,导致后续read无输入可读,循环终止。解决方法有三:一是阻断ssh读取标准输入,如使用ssh -n选项或重定向/dev/null;二是让read从文件描述符读取,避免与stdin冲突;三是改用for循环遍历文件内容,避免标准输入竞争问题。
shell 脚本 source 技巧
本文演示在Shell脚本中使用source命令调用外部脚本的函数和变量。为避免重复调用导致的副作用,采用条件检查如if [ -n "$func_var" ]; then return; fi。此外,通过BASH_SOURCE变量控制脚本执行,确保仅在被直接运行时输出额外内容,否则只提供函数和变量。
Shell 脚本检查 SSL 证书颁发时间、到期时间
ssl-check是一个bash脚本,用于检查SSL证书的颁发时间、到期时间、剩余时间和颁发机构。支持通过命令行参数指定域名、列表、超时时间、时区等选项,并可生成日志文件。提供CentOS、Ubuntu等系统的安装指南和使用示例。
MAC 终端美化-iTerm2
本文介绍在macOS系统上安装Homebrew包管理器,安装iTerm2终端并设为默认,配置主题、背景图片和透明度,安装imgcat工具用于终端查看图片,安装lrzsz实现文件传输,配置iTerm2触发器,以及启用Touch ID认证简化sudo操作。
kickstart 构建 checkra1n.iso (Live CD)
本文介绍使用CentOS 7和Kickstart构建包含checkra1n工具的Live CD。步骤包括下载checkra1n、挂载CentOS镜像、加密root密码、编写Kickstart配置文件(设置语言、分区、网络、软件包等)、验证文件并生成ISO。尝试用Ubuntu构建失败,因工具不维护。
Linux 制作 ISO 镜像文件
本文介绍制作本地yum镜像并挂载使用的流程:创建目录下载软件包,生成yum仓库后用genisoimage制作ISO镜像,挂载至/mnt并配置yum源,生成缓存后成功安装软件测试,实现离线yum源搭建。
使用 Surge 做 iperf3 客户端测试网络性能
服务端编译安装iperf3,启动服务并放行5201端口,设置开机自启;客户端在Surge工具的iPerf测试中填写服务器IP进行网络性能测试。