2010-04-08 127 views
0

我有一個批處理文件,在執行自解壓縮文件時運行。將批處理文件路徑保存到本地硬盤

自解壓文件必須複製到硬盤上的特定目錄。

在批處理文件中,會詢問用戶路徑的位置(如果它不在默認位置)。批處理文件的

部分:

現在我的問題。

如果用戶然後輸入新路徑,是否可以保存該路徑。那麼當他再次執行自解壓文件時,它可以記住新的路徑?

+0

您確實知道有一個名爲'%ProgramFiles%'的環境變量可以讓您不必硬編碼路徑? – Joey 2010-04-18 08:50:42

+0

好的,但我似乎有問題,因爲路徑中有一個「&」號。 這裏是路徑:C:\ Program Files \ Prog&sample \ 我試圖用引號保存文本文件的路徑,但這沒有任何幫助 – Brian 2010-04-25 08:15:43

回答

1

您可以通過執行

echo %PROGRAMPATH% > "%USERPROFILE%\AppData\Local\progpath.txt" 

保存路徑下%USERPROFILE%的一些文件,然後通過做

set /p PROGRAMPATH=<"%USERPROFILE%\AppData\Local\progpath.txt" 

整批看起來像這樣

@ECHO OFF 

set PROGRAMPATH=C:\Program Files\ 

IF EXIST "%USERPROFILE%\AppData\Local\progpath.txt". (
    set /p PROGRAMPATH=<%USERPROFILE%\AppData\Local\progpath.txt 
) 

IF NOT EXIST "%PROGRAMPATH%\program.exe". (
    echo Program folder was not found. Please enter the path for Program 
    set /p PROGRAMPATH=Path: 
) 

echo %PROGRAMPATH%>"%USERPROFILE%\AppData\Local\progpath.txt" 

echo Copying data to "%PROGRAMPATH%"... 
copy /Y "*.txt" "%PROGRAMPATH%" 
閱讀
+0

嗨Ghostrider, 謝謝,它看起來可以做的招。 但是,請你告訴我要放行嗎? 它不適合我,所以也許我在錯誤的地方插入了行。 – Brian 2010-04-10 20:26:09

+0

hmmm,它將路徑很好地寫入progpath.txt,但它從不使用它。它總是問我的PROGRAMPATH – Brian 2010-04-11 08:15:02

+0

確保你使用內置的Windows回聲(而不是cygwin或類似的echo.exe)。它在Windows 7上爲我工作。YMMV – Ghostrider 2010-04-11 16:29:35

相關問題