In Kommandozeile funktionieren Dateien m. Leerzeichen nicht

German support forum

Moderators: Hacker, Stefan2, white

User avatar
Lefteous
Power Member
Power Member
Posts: 9537
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2icfu
ok dann hier die Antwort:
beim Fehlen von Anführungszeichen könnte der TC den gesamten Inhalt der Box als Kommando ausführen.
Das kann man natürlich so machen. Eindeutig ist das aber leider nicht:
C:\Log\Opera.exe g Mein toller Browser\Opera.exe

Der Benutzer könnte hier auch auch Opera.exe im Verzeichnis Log mit Parametern starten wollen.

Klar kann man es so machen - es wird in über 99% aller Fälle so funktionieren wie der Benutzer es erwartet.


Beim Fehlen von Anführungszeichen könnte der TC den gesamten Inhalt der Box als Kommando ausführen. Mit ein wenig mehr Intelligenz würde er es sogar schaffen, alles bis zum letzten Punkt als Dateinamen zu interpretieren, dann wäre es sogar möglich, ohne Anführungszeichen noch Parameter anzuhängen:
Beispiel:
X:\pfad mit\leerzeichen\datei.name mit leerzeichen und punkt.xyz parameter bla blubb
Nein denn auch Parameter können Punkte enthalten. Allgemein gesagt ist ein Fixieren auf bestimmte Zeichen nicht erfolgsversprechend. Die einzigen Zeichen die bei Parametern nicht erlaubt sind sind AFAIK Tüttelchen.

Du hast mich aber auf eine Idee gebracht. Man könnte schlicht und ergreifend alle Möglichkeiten durchparsen und bei Ambivalenzen nachfragen was geschehen soll. Ansonsten wird halt das Kommando in sinnvoller Art und Weise ausgeführt.
Wie wäre das?
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Ich hatte die Beispiele gebracht, um vor Augen zu führen, was auch mit einfacher Intelligenz und Beschränkung auf gewisse Vorgaben möglich ist.
Daß man immer Fälle konstruieren kann, die kollidieren, ist klar, deshalb auch der Schwenk auf Aliase, die diese Kollisionen verhindern, weil man es dann nur noch mit der Eingabe von Parametern zu tun hat, nicht mehr mit der Frage "Wo hört das Programm auf und wo fangen die Parameter an".
Du hast mich aber auf eine Idee gebracht. Man könnte schlicht und ergreifend alle Möglichkeiten durchparsen und bei Ambivalenzen nachfragen was geschehen soll. Ansonsten wird halt das Kommando in sinnvoller Art und Weise ausgeführt.
Wie wäre das?
Das wäre eine Möglichkeit, gefällt mir gut. Alternativen dann anzeigen in einem PopUp, aus dem der User auswählen kann. :)

Icfu
This account is for sale
Post Reply