VideoHelp Forum
+ Reply to Thread
Results 1 to 8 of 8
Thread
  1. iH

    and however ().

    I try a simple script that allow 9 choices, but seems that is not possible have more of 9 choices (if I try to select "10" it run the "1"), I need at least 20 choices.

    Please is there a way to build a script that allow someting that 20 choices of the type:

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...


    Code:
    set /P rmFunc="Enter a choice: "
    echo --------------------------------------------------------------------
    for %%I in (1 2 3 4 5 6 7 8 9) do if #%rmFunc%==#%%I goto run%%I
    goto begin
    
    :run1
    
    
    :run2
    
    
    :run3
    
    
    :run4
    
    
    :run5
    ? thanks
    Quote Quote  
  2. Not sure which OS you are using but I think the command you want is 'shift'. It moves each parameter value to the previous one so you can keep extending how many you want to use.
    Look for help with the 'shift' command in scripts.

    Brian.
    Quote Quote  
  3. Member Cornucopia's Avatar
    Join Date
    Oct 2001
    Location
    Deep in the Heart of Texas
    Search PM
    Not sure if it will work, but have you even TRIED using 2 digits? (01, 02, 03...)?

    Also, as it is currently, if you choose "1" it will run run1, but when finished, it will also run run2, run3, etc. You need "GoTo End" escape sequences. Unless you were wanting it like that?

    Scott
    Quote Quote  
  4. Image
    [Attachment 69014 - Click to enlarge]


    no 01 - 02 - 03 ...

    sorry

    I need to press simply 1 or 2 or 3 or ... 11 or 12 or 13 or 14

    if possible. Windows yes
    Quote Quote  
  5. Member Cornucopia's Avatar
    Join Date
    Oct 2001
    Location
    Deep in the Heart of Texas
    Search PM
    that's not how numbers work on computers

    btw, I just tested it, it DOES work with "01" etc.
    you also need to tidy up your loops and account for edge cases

    Scott
    Quote Quote  

  6. Hi, this is friendly cat, use subroutines, otherwise your code might turn up to be a jumping nightmare sort of
    Code:
    @ECHO off
    
    :: MAIN THREAD
    
    :options
    call :options_menu
    call :%line_name%
    if errorlevel 1  goto :options
    
    echo press any key to exit ... & pause>nul & exit
    
    
    
    :: MY SUBROUTINES
    
    
    :options_menu
    set "input="
    set /P input=choose 1 to 20:
    if not defined input goto :options_menu
    call set line_name=run%input%
    goto :eof
    
    :run1
    echo my subroutine was found!, it has 1 in it
    goto :eof
    
    :run20
    echo my subroutine was found!, it has 20 in it
    goto :eof
    Last edited by _Al_; 2nd Feb 2023 at 13:57.
    Quote Quote  
  7. you can also pass variables to those subroutines, that text within <> is just for your information so you keep the track what is coming to what subroutine (was ndjamena idea, very handy):
    Code:
    @ECHO off
    
    :: MAIN THREAD
    
    set "some_variable=007"
    
    :options
    call :options_menu
    call :%line_name% %input% %some_variable%
    if errorlevel 1  goto :options
    
    echo press any key to exit ... & pause>nul & exit
    
    
    
    :: MY SUBROUTINES
    
    
    :options_menu
    set "input="
    set /P input=choose 1 to 20:
    if not defined input goto :options_menu
    call set line_name=run%input%
    goto :eof
    
    :run1 <input> <some_variable>
    echo my subroutine was found!, it has 1 in it
    echo my variables are %1 , %2
    goto :eof
    
    :run20 <input> <some_variable>
    echo my subroutine was found!, it has 20 in it
    echo my variable are %1 and %2
    goto :eof
    it is much easier to work with those variables in subroutines as %1, %2 etc.
    Quote Quote  
  8. Ahh

    thanks. Maybe maybe I made a mistake of 1 space in the

    Code:
    set /P rmFunc="scielta= "
    that have to be

    Code:
    set /P rmFunc="scielta="
    (scielta italian = choise english)

    so this semms works and is inspirated

    echo ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄ¿
    echo ³ 0 = esce ³
    echo ³ ³
    IF "%CONFI%"=="1" IF "%scanInterlace%"=="1" echo ³ 1 = concatena e codifica in MXF 50i senza Masking [consigliata se devi fare un MXF] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 1 = concatena e codifica in MXF 50i senza Masking [NON consigliata] ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 1 = concatena e codifica in MXF 50i senza Masking [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 1 = concatena e codifica in MXF 50i senza Masking [consigliata se devi fare un MXF] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 1 = concatena e codifica in MXF 50i senza Masking [consigliata se devi fare un MXF] ³
    echo ³ ³
    IF "%CONFI%"=="1" IF "%scanInterlace%"=="1" echo ³ 2 = concatena codifica MXF 50i con Masking [NON consigliata] ³
    IF "%CONFI%"=="1" IF NOT "%scanMBAFF%"=="0" echo ³ 2 = concatena codifica MXF 50i con Masking [consigliata se devi fare un MXF] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 2 = concatena codifica MXF 50i con Masking [consigliata se devi fare un MXF] ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 2 = concatena codifica MXF 50i con Masking [consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 2 = concatena codifica MXF 50i con Masking [NON consigliata] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 2 = concatena codifica MXF 50i con Masking [NON consigliata] ³
    echo ³ ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 3 = concatena codifica MP4 50i con Masking usando Totalcode encoder [consigliata] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 3 = concatena codifica MP4 50i con Masking usando Totalcode encoder [consigliata per fare MP4] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="0" echo ³ 3 = concatena codifica MP4 50i con Masking usando Totalcode encoder [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 3 = concatena codifica MP4 50i con Masking usando Totalcode encoder [NON consigliata] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 3 = concatena codifica MP4 50i con Masking usando Totalcode encoder [NON consigliata] ³
    echo ³ ³
    IF "%CONFI%"=="1" IF "%scanInterlace%"=="1" echo ³ 4 = concatena codifica MP4 50i SENZA Masking usando Totalcode encoder [consigliata per fare MP4] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 4 = concatena codifica MP4 50i SENZA Masking usando Totalcode encoder [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 4 = concatena codifica MP4 50i SENZA Masking usando Totalcode encoder [consigliata per fare MP4] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 4 = concatena codifica MP4 50i SENZA Masking usando Totalcode encoder [consigliata per fare MP4] ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 4 = concatena codifica MP4 50i SENZA Masking usando Totalcode encoder [NON consigliata per fare MP4] ³
    echo ³ ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 5 = concatena codifica MP4 50i con Masking usando FFMPEG encoder [consigliata] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 5 = concatena codifica MP4 50i con Masking usando FFMPEG encoder [consigliata per fare MP4] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="0" echo ³ 5 = concatena codifica MP4 50i con Masking usando FFMPEG encoder [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 5 = concatena codifica MP4 50i con Masking usando FFMPEG encoder [NON consigliata] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 5 = concatena codifica MP4 50i con Masking usando FFMPEG encoder [NON consigliata] ³
    echo ³ ³
    IF "%CONFI%"=="1" IF "%scanInterlace%"=="1" echo ³ 6 = concatena codifica MP4 50i SENZA Masking usando FFMPEG encoder [consigliata per fare un MP4] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 6 = concatena codifica MP4 50i SENZA Masking usando FFMPEG encoder [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 6 = concatena codifica MP4 50i SENZA Masking usando FFMPEG encoder [consigliata per fare un MP4] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 6 = concatena codifica MP4 50i SENZA Masking usando FFMPEG encoder [consigliata per fare un MP4] ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 6 = concatena codifica MP4 50i SENZA Masking usando FFMPEG encoder [NON consigliata] ³
    echo ³ ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 7 = concatena codifica AVI Mjpeg HD 50i SENZA Masking [NON consigliata per fare un AVI Speed Razor] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="0" echo ³ 7 = concatena codifica AVI Mjpeg HD 50i SENZA Masking [consigliata per fare un AVI Speed Razor] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 7 = concatena codifica AVI Mjpeg HD 50i SENZA Masking [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 7 = concatena codifica AVI Mjpeg HD 50i SENZA Masking [consigliata per fare un AVI Speed Razor] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 7 = concatena codifica AVI Mjpeg HD 50i SENZA Masking [consigliata per fare un AVI Speed Razor] ³
    echo ³ ³
    IF NOT "%CONFI%"=="1" IF "%scanInterlace%"=="0" echo ³ 8 = concatena codifica AVI Mjpeg HD 50i CON Masking [consigliata] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="1" echo ³ 8 = concatena codifica AVI Mjpeg HD 50i CON Masking [consigliata per fare un AVI Speed Razor] ³
    IF "%CONFI%"=="1" IF NOT "%scanInterlace%"=="0" echo ³ 8 = concatena codifica AVI Mjpeg HD 50i CON Masking [NON consigliata] ³
    IF "%scanMBAFF%"=="1" echo ³ 8 = concatena codifica AVI Mjpeg HD 50i CON Masking [NON consigliata] ³
    IF NOT "%scanMBAFF%"=="1" IF "%scanInterlace%"=="1" IF "%CONFI%"=="0" echo ³ 8 = concatena codifica AVI Mjpeg HD 50i CON Masking [NON consigliata] ³
    echo ³ ³
    echo ³ 9 = concatena e genera solo un file MOV in stream video-audio copy (se devi fare un .mov) ³
    echo ³ ³
    echo ³ 10 = concatena e genera codifica per Whatsapp A 63MB canali audio 1 e 2 separati 63MB ³
    echo ³ ³
    echo ³ 11 = concatena e genera codifica per Whatsapp B 63MB e MIXA canali audio 1 e 2 63MB ³
    echo ³ ³
    echo ³ 12 = concatena e genera codifica per Whatsapp C 63MB DUPLICA Canale Audio 1 in 2 ³
    echo ³ ³
    echo ³ 13 = concatena e genera codifica per Whatsapp D 63MB DUPLICA Canale Audio 2 in 1 ³
    echo ³ ³
    echo ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÙ
    echo.

    set /P rmFunc="scielta="
    for %%I in (0 1 2 3 4 5 6 7 8 9 10 11 12 13) do if #%rmFunc%==#%%I goto scelta%%I





    celta0
    goto :End

    celta1
    Set "GeneraCodifica_MXF=1" echo scelta 1 & goto otto

    celta2
    Set "GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3=1" echo scelta 2 & goto otto

    celta3
    Set "GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3_usandoTotalcode=1" echo scelta 3 & goto otto

    celta4
    Set "GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_P ER_OSMO_X3_usandoTotalcode=1" echo scelta 4 & goto otto

    celta5
    Set "GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3_usandoFFMPEG=1" echo scelta 5 & goto otto

    celta6
    Set "GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_P ER_OSMO_X3_usandoFFMPEG=1" echo scelta 6 & goto otto

    celta7
    Set "GeneraCodifica_AVI_Mjpeg_HD_Senza_MASCHERA_BLUR_C ENTRALE_PER_OSMO_X3=1" echo scelta 7 & goto otto

    celta8
    Set "GeneraCodifica_AVI_Mjpeg_HD_con_MASCHERA_BLUR_CEN TRALE_PER_OSMO_X3=1" echo scelta 8 & goto otto

    celta9
    Set "GeneraSolo_MOV=1" echo scelta 9 & goto otto

    celta10
    Set "GeneraWhatsapp_A_=1" echo scelta 10 & goto otto

    celta11
    Set "GeneraWhatsapp_B_=1" echo scelta 11 & goto otto

    celta12
    Set "GeneraWhatsapp_C_=1" echo scelta 12 & goto otto

    celta13
    Set "GeneraWhatsapp_D_=1" echo scelta 13 & goto otto

    otto

    echo 1 GeneraCodifica_MXF assume %GeneraCodifica_MXF%
    echo 2 GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PER_ OSMO_X3 assume %GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3%
    echo 3 GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER_ OSMO_X3_usandoTotalcode assume %GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3_usandoTotalcode%
    echo 4 GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3_usandoTotalcode assume %GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_P ER_OSMO_X3_usandoTotalcode%
    echo 5 GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER_ OSMO_X3_usandoFFMPEG assume %GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3_usandoFFMPEG%
    echo 6 GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3_usandoFFMPEG assume %GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_P ER_OSMO_X3_usandoFFMPEG%
    echo 7 GeneraCodifica_AVI_Mjpeg_HD_Senza_MASCHERA_BLUR_CE NTRALE_PER_OSMO_X3 assume %GeneraCodifica_AVI_Mjpeg_HD_Senza_MASCHERA_BLUR_C ENTRALE_PER_OSMO_X3%
    echo 8 GeneraCodifica_AVI_Mjpeg_HD_con_MASCHERA_BLUR_CENT RALE_PER_OSMO_X3 assume %GeneraCodifica_AVI_Mjpeg_HD_con_MASCHERA_BLUR_CEN TRALE_PER_OSMO_X3%
    echo 9 GeneraSolo_MOV assume %GeneraSolo_MOV%

    echo 10 GeneraWhatsapp_A_ assume %GeneraWhatsapp_A_%
    echo 11 GeneraWhatsapp_B_ assume %GeneraWhatsapp_B_%
    echo 12 GeneraWhatsapp_C_ assume %GeneraWhatsapp_C_%
    echo 13 GeneraWhatsapp_D_ assume %GeneraWhatsapp_D_%



    if "%GeneraCodifica_MXF%"=="1" echo scelta per 1_GeneraCodifica_MXF & call :generaMOV && goto :GeneraCodifica_MXF
    if "%GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3%"=="1" echo scelta per 2_GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3 & call :generaMOV && goto :GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3
    if "%GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3_usandoTotalcode%"=="1" echo scelta per 3_GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3_usandoTotalcode & call :generaMOV && goto :GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3_usandoTotalcode
    if "%GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_ PER_OSMO_X3_usandoTotalcode%"=="1" echo scelta per 4_GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_ PER_OSMO_X3_usandoTotalcode & call :generaMOV && goto :GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_P ER_OSMO_X3_usandoTotalcode
    if "%GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3_usandoFFMPEG%"=="1" echo scelta per 5_GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PE R_OSMO_X3_usandoFFMPEG & call :generaMOV && goto :GeneraCodifica_MP4_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3_usandoFFMPEG
    if "%GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_ PER_OSMO_X3_usandoFFMPEG%"=="1" echo scelta per 6_GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_ PER_OSMO_X3_usandoFFMPEG & call :generaMOV && goto :GeneraCodifica_MP4_Senza_MASCHERA_BLUR_CENTRALE_P ER_OSMO_X3_usandoFFMPEG
    if "%GeneraCodifica_AVI_Mjpeg_HD_Senza_MASCHERA_BLUR_ CENTRALE_PER_OSMO_X3%"=="1" echo scelta per 7_GeneraCodifica_AVI_Mjpeg_HD_Senza_MASCHERA_BLUR_ CENTRALE_PER_OSMO_X3 & call :generaMOV && goto :GeneraCodifica_AVI_Mjpeg_HD
    if "%GeneraCodifica_AVI_Mjpeg_HD_con_MASCHERA_BLUR_CE NTRALE_PER_OSMO_X3%"=="1" echo scelta per 8_GeneraCodifica_AVI_Mjpeg_HD_con_MASCHERA_BLUR_CE NTRALE_PER_OSMO_X3 & call :generaMOV && goto :GeneraCodifica_AVI_Mjpeg_HD
    if "%GeneraSolo_MOV%"=="1" echo scelta per 9_GeneraSolo_MOV & call :generaMOV && goto :GeneraSolo_MOV

    if "%GeneraWhatsapp_A_%"=="1" echo scelta per 10_GeneraWhatsapp_A_ & call :generaMOV && goto :GeneraWhatsapp_A_
    if "%GeneraWhatsapp_B_%"=="1" echo scelta per 11_GeneraWhatsapp_A_ & call :generaMOV && goto :GeneraWhatsapp_B_
    if "%GeneraWhatsapp_C_%"=="1" echo scelta per 12_GeneraWhatsapp_A_ & call :generaMOV && goto :GeneraWhatsapp_C_
    if "%GeneraWhatsapp_D_%"=="1" echo scelta per 13_GeneraWhatsapp_A_ & call :generaMOV && goto :GeneraWhatsapp_D_




    rem *** routine 1 **************************************************
    :GeneraCodifica_MXF

    set processing64bit=1
    if "%processing64bit%"=="1" echo processing a 64 bit


    [ .............]

    goto :End

    rem *** routine 2 **************************************************
    :GeneraCodifica_MXF_con_MASCHERA_BLUR_CENTRALE_PER _OSMO_X3

    [............]

    goto :End

    [...]

    rem *** routine 11 **************************************************

    [seems works also for 10 11 12 13: but confusion cat but now seems works]
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!