${#1} : 第一个参数的长度
${1} : 第一个参数
$(env | grep HOSTNAME) :去圆括号内命令的返回值
${HOSTNAME} : 返回花括号内环境变量的值
[root@desktop2 test]# cat sign.sh
#!/bin/bash
echo '${#1} = ' ${#1}
echo '${1} = ' ${1}
echo '$(env | grep HOSTNAME) = ' $(env | grep HOSTNAME)
echo '${HOSTNAME} = ' ${HOSTNAME}
[root@desktop2 test]# ./sign.sh aaaa bc
${#1} = 4
${1} = aaaa
$(env | grep HOSTNAME) = HOSTNAME=desktop2.example.com
${HOSTNAME} = desktop2.example.com
[root@desktop2 test]#