2017-04-25 73 views
-1

我需要一個批處理文件(.bat),列出目錄中的所有txt文件,並將它們列爲變量並放入新菜單中,以便我可以運行它們。批處理文件 - 列出文件並保存爲變量

文件夾包含:

test1.php, test1.txt test2.txt, image.bmp 

那麼結果在菜單中應該是:

Press 1 for test1 
Press 2 for test2 

還應該看在子文件夾。

+3

puh - DOS是ooold。沒有命令可以做到這一點。那麼,如果你在Windows上運行'cmd',那麼它很容易... – Stephan

回答

2

假設,你是在Windows(如DOS是 「不在辦公室」,因爲幾十年...):

@echo off 
setlocal enabledelayedexpansion 

set n=0 
for /r %%a in (*.txt) do (
    set /a n+=1 
    set "menu_!n!=%%a" 
    echo press !n! for %%~nxa 
) 
set /p "take=your choice:" 
!menu_%take%! 

如需幫助,請for /?set /?

請注意,這不會在DOS上工作。即使所有命令實際存在於DOS中,它們的功能也不盡相同(當然,在DOS中沒有delayed expansion)。

+0

你可能需要用'start'來實際打開選擇'!menu_%take%!'... – aschipfl

+0

是的,'start' ,'記事本'....取決於。通常,'.txt'文件與notepad.exe相關聯。也許一對引號也是有用的。 – Stephan

+0

嗨!酷,這正是我想要的:-) Thx – Mulle1976