
我需要一個本機命令或一個輕量級簡單的第三方實用程序,我可以使用它們在批處理文件中設置環境變量,但將其限制為一定數量的字元。
例如:
在此輸入訊息(最多 28 個字元):
那麼用戶當然只能輸入28個字元。
有任何想法嗎?
謝謝!
答案1
經過一番搜索,xcopy
似乎是最可靠的選擇。
set "key="
for /f "delims=" %%A in ('xcopy /w "%comspec%" "%comspec%" 2^>nul') do if not defined key set "key=%%A"
set "key=!key:~-1!"
取得一個密鑰,您可以用它來建立輸入。
if "!input:~-%length%!" == "!input!"
允許檢查長度(在您的情況下為 28)。
您還可以input.bat
我寫的腳本。透過使用宏,您可以獲得腳本的輸出。首先聲明巨集:
set input=^
for %%. in (1 2) do if %%.==2 (^
for /F "delims=" %%I in ('input.bat !args!') do ^
set "result=%%I"^
) else set args=
然後你像這樣使用它:
setlocal EnableDelayedExpansion
%input% "prompt=Password: " "length=28"
然後您可以使用該result
變數來獲取輸入。
重要的
為了定義巨集延遲擴充需要停用。然而在使用的過程中,需要延遲擴展啟用。
資源
x複製輸入- DosTips.com
批次宏- DosTips.com