我試圖讓批處理文件接受用戶輸入並將其置於文件中...這是我的代碼。批量寫入文件
set /p input path=Path:
echo %path% >> log.txt
當我打開回聲關閉
,它把人字形 「1」 盈像這樣:
echo C:/Example/Path 1>> log.txt
the system can not find the file specified.
請任何人都可以解釋這
我試圖讓批處理文件接受用戶輸入並將其置於文件中...這是我的代碼。批量寫入文件
set /p input path=Path:
echo %path% >> log.txt
當我打開回聲關閉
,它把人字形 「1」 盈像這樣:
echo C:/Example/Path 1>> log.txt
the system can not find the file specified.
請任何人都可以解釋這
您的SET
聲明是錯誤的。 :-)此外,PATH
已分配的環境(在Windows PATH
,並改變它可能會導致問題在批處理文件中運行其他命令
試試這個:
set /p "Input=Path: "
echo %Input% >> log.txt
試試這個:
set /p "MyNewPath=Path: "
>>log.txt echo %MyNewPath%
當然 - 我「會回答提出的問題。
本來>somewhere
或任何重定向將數據發送到指定的目標。
隨着更改NT版本,這是擴大。直接位於重定向器之前的數字表示logical file number
,其中0 = STDIN(標準輸入)1 = STDOUT(標準輸出),2 = STDERR(標準錯誤)。其他0未定義。此可以原因的問題,其中的數據(典型地)要被輸出以數字結束,因此>filename echo ...
語法
因此,爲了向後兼容,(例如)>nul
仍然處理爲它一直是,但它是ECHO
ed以其明確格式1>nul
- 將STDOUT發送到nul
以區分它2>somewhere_else
非常感謝 - 非常有幫助。 – William
這根本不起作用。 – William
這裏工作,錯誤味精? – Endoro