查看单个帖子
旧 2019-12-10, 20:30   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 我需要对这个MATLAB字符串中的字符进行转义吗?

我想在MATLAB中调用以下bash命令:

grep "Up to" ~/test_linux/vision1.1/log | awk '{print $7}' 我在MATLAB中使用system() ,但事实证明有错误:

>> [status string]=system('grep "Up to" ~/test_linux/vision1.1/log | awk '{print $7}' '); ??? [status string]=system('grep "Up to" ~/test_linux/vision1.1/log | awk '{print $7}' '); Error: Unbalanced or unexpected parenthesis or bracket. 我是否需要在MATLAB中将bash命令中的一些特殊字符作为字符串转义?



回答:

这应该工作:

[status string]=system('grep "Up to" ~/test_linux/vision1.1/log | awk ''{print $7}'' '); 你必须逃离'与另一个'如果你想让它显示为一个字符串的字符。对于在MATLAB中处理字符串 , '是唯一具有特殊含义的字符(它开始和结束字符串),因此它是唯一需要转义的字符。

警告:某些函数可能以不同的方式解释其字符串参数,因此要求某些字符以不同的方式转义。这些要求将出现在每个功能的文档中。这些类型的功能中有一些是我无法想到的:

更多&回答...
poster 当前离线   回复时引用此帖