381 Stimmen

Gibt es ein "Standardformat" für Befehlszeilen-/Shell-Hilfetexte?

Wenn nicht, gibt es eine De-facto-Norm? Im Grunde schreibe ich einen Befehlszeilen-Hilfetext wie folgt:

usage: app_name [options] required_input required_input2
  options:
    -a, --argument     Does something
    -b required     Does something with "required"
    -c, --command required     Something else
    -d [optlistitem1 optlistitem 2 ... ]     Something with list

Ich habe das im Grunde nur durch das Lesen der Hilfetexte der verschiedenen Tools herausgefunden, aber gibt es eine Liste mit Richtlinien oder so etwas? Soll ich zum Beispiel eckige Klammern oder Klammern verwenden? Wie verwendet man Abstände? Was ist, wenn das Argument eine Liste ist? Vielen Dank!

0voto

john c. j. Punkte 801

Ich benutze die Formale CSS-Notation für diese.

Die Komponentenwerte können wie folgt zu Eigenschaftswerten zusammengefasst werden:

  • Mehrere nebeneinander stehende Wörter bedeuten, dass sie alle in der angegebenen Reihenfolge vorkommen müssen.
  • Ein Balken ( | ) trennt zwei oder mehr Alternativen: genau eine von ihnen muss auftreten.
  • Ein doppelter Balken ( || ) trennt zwei oder mehr Optionen: eine oder mehrere davon müssen in beliebiger Reihenfolge auftreten.
  • Ein doppeltes kaufmännisches Und ( && ) trennt zwei oder mehr Komponenten, die alle in beliebiger Reihenfolge auftreten müssen.
  • Klammern ( [ ] ) sind für die Gruppierung.

Die Aneinanderreihung ist stärker als das doppelte kaufmännische Und-Zeichen, das doppelte kaufmännische Und-Zeichen ist stärker als der doppelte Balken, und der doppelte Balken ist stärker als der Balken. Die folgenden Zeilen sind also gleichwertig:

    a b   |   c ||   d &&   e f
  [ a b ] | [ c || [ d && [ e f ]]]

Jedem Typ, Schlüsselwort oder jeder Klammergruppe kann einer der folgenden Modifikatoren folgen:

  • Ein Sternchen ( * ) zeigt an, dass der vorangehende Typ, das vorangehende Wort oder die vorangehende Gruppe null oder mehr Mal vorkommt.
  • Ein Plus ( + ) zeigt an, dass der vorangehende Typ, das vorangehende Wort oder die vorangehende Gruppe ein oder mehrere Male vorkommt.
  • Ein Fragezeichen ( ? ) zeigt an, dass der vorangehende Typ, das Wort oder die Gruppe optional ist.
  • Ein Paar von Zahlen in geschweiften Klammern ( {A,B} ) zeigt an, dass die vorangehende Art, das vorangehende Wort oder die vorangehende Gruppe mindestens A und höchstens B Mal vorkommt.

Wenn Sie Beispiele benötigen, siehe Formale Definition Abschnitte auf MDN; hier ist einer für font : https://developer.mozilla.org/en-US/docs/Web/CSS/font#formal_syntax .

Und hier ist ein einfaches Beispiel aus meinem eigenen Pandoc-Spickzettel:

$ pandoc <input_file>.md --from [markdown|commonmark_x][-smart]? --to html --standalone --table-of-contents? --number-sections? [--css <style_sheet>.css]? --output <output_file>.html

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X