上下文:Oracle企業管理器具有「執行主機命令」功能。如果進入該功能,輸入「dir c:\ temp」,那麼輸出窗口回顯命令,然後顯示一個目錄列表。如果進入該功能,輸入「powershell dir c:\ temp」,則輸出窗口只顯示echo'd命令。沒有目錄列表。如果在目標機器上,我在這兩種情況下都輸入這兩個命令,然後獲得echo'd命令,然後是目錄列表。如何強制調用命令的STDOUT調用cmd.exe的STDOUT?
我推測,我在客戶端的cmd.exe窗口中看到的內容混合了兩個標準輸出流:一個來自cmd.exe本身,另一個來自調用進程(powershell dir c:\ temp)。 Oracle的東西似乎只能識別cmd.exe的stdout。
是否有某種方法可以強制被調用進程中的stdout位於cmd.exe的stdout流中,以便Oracle能夠識別它,並且我正在嘗試構建的東西會起作用?
原來我也需要cmd.exe/c。我的舊批處理編程書(「MS-DOS批處理文件編程包括OS/2」)沒有和符號。對於那些可能需要它的人來說,這是一個稍微更新的參考:http://technet.microsoft.com/en-us/library/bb490954.aspx – Quixote 2012-07-06 12:06:52