Seite 4 von 4 ErsteErste ... 234
Ergebnis 31 bis 39 von 39

Thema: Zwei Batch Befehle nacheinander ausführen...

  1. #31
    [ultra mobile] Avatar von HQ-LQ
    Registriert seit
    18. February 2004
    Ort
    am Arsch der Welt
    Alter
    33
    Beiträge
    2.650

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    done.

    SingleDropExecuter.cmd

    Code:
    ~script gelöscht~
    fertiges script ist hier zu finden:
    https://forum.gleitz.info/showthread...915#post459368

    -

    multi-drop ünterstüzt das script nicht,
    aber wenn du alles in ein sammel-unterordner packst,
    dann wird es auch so funktionieren.

    was für problem könne multidrop verursachen:
    1# ich müsste eine liste vom imput generieren
    2# dann müsste ich prüfen, ob jeder input eine datei oder ein verzeichnis ist
    - ich kann nicht davon ausgehen, das der endnutzer vernünftig ist oder sich an regeln hält...
    - und zwar im for/call format, also eine zusätzliche verschachtelung


    ab ins archiv damit...
    gute nacht...
    Geändert von HQ-LQ (23. September 2017 um 14:05 Uhr)
    ~Jäger und Sammler~ [0001 0110]
    meine Scripte: MPack/DriveSnapshot:Cln&Bak/SuRun:ShellExt.

  2. #32
    [ultra mobile] Avatar von HQ-LQ
    Registriert seit
    18. February 2004
    Ort
    am Arsch der Welt
    Alter
    33
    Beiträge
    2.650

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    zum thema langeweile... :P

    ich präsentiere: "MDeX" der MultiDropExecuter
    geprüft und getestet

    egal was verfüttert wird,
    er frisst alles:
    - einzel datei oder verzeichnis
    - multi datei oder verzeichnisse
    - mischbetrieb von datei oder verzeichnissen

    schön geblockt,
    so das man sein arbeitsscript einfacher einfügen kann

    sneaker2 mkvmerge-script habe ich optisch so eingeschoben,
    dass man sieht das es "nur" eine verschachtelte if/else-routine ist

    ich habe noch eine SET variable eingebaut,
    um die löschroutiene ein/aus zu schalten

    diese ist auskommentiert, also löscht das script z.z. gnadenlos!

    ab ins archiv damit...


    übrigens:
    so komplex ist das teil überhaupt nicht,
    ich habe nur 2 forschleifen
    und mein verzeichnis/datei prüfung eingebaut,
    welches im kern aus 5 zeilen besteht, oder so.

    das goto/call gerüst ist auch nicht die welt.

    nur das jemand mal daraus ne vorlage mal bastelt... bitte schön.

    übrigens es hat auch ein call block für externe scripte,
    kann ja mal jemand testen ob die übergabe fehlerfrei funktioniert

    wenn du dich wunderst warum da so viele :: drin sind
    :BLUBB sind sprungmarken, diese verarbeitet das script schneller,
    als der befehl REM.
    und da nicht versehendlich die kommentare als sprungpunkt interpretiert werden, mache ich 2 drauß
    optisch trennen sich sie :: besser ab als ein rem


    MDeX_by.HQ-LQ.cmd
    Code:
    @echo off
    ::2017-09-23
    cd /d "%~dp0"
    
    ::**********************************************************
      set "qTag=MDeX"
      set "qTitle=MultiDropExecuter by HQ-LQ @ gleitz.info"
    ::https://forum.gleitz.info/showthread.php?47915#post459339
    ::
    ::vorlage script die übergabe von
    ::eine/mehrere dateien mit oder ohne verzeichnisse,
    ::sogar im im mischbetrieb
    ::um diese für programme zu übergeben
    ::**********************************************************
      title [%qTag%] - %qTitle%
    
    :SET
     set     "qAppDIR=C:\Programme\MKVToolNix"
     set     "qAppEXE=mkvmerge.exe"
    
    ::#################################################################################
    
    :MultiInput
     title [%qTag%:MultiInput] - %qTitle%
    
    ::for %%i in (%*) do (echo.%%i && echo.)
      for %%i in (%*) do (call :DIR-File-Check %%i)
    
    goto :end0
    
    ::#################################################################################
    
    :DIR-File-Check
     title [%qTag%:DIR-File-Check] - %qTitle%
    
     cd /d "%~dp1" 2>nul
     cd /d "%~1"   2>nul
     if     "%~1"==""	(goto :Check-Error)
     if     "%~1"=="%CD%"	(goto :found-DIR) else (goto :found-FILE)
    
    goto :Check-Error
    
    ::#################################################################################
    
    :found-FILE
     title [%qTag%:found-FILE] - %qTitle%
     if not EXIST "%~1" (goto :Check-Error)
    
    ::echo. %* && echo.
      CALL :Single-File_Call_CMD %*
    ::CALL :Call_a_Batch %*
    
    goto :end0
    
    ::#################################################################################
    
    :found-DIR
     title [%qTag%:found-DIR] - %qTitle%
    
    :::: 	~ .Echo Test / alle (*)-Dateien
    ::for /f "tokens=1* delims==" %%a in ('dir * /B /S') do (echo. "%%a" && echo.)
    
    :::: 	~ :Call_Echo / alle (*)-Dateien
    ::for /f "tokens=1* delims==" %%a in ('dir * /B /S') do (call :Call_Echo "%%a")
    
    ::::	~ :Single-File_Call_CMD / alle (*.MKV)-Dateien
      for /f "tokens=1* delims==" %%a in ('dir *.mkv /B /S') do (call :Single-File_Call_CMD "%%a")
    
    ::::	~ :Call_a_Batch		/ alle (*)-Dateien
    ::for /f "tokens=1* delims==" %%a in ('dir * /B /S') do (call :Call_a_Batch "%%a")
    
    goto :end0
    
    ::#################################################################################
    ::#################################################################################
    ::Call-Blöcke
    ::---------------------------------------------------------------------------------
    ::
    ::Nicht Vergessen!
    ::wenn (setlocal enableDelayedExpansion) gesetzt wird,
    ::das es am ende auch wieder ausgeschaltet wird.
    ::
    :::: setlocal  enableExpansion
    :::: setlocal disableExpansion
    :::: setlocal  enableDelayedExpansion
    :::: setlocal disableDelayedExpansion
    
    ::#################################################################################
    :Single-File_Call_CMD
    ::mkvmerge-sub-script by sneaker2 (https://forum.gleitz.info/showthread.php?47915#post459224)
      title [%qTag%:call] mkvmerge-sub-script by sneaker2 @ gleitz.info (Mod)
    ::---------------------------------------------------------------------------------
    
    set "mkvmerge=%qAppDIR%\%qAppEXE%"
    if "%COMPUTERNAME%"=="MIC-WS" (set "mkvmerge=D:\Programme\Media\Video\Container\MKV\MKVToolnix\BIN\mkvmerge.exe")
    
    ::set qDelOff=REM
    
    cd /d "%~dp1"
    
      if   exist "%~n1.srt" 				("%mkvmerge%" -o "neu\%~n1.mkv" -a !2 %1 "%~n1.srt" 	&& %DelOff% del %1 "%~n1.srt"
    ) else 			  if   exist "%~n1.idx" 	("%mkvmerge%" -o "neu\%~n1.mkv" -a !2 %1 "%~n1.idx" 	&& %DelOff% del %1 "%~n1.idx" "%~n1.sub"
    			) else 	 			("%mkvmerge%" -o "neu\%~n1.mkv" -a !2 %1 		&& %DelOff% del %1
    			     			) 
    
    goto :eof
    
    ::#################################################################################
    :Call_a_Batch
     title [%qTag%:Call_a_Batch] - %qTitle%
    ::---------------------------------------------------------------------------------
      call d:\p\bitch.cmd %*
    
    goto :eof
    
    ::#################################################################################
    :Call_Echo
     title [%qTag%:Call_Echo] - %qTitle%
    ::---------------------------------------------------------------------------------
    
      echo.
      echo.a[%*]
      echo.1[%1]
      echo.~"[%~1]"
      echo.d"[%~d1]"
      echo.p"[%~p1]"
      echo.n"[%~n1]"
      echo.x"[%~x1]"
    
    pause
    goto :eof
    
    ::#################################################################################
    :Check-Error
     title [%qTag%:Check-Error] - %qTitle%
    ::---------------------------------------------------------------------------------
    
     echo.
     echo.Eingabewert ist fehlerhaft
     echo.Eingabewert="%*"
     echo.
     echo.script wird abgebrochen.
     echo.oeffne script zur bearbeitung...
     start "" "%windir%\notepad.exe" "%~0"
     echo.
    
    ping 127.0.0.0 -n 3  >nul
    
    goto :end0
    
    ::#################################################################################
    
    :end0
    ::ping 127.0.0.0 -n 3 >nul
    ::pause
    @ sneaker2

    sind in deinem script diese codezeilen nötig?
    es wird ja nur eine datei übergeben
    und dann ist das script abgeschlossen...
    Code:
    :loop
    
    shift
    if not "%~1"=="" goto :loop
    [edit:]
    habe diese entfernt...
    Geändert von HQ-LQ (23. September 2017 um 23:23 Uhr)
    ~Jäger und Sammler~ [0001 0110]
    meine Scripte: MPack/DriveSnapshot:Cln&Bak/SuRun:ShellExt.

  3. #33
    Jungspund
    Registriert seit
    28. August 2017
    Beiträge
    17

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    @HQ-LQ

    Ich kann dein Script gerade nicht testen. Sieht aber schon beeindruckend
    aus was du da zusammengeschustert hast. Da bin ich mal gespannt... Melde
    mich in eins zwei Stunden noch mal.

    Edit:

    So, Test beendet... Script funktioniert astrein

    Anderes Thema, die integrierten Untertitel werden
    ja standardmäßig aktiviert... Das macht für mich
    eigentlich nur Sinn wenn es sich um Forced-Subs
    handelt. Wie könnte man das im Script deaktivieren?

    Habe hier was im Englischen Forum gefunden wie man
    die Untertitel deaktivieren kann... Leider bekomme ich
    den Befehl nicht ins Script eingefügt, so das er funktioniert.

    Ich bin mir auch nicht sicher ob der Befehl der richtige ist.

    Note that the above commands for adding subtitles also set the subtitles as “enabled by default” when playing the file. (This flag can be confirmed using the MKVMerge GUI.) To avoid this, use --default-track '0:0'.
    Geändert von Neugier (23. September 2017 um 17:42 Uhr)

  4. #34
    [ultra mobile] Avatar von HQ-LQ
    Registriert seit
    18. February 2004
    Ort
    am Arsch der Welt
    Alter
    33
    Beiträge
    2.650

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    ein tip,
    mkvmerge ist ein kommandozeilen-programm

    öffne mal die kommandozeile (CMD)
    geh ins C:\Programme\MKVToolNix verzeichnis

    und gebe ein:
    mkvmerge /?
    da siehst du erstmal die möglichkeiten

    online sollte der spaß offizell dokumentiert sein.

    übrigens gilt für die meisten programme diese hilfeschalter:
    app.exe /? /h -h --help

    -

    eine hilfe füe cmd-spaßfögel wie mich sind GUI-programme,
    welche dir die cmd-zeile mit anzeigen:

    das tut übrigens "mkvtoolnix-gui.exe" auch:
    im menü: "Multiplexer\Befehlszeile anzeigen"

    so ist man in der lage seine eigene befehlzzeile zu generieren
    und dann modifiziert in das script einbauen...

    das habe ich schon mit MeGUI genacht, um x264-profiele zu generieren.
    ~Jäger und Sammler~ [0001 0110]
    meine Scripte: MPack/DriveSnapshot:Cln&Bak/SuRun:ShellExt.

  5. #35
    Jungspund
    Registriert seit
    28. August 2017
    Beiträge
    17

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    Habe es hinbekommen... War leichter als erwartet, aber wenn man kein Plan ist alles schwer :/

    Code:
    :loop
      if   exist "%~n1.srt"                 ("%mkvmerge%" -o "neu\%~n1.mkv" -a !eng,fre,rus,spa,ita %1 --language 0:ger --default-track 0:no "%~n1.srt"  && %DelOff% del %1 "%~n1.srt"
    ) else               if   exist "%~n1.idx"     ("%mkvmerge%" -o "neu\%~n1.mkv" -a !eng,fre,rus,spa,ita %1 --language 0:ger --default-track 0:no "%~n1.idx"     && %DelOff% del %1 "%~n1.idx" "%~n1.sub"
                ) else                  ("%mkvmerge%" -o "neu\%~n1.mkv" -a !eng,fre,rus,spa,ita -s !eng,fre,rus,spa,ita %1         && %DelOff% del %1
                                 ) 
    shift
    if not "%~1"=="" goto :loop
    
    goto :eof
    Geändert von Neugier (23. September 2017 um 21:21 Uhr)

  6. #36
    Kaiser
    Registriert seit
    6. July 2009
    Beiträge
    1.294

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    Zitat Zitat von HQ-LQ Beitrag anzeigen
    @ sneaker2

    sind in deinem script diese codezeilen nötig?

    :loop

    shift
    if not "%~1"=="" goto :loop


    es wird ja nur eine datei übergeben und dann ist das script abgeschlossen...
    Die sind nur nötig, wenn mehrere Dateien übergeben werden.

  7. #37
    [ultra mobile] Avatar von HQ-LQ
    Registriert seit
    18. February 2004
    Ort
    am Arsch der Welt
    Alter
    33
    Beiträge
    2.650

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    danke,
    gut ich werde diese zeilen entfernen,
    da die for-schleifen zur aufarbeitung der dateilisten zuständig sind.

    @ Neugier
    wie ich sehe, hast du die TAB-taste noch nicht für dich entdeckt...

    -

    habe gerade festgestellt, das die variable %DelOff% falsch ist,
    sie müsste %qDelOff% heißen,
    so funktioniert der das umschalten via auskommentieren nicht und löscht immer noch die dateien.

    habe es oben korrigiert

    -

    gibt es eigendlich eine möglichkeit den papierkorb zu nutzen?
    also ohne ein vbs/fremd-script zu erzeugen.

    powershell kann man zwar via kommandozeile aufrufen,
    sollte aber erstmal nur zweite wahl sein.
    Geändert von HQ-LQ (23. September 2017 um 23:27 Uhr)
    ~Jäger und Sammler~ [0001 0110]
    meine Scripte: MPack/DriveSnapshot:Cln&Bak/SuRun:ShellExt.

  8. #38
    Erklär-Bär Avatar von LigH
    Registriert seit
    19. April 2003
    Ort
    OPAL-Invalidengebiet Altmark
    Alter
    42
    Beiträge
    42.507

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    Wohl nicht ohne Extras; ein DEL-Parameter wäre je auch zu einfach?!

    Auf gute Zusammenarbeit:

    REGELN befolgen | SUCHE benutzen | FAQ lesen | STICKIES beachten




  9. #39
    [ultra mobile] Avatar von HQ-LQ
    Registriert seit
    18. February 2004
    Ort
    am Arsch der Welt
    Alter
    33
    Beiträge
    2.650

    Standard AW: Zwei Batch Befehle nacheinander ausführen...

    oder man müsste die SID herausfinden und die dateien direkt hineinkopieren,
    aber das wird sich wohl nicht vertragen,
    da die dateinamen verfremdet sind.
    also muss es irgendwo noch ein index geben...

    also doch powershell oder VBS?
    die kann ich wenigsten in ein batch-script einbaun...

    können diese das überhaubt?

    [edit:]
    jupp können sie,
    aber auch powershell nutzt nur VBS,
    da kann man gleich ein VBS script nehmen...
    Geändert von HQ-LQ (24. September 2017 um 13:52 Uhr)
    ~Jäger und Sammler~ [0001 0110]
    meine Scripte: MPack/DriveSnapshot:Cln&Bak/SuRun:ShellExt.

Seite 4 von 4 ErsteErste ... 234

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. megui nach dem encoding eine batch-datei ausführen lassem
    Von Nel-son im Forum MPEG-4-Encoding-Tools
    Antworten: 4
    Letzter Beitrag: 20. July 2011, 18:15
  2. Womit C1/C2 Fehlerscans ausführen ?
    Von Diet im Forum CD-R Forum
    Antworten: 1
    Letzter Beitrag: 19. April 2010, 01:49
  3. telnet befehle via netcat
    Von LessThanJake im Forum Software-Entwicklung
    Antworten: 3
    Letzter Beitrag: 3. January 2010, 00:53
  4. mIRC Problem bot Befehle wie !help usw funzen nicht
    Von Massaguana im Forum Windows & Applikationen
    Antworten: 0
    Letzter Beitrag: 16. March 2007, 22:30
  5. Skip-Befehle aktivieren, aber wie?
    Von moviejunky im Forum Blu-Ray & DVD-Authoring
    Antworten: 1
    Letzter Beitrag: 9. March 2004, 12:12

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •