bash - 简单的 shell 脚本程序中的错误
问题描述
我是 shell 脚本的新手,在一个简单的程序中遇到了一些语法错误。我读取一个整数并将其与某个值进行比较以显示结果请告诉我如何纠正它。
#! /bin/bash
read n
if [ "$n" -le 12 ]
then
echo "a kid"
elif[ "$n" -lt 18 ]
then
echo "a teen"
else
echo "an adult"
fi
错误是:
./hello.sh: line 8: syntax error near unexpected token `then'
./hello.sh: line 8: `then'
解决方案
您在elif
and[
之间缺少一个空格,这会导致稍后出现解析错误。
为了将来参考,shellcheck工具是诊断此类错误的好方法。
推荐阅读
- cassandra - “nodetool:无法连接到'127.0.0.1:7199' - ConnectException:'连接被拒绝(连接被拒绝)'”有什么解决方案吗?
- python - 使用基本相同的代码但 2 个不同的结果抓取 2 个网站(相同的结构)?
- python - 从 py 文件导入函数 - 奇怪的错误消息
- json - 使用 Subprocess 运行 AWS cli 命令
- python - f字符串中输入法中的更多引号
- c# - ContentPresenter 未在 ControlTemplate Xamarin Forms 中显示内容
- sql - 查询运行时间过长,如何优化?
- ajax - 获取错误 CSRF 令牌不匹配 laravel 7
- typo3 - Typo3 安装扩展后崩溃,现在无法访问实时站点或后端:解析错误:语法错误
- angular - 如何使弹性孩子遵循兄弟姐妹的大小