Linux shell : unexpected EOF while looking for matching `"'

标签 linux matlab shell grammar

这是一个三级 for 循环,针对三个数组:

u in userdim=(67 133 200)

i in itemdim=(78 156 234)

t in tagdim=(50 100 150).


matlab -nodesktop -nosplash -r "matlab_function('folderA/txtFile1.txt','folderB/txtFile[${userdim[${u}]} ${itemdim[${i}]} ${tagdim[${t}]}].txt',[${userdim[${u]} ${itemdim[${i}]} ${tagdim[${t}]}],2)"
# echo "u=$[${u}+1]; i=${i}; t=${t}"

其结果为

line 24: unexpected EOF while looking for matching `"'

line 30: syntax error: unexpected end of file

“matlab...”行有问题吗?尤其是单引号?

最佳答案

这不是一个有效的 for 循环 - 这只是为了向我们展示数组的值是什么?不管怎样,你的 matlab 行确实有一个错误:

[${userdim[${u]} ${itemdim[${i}]} ${tagdim[${t}]}]

应该是:

[${userdim[${u}]} ${itemdim[${i}]} ${tagdim[${t}]}]

关于Linux shell : unexpected EOF while looking for matching `"',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22553123/

相关文章:

linux - Dash,文件路径是否有任何限制

linux - 使用 awk 或 bash 在 Unix 中创建包含 0 个字节的多个空文件?

c++ - 用于编译多个 mex 函数的 Makefile

linux - 从本地 Windows PC 和 Linux 传输数据

linux - 使用 tee 命令打印垃圾字符

linux - Parse 迁移后出现 404 Not Found 错误

matlab - 为二维系统生成 fork 图

c - 动态内存分配和 NETCDF

linux - 在 linux 脚本的帮助下从一行中提取一个整数?

c - 当通过 ip_mreqn 设置多播传出接口(interface)时,Sendto 返回 -1 和 errno 22(无效参数)