2012-11-30 96 views
1

我有1列,它要求用戶輸入或流,他們想看,但一列是不夠的,所有渠道拳頭。如何在批處理文件中創建兩列?

下面是它的外觀截圖。
enter image description here


如何讓它在第一列顯示1到10,在第二列顯示11到20。

這是我的代碼..不包括流鏈接。

<br><br> 
@echo off 
rem mode con:cols=60 lines=16 
mode con:cols=50 lines=40 

:VRH 
title HD Indian Channels By 
cls 
COLOR 0E 
echo  Install VLC Player & OctoShape: VLC Player 
echo  Select Channel Number You Want To Watch! 
echo. 
echo    (1) = Sahara Samay  +1 
echo    (2) = India TV   +2 
echo    (3) = NDTV Hindi  +3 
echo    (4) = Sahara Mumbai +4 
echo    (5) = Times Now  +5 
echo    (6) = Saharah AP  +6 
echo    (7) = News X   +7 
echo    (8) = Punjabi   +8 
echo    (9) = Al Jazeera Sport +9 
echo    (10) = Al Jazeera Sport +10 
echo    (11) = Aaj Tak   +11 
echo    (12) = Headlines Today +12 
echo    (13) = UTV Bindaas  +13 
echo    (14) = HumTV   +14 
echo    (15) = M Tunes   +15 
echo    (16) = HumTV   +16 
echo    (17) = Masalaa TV  +17 
echo    (18) = Zee Cinema  +18 
echo    (19) = B4u Music  +19 
echo    (20) = Zing    +20 
echo    (21) = Zee TV   +21 
echo    (22) = ETV US   +22 
echo    (23) = Zoom TV   +23 
echo    (24) = Al Jazeera Eng +24 
echo    (25) = 9xm Jalwa  +25 
echo    (26) = Headlines Today +26 
echo    (27) = UTV US Movies +27 
echo    (28) = UTV Bindaas  +28 
echo    (29) = UTV Bindaas  +29 
echo    (30) = UTV Bindaas  +30 
echo. 
echo      (O) = Izlaz 

if exist C:\Progra~1\VideoLAN\VLC (set "vlc=C:\Progra~1\VideoLAN\VLC\vlc") 
if exist C:\Progra~2\VideoLAN\VLC (set "vlc=C:\Progra~2\VideoLAN\VLC\vlc") 
if exist C:\Program Files\VideoLAN\VLC (set "C:\Program Files\VideoLAN\VLC\vlc") 
if exist D:\Program Files\VideoLAN\VLC (set "D:\Program Files\VideoLAN\VLC\vlc") 
if exist C:\Program Files (x86)\VideoLAN\VLC (set "C:\Program Files (x86)\VideoLAN\VLC\vlc") 
if exist C:\Program Files(x86)\VideoLAN\VLC (set "C:\Program Files(x86)\VideoLAN\VLC\vlc") 
if exist C:\Program Files (x64)\VideoLAN\VLC (set "C:\Program Files (x64)\VideoLAN\VLC\vlc") 
if exist C:\Program Files(x64)\VideoLAN\VLC (set "C:\Program Files(x64)\VideoLAN\VLC\vlc") 

set /p "Choice=>" 

IF "%Choice%"=="0" GOTO 0 
IF "%Choice%"=="1" GOTO 1 
IF "%Choice%"=="2" GOTO 2 
IF "%Choice%"=="3" GOTO 3 
IF "%Choice%"=="4" GOTO 4 
IF "%Choice%"=="5" GOTO 5 
IF "%Choice%"=="6" GOTO 6 
IF "%Choice%"=="7" GOTO 7 
IF "%Choice%"=="8" GOTO 8 
IF "%Choice%"=="9" GOTO 9 
IF "%Choice%"=="10" GOTO 10 
IF "%Choice%"=="11" GOTO 11 
IF "%Choice%"=="12" GOTO 12 
IF "%Choice%"=="13" GOTO 13 
IF "%Choice%"=="14" GOTO 14 
IF "%Choice%"=="15" GOTO 15 
IF "%Choice%"=="16" GOTO 16 
IF "%Choice%"=="17" GOTO 17 
IF "%Choice%"=="18" GOTO 18 
IF "%Choice%"=="19" GOTO 19 
IF "%Choice%"=="20" GOTO 20 
IF "%Choice%"=="21" GOTO 21 
IF "%Choice%"=="22" GOTO 22 
IF "%Choice%"=="23" GOTO 23 
IF "%Choice%"=="24" GOTO 24 
IF "%Choice%"=="25" GOTO 25 
IF "%Choice%"=="26" GOTO 26 
IF "%Choice%"=="27" GOTO 27 
IF "%Choice%"=="28" GOTO 28 
IF "%Choice%"=="29" GOTO 29 
IF "%Choice%"=="30" GOTO 30 


echo. 
echo Odaberi od 1 do 10... 
echo. 
ping localhost -n 3 >nul 
goto VRH 

不包括,如果選擇我不認爲所有需要的情況下..

:0 
cls 
echo Al Jazeera Sports in VLC by D3n1s 
ping localhost -n 3 >nul 
exit /b 
+0

你的意思是顯示一個頁面上排1-10,讓用戶點擊一個鍵,然後顯示下10行,等等......? – RonaldBarzell

+0

我看到一些批處理文件,用戶有我問的方式,這可能嗎? – Mowgli

+1

那麼,你有兩個答案。如果這不是你想要的,也許你可以發佈一個你想要的樣子。這會讓你想要的非常清楚。 – RonaldBarzell

回答

1

如果你想在同一行屏幕顯示兩列,你必須裝配在所需的輸出(兩列) echo命令。要做到這一點,你必須有辦法分開兩列;通常的做法是使用TAB字符。爲了獲得在Win-XP製表符,你可以使用此代碼:

for /F "skip=4 delims=pR tokens=1,2" %%a in (
     'reg query hkcu\environment /v temp') do set TAB=%%b 

要顯示出你想要的方式輸出(「顯示1至10中第一列和11至20日在第二列」) ,您可以使用此代碼:

@echo off 
setlocal EnableDelayedExpansion 
rem Get TAB character 
for /F "skip=4 delims=pR tokens=1,2" %%a in (
     'reg query hkcu\environment /v temp') do set TAB=%%b 

rem Show the desired output 
echo    (1) = Sahara Samay  +1!TAB!(11) = Aaj Tak   +11 
echo    (2) = India TV   +2!TAB!(12) = Headlines Today +12 
echo    (3) = NDTV Hindi  +3!TAB!(13) = UTV Bindaas  +13 
echo    (4) = Sahara Mumbai +4!TAB!(14) = HumTV   +14 
echo    (5) = Times Now  +5!TAB!(15) = M Tunes   +15 
echo    (6) = Saharah AP  +6!TAB!(16) = HumTV   +16 
echo    (7) = News X   +7!TAB!(17) = Masalaa TV  +17 
echo    (8) = Punjabi   +8!TAB!(18) = Zee Cinema  +18 
echo    (9) = Al Jazeera Sport +9!TAB!(19) = B4u Music  +19 
echo    (10) = Al Jazeera Sport +10!TAB!(20) = Zing    +20 

不過,我強烈建議您在陣列來管理這種類型的數據。進一步的細節見this link

您可以查看和先進的批處理程序,顯示兩列數據爲this post

我希望它可以幫助...

安東尼

+0

非常感謝您的意見。 – Mowgli

1

使用您的標籤按鈕。還要檢查MORE和LESS utils。

1

假設你正在嘗試進行分頁(顯示幾行,然後暫停而用戶按下一個鍵,然後顯示下一組等),那麼你可以插入暫停你想讓它等待每一個地方。然後系統將暫停並要求用戶按任意鍵繼續,當用戶完成時,它將繼續。

例如:

echo    (1) = Sahara Samay  +1 
echo    (2) = India TV   +2 
echo    (3) = NDTV Hindi  +3 
echo    (4) = Sahara Mumbai +4 
echo    (5) = Times Now  +5 
echo    (6) = Saharah AP  +6 
echo    (7) = News X   +7 
echo    (8) = Punjabi   +8 
echo    (9) = Al Jazeera Sport +9 
echo    (10) = Al Jazeera Sport +10 
pause 
echo    (11) = Aaj Tak   +11 
echo    (12) = Headlines Today +12 
echo    (13) = UTV Bindaas  +13 
echo    (14) = HumTV   +14 
echo    (15) = M Tunes   +15 
echo    (16) = HumTV   +16 
echo    (17) = Masalaa TV  +17 
echo    (18) = Zee Cinema  +18 
echo    (19) = B4u Music  +19 
echo    (20) = Zing    +20 
pause 

等等

+0

感謝您提供備用解決方案 – Mowgli