跳转至

shell 知识

  • 去掉数字前导零
    num=$((10#$num))
    
    10# 意思是把 $num作为十进制数来处理,这样就可以去掉前导零了。
应用例子

应用例子:为创建 254 个机子生成 254 个 yaml 文件,第一个文件和主机的名称格式为 mysql-001(mysql-001 到 mysql-254),001去掉前导零后用于设置 IP 地址(10.96.12.1 到 10.96.12.254)。

for i in {001..254} ; do /bin/cp vm-tpl.yaml mysql-${i}.yaml ;  sed -i -e "s/nnnn/$((10#$i))/g" -e "s/vmtest/mysql-${i}/g" mysql-${i}.yaml; done

  • 变量赋值:取命令行第 1 取参数的值,如果不传参则赋值 1。就像三元表达式 $1 ? $1 : 1
    RECORDS_PER_SECOND=${1:-1}
    

字符串运算符

  • -z 检查字符串的长度,为零时返回 true。

文件测试运算符

  • -d 检测指定文件是否是目录,如果是,则返回 true。
创建时间: 2024-05-10 10:04:43 最后更新: 2024-06-13 15:38 更新次数: 2 浏览次数: