// 行注释 # 注释信息 // 块注释 #!/bin/bash echo "Adding new users to LDAP Server..." <<COMMENT1 Master LDAP server : dir1.nixcraft.net.in Add user to master and it will get sync to backup server too Profile and active directory hooks are below COMMENT1 echo "Searching for user..."
赋值给变量
var=$(command)
if 判断
# 这里的-f参数判断 /data/filename 是否存在 if [ ! -f "/data/filename" ]; then echo "文件不存在" else rm -f /data/filename fi # 字符串相等 if [ "$ver"x = "20x1018191"x ]; then echo "Version=20x101819" else echo "Version!=20x101819" fi
比较两个字符串是否相等的办法是: if [ "$test"x = "test" ]; then 这里的关键有几点: 1 使用单个等号 2 注意到等号两边各有一个空格:这是unix shell的要求 3 注意到"$test"x最后的x,这是特意安排的,因为当$test为空的时候,上面的表达式就变成了x = testx,显然是不相等的。 而如果没有这个x,表达式就会报错:[: =: unary operator expected # 逻辑或 if [ "$ver" = "20x1018191" ] || [ "$ver" = "11x061121" ]; then echo "Version=20x101819" else echo "Version!=20x101819" fi
调用命令
data=$(command)
遍历字符串
commonApp="64sqlserver|64ctrl|boa_1203_arm"
for var in $(echo${commonApp} | awk '{split($0,arr,"|");for(i in arr) print arr[i]}') do echo"${var}" done