Wie funktioniert ein Batch script mit mehr als 9 Parametern?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Der FFMPEG sieht auf jedenfall abenteuerlich aus ,frage:was macht der ?

Wenn du das nicht als Parameter übergibst macht dos eine zeilenlänge von 255 zeichen soweit ich weiß.

du kannst das einfach in die START.BAT schreiben.

Du musst mal genau angeben welche Parameter du übergeben haben willst.

Phönix


zocker160 
Fragesteller
 03.03.2017, 13:32

mit dem Befehl mache ich eine Echtzeit Bildschirmübertragung und versende es als UDP-Stream ins Netzwerk. Durch die ganzen Parameter erreiche ich eben eine Verzögerung von unter 0,5 sec.

Ich möchte einfach, dass dieser Befehl im Autostart ausgeführt wird.

"du kannst das einfach in die START.BAT schreiben" Eben nicht, weil er bei "libx264" aufhört und dann kommt die Meldung, dass kein output-Stream angegeben wurde.

Ich glaub ich erstelle eine Neue Frage mit Bild....

0
Phonix1  03.03.2017, 13:40
@zocker160

Ich habe vom ffmpeg wahrscheinlich eine andere version.

was du nicht machen darfst ist eine zeilen unterbrechung einsetzen ,du musst beim editor alles in eine zeile schreiben.

1
zocker160 
Fragesteller
 03.03.2017, 13:44
@Phonix1

was du nicht machen darfst ist eine zeilen unterbrechung einsetzen ,du musst beim editor alles in eine zeile schreiben

ich hab das eingentlich überprüft, es sei denn, es sind versteckte Umbrüche drin, die der Windows Editor nicht anzeigt.....

0
Phonix1  03.03.2017, 13:50
@zocker160

Das müsste gehen:schreib mal in der commando zeile "copy con start.bat" ,schreib dann deine zeile und beende mit der Funktionstaste 6 (F6) und drücke dann enter.

sonstig habe ich hier mein qedit ,der zeigt alles an ,kannst du dir vom webspace runterladen unter http://phonix.square7.ch/ne.exe

Die vollversion habe ich auch noch ,selbstprogrammierbar und unverzichtbar.

einfach "ne start.bat" eingeben ,hilfe gibt es mit f1

hatte ich mal selber programmiert und nutze den seit 1983 zum programmieren.

Phönix


1

SHIFT tut folgendes:

%0 wird vergessen. (Am Anfang steht hier der Name des Scripts, wie er in der Befehlszeile angegeben wurde)

Der Inhalt von %1 wird in %0 geschoben.

Der Inhalt von %2 wird in %1 geschoben.

Etc.

Der Inhalt von %9 wird in %8 geschoben.

Der nächste Parameter von der Befehlszeile wird in %9 geschoben. Falls es keinen weiteren Parameter gibt, wird %9 geleert.

Ein einfaches Beispielskript, das die Verwendung von SHIFT demonstriert, indem es alle Parameter der Reihe nach ausgibt (Dateiname z. B. parameters.bat oder der Einfachheit halber p.bat):

@echo off
:loop
if '%0'=='' goto end
echo %0
shift
goto loop
:end

(Ich hab mir das Script mal zusammengezimmert, um festzustellen, welche Sonderzeichen Kommandozeilenparameter trennen und wie sich Anführungszeichen um Parameter mit diesen Sonderzeichen auswirken)

Woher ich das weiß:Berufserfahrung – Software-Entwickler

PWolff  03.03.2017, 13:51

Ergänzung: %* gibt (außer dem Dateinamen des Scripts selbst) alle Parameter mit allen Trennzeichen zurück (nur Leerzeichen am Anfang und am Ende werden entfernt). - Dieser Wert wird übrigens nicht von SHIFT beeinflusst.

1
zocker160 
Fragesteller
 08.03.2017, 11:36
@PWolff

Danke für diese ausführliche Antwort!

Ich hab das jetzt verstanden, leider löst es nicht mein Problem, ich habe die Frage leider etwas unschön formuliert... :-(

0