Bash 脚本的参数等

bash 的 $值

  • $0 : 表示当前脚本的名称
  • {BASH_SOURCE\[0\]} : 表示当前 Bash 脚本文件的路径,可以理解为 0 的安全版本,防止被修改。
  • $1 : 表示第一个参数,以此类推
  • $@ : 表示所有传入脚本的参数
  • UID : 表示当前用户的 ID 号。如果当前用户是 root 用户,则 UID 的值为 0。
  • (cd (dirname ${BASH_SOURCE[0]})/...; pwd) : 当前脚本所在目录的上一级目录
  • export CPU_COUNT="$(grep -c 'cpu[0-9][0-9]*' /proc/stat)"
     该命令使用 grep 命令在 /proc/stat 文件中查找以 "cpu" 开头的行
     并使用 -c 选项计算匹配的行数,即可得到当前系统的 CPU 核心数。然后
     将计算结果赋值给 CPU_COUNT 环境变量,以便后续的脚本可以使用这个变量。

bash 比较运算符

  • -eq 是一个比较运算符,用于判断两个数字是否相等

bash 操作符

&&

表示逻辑与操作符,用于连接两个命令。如果第一个命令执行成功,则会执行第二个命令。

bash 关键字

export

  • export : 是一个关键字,用于将一个变量或函数导出为环境变量或全局函数,使得其他子进程也能够访问这些变量或函数。

ulimit

  • ulimit -c unlimited : 命令使用 ulimit 命令将核心转储文件限制设置为 unlimited,以便在出现程序崩溃等问题时能够生成大型的核心转储文件,以便调试和排查问题。

test

test 命令用于进行条件测试,-z 表示测试一个字符串是否为空

  • test -z "$NGINX_SKIP" && NGINX_SKIP=0
相关推荐
哈哈不让取名字3 分钟前
分布式日志系统实现
开发语言·c++·算法
3GPP仿真实验室3 分钟前
【MATLAB源码】6G:感知辅助毫米波 MIMO 信道估计仿真平台
开发语言·matlab·智能电视
catchadmin16 分钟前
Laravel12 + Vue3 的免费可商用 PHP 管理后台 CatchAdmin V5.1.1 发布
开发语言·php
编程(变成)小辣鸡34 分钟前
JVM、JRE和JDK 的关系
java·开发语言·jvm
a程序小傲1 小时前
得物Java面试被问:流批一体架构的实现和状态管理
java·开发语言·数据库·redis·缓存·面试·架构
xb11321 小时前
C#异步编程入门概念及核心概念
开发语言·c#
黎雁·泠崖1 小时前
Java继承:成员变量访问(就近原则+this/super用法)
java·开发语言
ShineWinsu1 小时前
对于C++:模版初阶的解析
开发语言·c++·面试·笔试·函数··模版
Max_uuc1 小时前
【C++ 硬核】告别 Excel 生成数组:利用 constexpr 实现编译期计算查找表 (LUT)
开发语言·c++·excel
墨雨晨曦881 小时前
leedcode刷题总结
java·开发语言