Announcement

Collapse
No announcement yet.

Argument file option bei Kommandozeile

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Requested Argument file option bei Kommandozeile

    Hi,
    zunächst einmal danke für dieses geniale Programm!!

    Jetzt zu meinem Wunsch.

    Ich stoße in letzter Zeit an der max. Länge der Kommandozeilen-Parameter an.
    Wenn darin ein langer Ein- und Ausgabefilename enthalten ist, zusammen mit ein paar anderen Parametern, kommt man über die 260 Zeichen schnell hinaus.

    Ich behelfe mir deshalb zurzeit mit der Option /filelist (auch für Einzelbilder) bzw. einem chdir, damit ich zumindest einen der Pfade relativ vorgeben kann.

    Optimal wäre die Möglichkeit, alle Übergabeparameter in ein Argumentfile zu schreiben.
    Dazu bräuchte es einen neuen Kommandozeilen-Parameter wie z.B. auch beim Programm exiftools, dieser heißt dort -@ <argfile.txt>. Damit wären alle Längenprobleme gelöst.

    Gruß
    epp4

    #2
    Hallo,

    vorerst könntest du dir helfen, indem du die Datei zuerst nach z.B. C:\temp verschiebst, dort verarbeitest und dann an das Ziel schiebst...

    Viele Grüße, Nils.

    Comment


      #3
      @Nils:
      Danke für die Antwort!

      Der Tipp mit dem Tempverzeichnis ist sicherlich eine Erleichterung, was die max. Länge der Optionen angeht. Die Bildernamen selbst können aber auch ganz schön lang werden, wenn dann noch viele Parameter dazu kommen, wird es auch wieder eng.

      Man kann natürlich auch den Namen des zu verarbeitenden Bildes mittels Rename kürzen und anschließend wieder zurück benennen. Bloß irgendwann blickt man dann nicht mehr durch bzw. hat Schwierigkeiten mit der Rekonstruktion, falls die aufrufende Software mit einem Fehler aussteigt und dann ein File mit dem Namen „worktmp.jpg“ im Tempverzeichnis liegt.

      Gruß
      epp4

      Comment


        #4
        Naja, wie stellst du dir ein "argumentfile" vor? Welche Daten würdest du darin erwarten bzw. wie würdest du die Datei erstellen? Schreibe doch mal ein einfaches Beispiel.

        Comment


          #5
          Sorry, dass ich mich damals nicht mehr gemeldet hatte. Ich bin quasi direkt nach meinem letzten Post in den Urlaub abgerauscht und habe anschließend das Thema ganz verschlafen. Da ich durch die bereits beschriebenen Verkürzungstricks nicht mehr an der Maximallänge angeschlagen bin, ist mir das Thema zwischenzeitlich auch nicht mehr hochgepoppt.
          Erst jetzt mit einem neuen Thread ist mir aufgefallen, dass ich noch eine Antwort schuldig bin.

          Ich hätte es mir so vorgestellt, dass man ein txt-File erzeugt, in dem man alle Command-Line-Optionen sammelt. Jetzt einfach mal ein Beispiel aus der Hilfe abgewandelt:

          Aus
          i_view32.exe /filelist=c:\mypics.txt /resize=(500,300) /aspectratio /resample

          würde dann
          i_view32.exe /argfile=argfile.txt

          und einem zugehörigen Argumentfile argfile.txt mit folgendem Inhalt:
          /filelist=c:\mypics.txt
          /resize=(500,300)
          /aspectratio
          /resample

          Nochmals sorry und Gruß
          epp4

          Comment


            #6
            Ok, du wünschst dir also einen kleinen Ersatz für die Kommandozeilenparameter, aber auch keine Dateiliste direkt. Also mehr etwas wie jeden Parameter als einzelne Zeile abbilden. Dadurch kann man fast beliebig lange Dateinamen verwenden und alles bleibt übersichtlich.

            Comment


              #7
              Danke für die Rückmeldung!

              Ja, auch wenn es bei mir mit den Verkürzungstricks zuletzt nicht mehr kritisch geworden ist, aber es werden doch immer wieder Leute an der max. Argumentlänge anschlagen, bzw. auch bei mir wären bei einer neuen Anwendung wiederum Umwege zu gehen. Eine Verzeichnishierarchie braucht gar nicht so tief sein und man hat zusammen mit einem aussagekräftigen Filenamen 100 Zeichen Länge deutlich überschritten. Wenn nun Ein- und Ausgabefile erforderlich sind, geht die Trickserei schon los.

              Ich bin auf die Idee mit dem Argumentfile gekommen, weil ich wie anfangs gesagt diese Option beim Programm exiftools kennengelernt habe. Und du hast meine Intension genau richtig interpretiert. Man löst das Argumentfile einfach Zeile für Zeile in seine Einzelparameter auf und umgeht damit die Längenbegrenzung.
              Es wäre dabei kein Problem, wenn ein Argumentfile die Verwendung von weiteren Argumenten verbieten würde, bzw. nach der Option /argfile= kein weiteres Argument mehr kommen dürfte. Wenn man ein argfile erzeugt, kann man gleich alles reinkippen.

              epp4

              Comment

              Working...
              X