2015-11-07 88 views
0

我想運行下面的命令行運行commad線使用MATLAB

'C:\Program Files\CloudCompare>CloudCompare -o C:\CloudComparetest\test.bin -SS SPATIAL 0.1' 

它運作良好(見圖片),當我按照這個辦法:

窗口 - > cmd,然後鍵入直接出現。

但我需要在matlab作業裏運行這個命令。 在線搜索給了我這個模式來運行簡單的命令:

它的工作原理:

 command = 'C:\Program Files\CloudCompare\CloudCompare.exe'; 
    [status,cmdout] = system(command) 
status=0; 

但想這給了我的錯誤:(我知道這是不是標準的DOS命令可以是任何其他的解決辦法。

% command = 'C:\Program Files\CloudCompare>CloudCompare -o C:\CloudComparetest\test.bin -SS SPATIAL 0.1'; 
    % status = dos(command) 
status=1; 

我還試圖

% command = 'C:\Program Files\CloudCompare\CloudCompare -o C:\CloudComparetest\test.bin -SS SPATIAL 0.1'; 
% status = dos(command) 

狀態= 1 ;

enter image description here

錯誤:cloud.bat

運行時,無論是指令不正確或無法找到。

dos('"C:\MyPHDCODE\COLOR_SCANS\cloud.bat"') 
C:\MyPHDCODE\Chapter5\COLORIMAGES>C:\Program Files\CloudCompare\CloudCompare -o C:\CloudComparetest\test.bin -SS SPATIAL 0.1 pause 
Der Befehl "C:\Program" ist entweder falsch geschrieben oder 
konnte nicht gefunden werden. 

ans = 

    1 

[![在這裏輸入的形象描述] [2] [2]

回答

2

注意你必須在你的路徑名稱中的空格,且a>。替換>與\和「請將命令」,這會讓CMD正確運行的命令(如果沒有其他錯誤)

將這個文本文件名爲cloud.bat:
"C:\Program Files\CloudCompare\CloudCompare" -o C:\CloudComparetest\test.bin -SS SPATIAL 0.1 pause

(空間0.1應該與其餘行相同,在新行上暫停)

然後從dos命令中調用cloud.bat。您應該將cloud.bat放在當前的MatLab目錄中。

編輯:我在這裏的意思是,你應該從MatLab調用cloud.bat,我可以看到它可以被誤解。

運行此操作時,您可以看到來自CloudCompare的任何錯誤消息。

+0

我試過''C:\ Program Files \ CloudCompare \ CloudCompare -o C:\ CloudComparetest \ test.bin'''但沒有成功'''。它沒有工作。 – Shahgee

+0

這是正確的路徑嗎?爲了測試,你可以把命令放在bat文件中,然後暫停,從matlab中調用bat,然後你可以看到來自cmd的錯誤信息 – Stefan

+0

我不明白bat-file的概念。我認爲問題是空間。我不知道如何完成它。 – Shahgee