2016-03-08 136 views
0

我可以通過命令行運行此命令:命令失敗

 REG QUERY "HKLM\someregkey" > c:\filename.text 

那麼我可以運行一個循環按行讀入行並導出每個子項

 FOR /F "usebackq tokens=6 delims=\" %G IN  ("c:\filename.txt") DO (REG EXPORT "HKLM\someregkey\%G" "E:\directory\%G.reg" /y) 

但是,當我批量運行它,我得到1>,它不會執行。我很久以前就有過這個問題,但忘記了我是如何通過它的。

有什麼建議嗎?

回答

0

1>是重定向的正確命令。對於MSDos兼容性原因,CMD自動修復>1>。你只能看到它發生在批處理文件中。 1是文件句柄,控制檯屏幕(標準輸出),是鍵盤(stdin),被錯誤發送到屏幕(stderr)。

您的代碼在批處理文件中不起作用,因爲您需要使用For變量%%G%G鍵入時,%%G在一個批次中。請參閱for /?