Wie mache ich meinen eigenen Terminalbefehl mit Flags?

0

Angenommen, ich möchte einen Terminalbefehl ausführen und bestimmte Flags hinzufügen. Wie kann ich das erreichen? Was ist die Syntax dafür und wie erreichen Sie dies?

Tanzmaschine
quelle
Hallo @Dancingmachine, gut gemacht ist dein Titel. Um Antworten zu erhalten, ist es hilfreich, wenn Ihre Frage konkreter ist, was Sie erreichen möchten. Geben Sie zum Beispiel ein Beispiel. Es hilft auch, wenn Sie sagen, was Sie bereits versucht haben (auch wenn das nicht geklappt hat). Bitte bearbeiten und verbessern Sie Ihre Frage.
Pro Backup

Antworten:

2

Obwohl die Frage wahrscheinlich nicht zum Thema gehört, möchte ich eine Antwort geben: Um mit einfachen Bash-Skripten zu beginnen, wenden Sie sich an getopts.

#!/bin/bash

while getopts ":a:" opt; do
  case $opt in
    a)
      echo "I'm the $OPTARG coder in the world." >&2
      ;;
    \?)
      echo "Invalid option: -$OPTARG" >&2
      exit 1
      ;;
    :)
      echo "Option -$OPTARG requires an argument." >&2
      exit 1
      ;;
  esac
done

Speichern Sie dieses Bash-Skript wie coderin einem Verzeichnis im PATH und machen Sie es mit ausführbar chmod +x coder. Wenn Sie einen anderen Namen wählen, ersetzen Sie keine bereits vorhandene Datei mit demselben Namen! Wähle einen eindeutigen Namen! Das Bash-Skript sucht nach dem Flag / der Option -a und verwendet das Argument nach dem Flag, um einen Satz zurückzugeben. Das Skript überprüft nicht, ob das Ergebnis grammatikalisch korrekt ist!

Beispiele:

coder -a bestwird ergeben I'm the best coder in the world.
coder -a "most yellow"wird ergeben I'm the most yellow coder in the world.

aber:

coder -a most yellowwird ergeben I'm the most coder in the world.

oder

coder -b "most yellow"> Invalid option: -b.

klanomath
quelle