我必须验证读取的变量的长度(我的脚本限制为插入的五个字符),我在想这样的事情:
#!/bin/bash
read string
check=${#string}
echo $check
if [ $check -ge 5 ]; then echo "error" ; exit
else echo "done"
fi
还有更“优雅”的解决方案吗?
@Celada,在这种情况下,虽然如此,
—
斯特凡Chazelas
dash
的${#string}
会给你以字节为单位,而不是字符数的长度。
/bin/sh
。您应该考虑将shebang行更改为,#!/bin/sh
以便它更易于移植并可以在无法使用bash的环境中运行。另外,/bin/sh
可能是像dash这样的更轻便的外壳,而没有用于交互式使用的功能。