2012-08-28 147 views
0

我有一個本地運行PHP腳本在此如何以靜默方式取消映射映射網絡驅動器

exec('subst T: C:\\Development'); 

但如果T I辦:已映射或SUBST」到其他位置我想先取消映射它。所以我做這個

exec('net use T: /DELETE /y'); 
exec('subst T: /D'); 

但是當T:沒有映射的高管淨使用將錯誤打印到控制檯,當它映射而不是SUBST」的EXEC SUBST將打印錯誤的安慰。我希望在控制檯窗口中有乾淨的輸出,因此在嘗試取消映射未映射的驅動器時不會出現錯誤。問題是我絕對沒有線索如何去解決這個問題..我可以打印錯誤消息嗎?如果不是,只有驅動器映射時才能運行命令?那麼,巧合的是,我怎麼知道我是否應該使用net use/d或subst/d?

回答

2

在每個命令之後添加一個> NUL以將其輸出管道輸出到...無處。 即exec('net use T: /DELETE /y > NUL');

+1

我認爲它應該是'exec('net use T:/ DELETE/y 2> NUL');'因爲我們想將STDERR重定向爲null。 – cleong