Matlab找到命令窗口输出的位置

时间:2016-07-05 08:34:45

标签: matlab

我看了一下类似的question ,但答案以及内部的链接问题与我的确切问题不符。

假设我有几个由程序执行的Matlab文件。在执行代码期间,我在命令窗口中收到多个输出,我想要删除它。当然,我只能grep所有dispprintf命令,没问题。但是,也有可能,某些计算打印出来的东西没有Matlab给我一个丢失分号的警告。一个例子是

function dummy1
norm(1)
end

哪个会将1打印到命令窗口,但是Matlab没有给我一个丢失分号的警告,因为它会是

的情况
function dummy2
1+1
end

有没有办法检测打印到命令窗口的命令的位置?

1 个答案:

答案 0 :(得分:0)

没有必要使它过于复杂。只需在代码中放置一些断点并逐步执行,直到找到产生不需要的输出的那些行。然后用SELECT OrderStatus, Sum_SellPrice, Sum_SellerMargin, Sum_BuyPrice, OrderDate FROM Sum_OrderCharges WHERE (OrderStatus IN ('Completed', 'Invoiced', 'Open')) AND (OrderPeriodYear IN ('2015','2016')) AND (MONTH(OrderDate) = MONTH(GETDATE())) and (day(OrderDate) <= DAY(GETDATE())) ORDER BY OrderDate 抑制输出。最佳做法是永远不要忽略;。如果要快速显示内容,请使用;之类的命令。

此外,您应该习惯通过适当的记录器记录所有内容,例如log4j。这使您可以通过简单的配置(也可以通过编程方式更改)对实际记录的内容进行细粒度控制。如果您已经使用它,那么找出哪条日志消息打印在哪里就不会有问题,因为您看到了打印它的组件名称。