Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#13

AW: grep.exe unter Windows findet NICHTS – Wer hätte Beispiel-Aufrufe?

  Alt 12. Feb 2023, 17:14
Vielen Dank Delphi.Narium für Deine ausführlichen Erläuterungen!
Zitat:
... und hierfür jetzt für alle Konsolenprogramme der Welt, die für Unix und Windows kompiliert werden können, zu verlangen, dass die einkompilierten Hilfen jeweils angepasst werden, halte ich für übertrieben
Als "alter" Mensch habe ich möglicherweise keine zeitgemäßen Erwartungen mehr. Mich würde es trotzdem ärgern, wenn ich für mein Elektro-Fahrzeug die Bedienungsanleitung eines Dieselfahrzeuges bekomme...
Grüße, Andreas
Alt bin ich auch, sonst könnt ich mich nicht (mehr oder weniger gut) mit DOS auskennen

Die Bedienungsanleitung von Grep für Unix stimmt mit der Bedienungsanleitung für Windows überein, einzig bei der Art, wie die Kommandozeilenoptionen anzugeben sind, gibt es betriebssystemseitige Unterschiede. Strenggenommen liegen die Unterschiede außerhalb des Programmes Grep, es (bzw. die die Software Entwickelnden) hat (haben) auf diese Unterschiede keinen Einfluß. Die Kommandozeile ist Teil des Betriebssystemes und dort wird u. a. durch " bzw. ' gesteuert, wie das Betriebssystem die Eingaben auf der Kommandozeile an das Programm weiterreicht.

Der Vergleich
Zitat:
wenn ich für mein Elektro-Fahrzeug die Bedienungsanleitung eines Dieselfahrzeuges bekomme
hinkt hier ein bisserl.

Es wäre eher so, als würde man erwarten, dass in der Bedienungsanleitung für einen VW, den man in England kauft, explizit mit drinstehen müsste, dass man mit diesem Auto aus Deutschland in England links zu fahren hat

Delphi-Quellcode:
begin
  // Kommandozeile:
  // grep -i 'TBrent' KonkreterDateiName.dpr
  // unter Windows
  WriteLn(ParamCount); // = 3
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // 'TBrent'
  WriteLn(ParamStr(3)); // KonkreterDateiName.dpr
  // unter Unix
  WriteLn(ParamCount); // = 3
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // TBrent
  WriteLn(ParamStr(3)); // KonkreterDateiName.dpr

  // Kommandozeile:
  // grep -i "TBrent" KonkreterDateiName.dpr
  // unter Windows
  WriteLn(ParamCount); // = 3
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // TBrent
  WriteLn(ParamStr(3)); // KonkreterDateiName.dpr
  // unter Unix
  WriteLn(ParamCount); // = 3
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // "TBrent"
  WriteLn(ParamStr(3)); // KonkreterDateiName.dpr

  // Kommandozeile:
  // grep -i 'dies und das ' KonkreterDateiName.dpr
  // unter Windows
  WriteLn(ParamCount); // = 5
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // 'dies
  WriteLn(ParamStr(3)); // und
  WriteLn(ParamStr(4)); // das'
  WriteLn(ParamStr(5)); // KonkreterDateiName.dpr
  // unter Unix
  WriteLn(ParamCount); // = 3
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // dies und das
  WriteLn(ParamStr(3)); // KonkreterDateiName.dpr

  // Kommandozeile:
  // grep -i "dies und das" KonkreterDateiName.dpr
  // unter Windows
  WriteLn(ParamCount); // = 3
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // dies und das
  WriteLn(ParamStr(3)); // KonkreterDateiName.dpr
  // unter Unix
  WriteLn(ParamCount); // = 5
  WriteLn(ParamStr(1)); // -i
  WriteLn(ParamStr(2)); // "dies
  WriteLn(ParamStr(3)); // und
  WriteLn(ParamStr(4)); // das"
  WriteLn(ParamStr(5)); // KonkreterDateiName.dpr
end.

Geändert von Delphi.Narium (12. Feb 2023 um 17:17 Uhr)
  Mit Zitat antworten Zitat