[linux] Syntax error: “(“ unexpected错误,sh报错

参考:Shell 数组 Syntax error ( unexpected_.sh 使用数组报错-CSDN博客

bash 复制代码
#!/bin/bash
arr=('a')
echo ${arr[0]}

sh test.sh执行脚本的时候,报错:Syntax error: "(" unexpected错误。

而使用下面这种方式执行,则不会报错

bash 复制代码
chmod 777 test.sh
#chmod +x test.sh
bash ./test.sh
或者./test.sh

用nohup的时候,记得如果用list的话,只能用bash

bash 复制代码
nohup bash ./shells/multi_task_env.sh >nohup.out 2>&1 &

这事实上与sh执行的shell版本有关系。通过ll /bin/*sh 可以看到 执行sh的时候实际上是执行dash。

bash 复制代码
ll /bin/*sh
-rwxr-xr-x 1 root root 1113504 May  3  2019 /bin/bash*
-rwxr-xr-x 1 root root  121432 Jan 25  2018 /bin/dash*
lrwxrwxrwx 1 root root       4 May  3  2019 /bin/rbash -> bash*
lrwxrwxrwx 1 root root       4 Jun 24  2019 /bin/sh -> dash*
lrwxrwxrwx 1 root root       7 Mar  7  2019 /bin/static-sh -> busybox*
相关推荐
至此流年莫相忘2 分钟前
WSL2 下 Docker Desktop 完全配置指南:从安装到极速体验
运维·docker·容器
烂白菜2 分钟前
码道启辰:定时任务自由编排
运维·服务器·网络
悠悠1213814 分钟前
Linux 7.1 来了:新 NTFS 驱动、干掉 i486、FRED 默认开启,这次更新有点东西
linux·运维·服务器
by————组态16 分钟前
Ricon组态组件生态 - 丰富的可视化组件库
运维·前端·物联网·组态·组态软件
格发许可优化管理系统16 分钟前
Mentor许可证与其他软件许可证的深度比较
java·大数据·运维·c语言·c++·算法
睡不醒男孩03082319 分钟前
CLup篇之达梦数据库管理
运维·服务器·数据库
用户8055336980320 分钟前
Linux 工作队列:把中断里做不了的事推迟到进程上下文
linux·嵌入式
BomanGe321 分钟前
NSK直线导轨LH20HL替代升级指南
运维·服务器·数据库·经验分享·规格说明书
pingglala25 分钟前
winscp连接linux失败解决方法
java·linux·服务器
William.csj27 分钟前
Linux——普通用户离线源码编译 gcc-9 方法和调用教程
linux·服务器·gcc