EnglischFranzösischSpanisch

Ad


OnWorks-Favicon

exprposix – Online in der Cloud

Führen Sie exprposix im kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehl exprposix, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


expr – Argumente als Ausdruck auswerten

ZUSAMMENFASSUNG


ausdr Operand...

BESCHREIBUNG


Das ausdr Das Dienstprogramm wertet einen Ausdruck aus und schreibt das Ergebnis in die Standardausgabe.

OPTIONAL


Keiner.

OPERANDEN


Der einzelne Ausdruck, der von ausgewertet wird ausdr soll aus dem gebildet werden Operand Operanden, als
im Abschnitt „ERWEITERTE BESCHREIBUNG“ beschrieben. Der Antrag stellt sicher, dass jeder von
die Ausdrucksoperatorsymbole:

( ) | & = > >= < <= != + - * / % :

und die Symbole ganze Zahl und Schnur in der Tabelle werden als separate Argumente bereitgestellt
ausdr.

STDIN


Nicht benutzt.

SPEISUNG DATEIEN


Keiner.

VARIABLEN


Die folgenden Umgebungsvariablen sollen die Ausführung von ausdr:

SPRACHE Geben Sie einen Standardwert für die Internationalisierungsvariablen an, die nicht festgelegt sind oder
Null. (Siehe den Band Basisdefinitionen von POSIX.1‐2008, Abschnitt 8.2,
Internationalisierung Variablen für den Vorrang der Internationalisierung
Variablen, die verwendet werden, um die Werte von Gebietsschemakategorien zu bestimmen.)

LC_ALL Wenn auf einen nicht leeren Zeichenfolgenwert gesetzt, überschreiben Sie die Werte aller anderen
Internationalisierungsvariablen.

LC_COLLATE
Bestimmen Sie das Gebietsschema für das Verhalten von Bereichen, Äquivalenzklassen und Multi-
Zeichensortierungselemente innerhalb regulärer Ausdrücke und nach der Zeichenfolge
Vergleichsoperatoren.

LC_CTYPE Bestimmen Sie das Gebietsschema für die Interpretation von Sequenzen von Bytes von Textdaten
als Zeichen (z. B. Einzelbyte- im Gegensatz zu Mehrbyte-Zeichen in
Argumente) und das Verhalten von Zeichenklassen innerhalb regulärer Ausdrücke.

LC_MESSAGES
Bestimmen Sie das Gebietsschema, das verwendet werden soll, um das Format und den Inhalt von . zu beeinflussen
Diagnosemeldungen in Standardfehler geschrieben.

NLSPATH Bestimmen Sie den Speicherort von Nachrichtenkatalogen für die Verarbeitung von LC_MESSAGES.

ASYNCHRON Events


Standard.

STDOUT


Das ausdr Das Dienstprogramm wertet den Ausdruck aus und schreibt das Ergebnis, gefolgt von a
, zur Standardausgabe.

STDERR


Der Standardfehler darf nur für Diagnosemeldungen verwendet werden.

AUSGABE DATEIEN


Keiner.

VERLÄNGERT BESCHREIBUNG


Die Bildung des auszuwertenden Ausdrucks ist in der folgenden Tabelle dargestellt. Der
Symbole ausdr, Ausdruck1 und Ausdruck2 stellen Ausdrücke dar, die aus gebildet werden ganze Zahl und Schnur
Symbole und die Ausdrucksoperatorsymbole (alle separaten Argumente) durch Rekursion
Anwendung der in der Tabelle beschriebenen Konstrukte. Die Ausdrücke werden der Reihe nach aufgelistet
mit zunehmender Priorität, wobei Operatoren mit gleicher Priorität zwischen horizontal gruppiert sind
Linien. Alle Operatoren müssen linksassoziativ sein.

┌───────────────┬─────────────────────── ────────── ─────────┐
AusdruckBeschreibung
├───────────────┼─────────────────────── ────────── ─────────┤
Ausdruck1 | Ausdruck2 │ Gibt die Auswertung von zurück Ausdruck1 wenn es │ ist
│ │ weder null noch null; andernfalls │
│ │ gibt die Auswertung von zurück Ausdruck2 wenn es │ ist
│ │ nicht null; andernfalls Null. │
├───────────────┼─────────────────────── ────────── ─────────┤
Ausdruck1 & Ausdruck2 │ Gibt die Auswertung von zurück Ausdruck1 wenn
│ │ Keiner der Ausdrücke ergibt null oder │
│ │ Null; andernfalls wird Null zurückgegeben. │
├───────────────┼─────────────────────── ────────── ─────────┤
│ │ Gibt das Ergebnis einer dezimalen Ganzzahl zurück │
│ │ Vergleich, wenn beide Argumente │ sind
│ │ ganze Zahlen; andernfalls wird das Ergebnis zurückgegeben │
│ │ eines String-Vergleichs unter Verwendung des Gebietsschemas- │
│ │ spezifische Sortierreihenfolge. Das Ergebnis │
│ │ jedes Vergleichs ist 1, wenn das angegebene │
Die │ │-Beziehung ist wahr, oder 0, wenn die │
│ │ Beziehung ist falsch. │
Ausdruck1 = Ausdruck2 │ Gleich. │
Ausdruck1 > Ausdruck2 │ Größer als. │
Ausdruck1 >= Ausdruck2 │ Größer oder gleich. │
Ausdruck1 < Ausdruck2 │ Weniger als. │
Ausdruck1 <= Ausdruck2 │ Kleiner oder gleich. │
Ausdruck1 != Ausdruck2 │ Nicht gleich. │
├───────────────┼─────────────────────── ────────── ─────────┤
Ausdruck1 + Ausdruck2 │ Addition von dezimalen ganzzahligen Werten │
│ │ Argumente. │
Ausdruck1 - Ausdruck2 │ Subtraktion von dezimalen Ganzzahlwerten │
│ │ Argumente. │
├───────────────┼─────────────────────── ────────── ─────────┤
Ausdruck1 * Ausdruck2 │ Multiplikation von dezimalen ganzzahligen Werten │
│ │ Argumente. │
Ausdruck1 / Ausdruck2 │ Ganzzahlige Division einer dezimalen Ganzzahl- │
│ │ wertvolle Argumente, die eine ganze Zahl ergeben │
│ │ Ergebnis. │
Ausdruck1 % Ausdruck2 │ Rest der ganzzahligen Division einer Dezimalzahl │
│ │ Ganzzahlige Argumente. │
├───────────────┼─────────────────────── ────────── ─────────┤
Ausdruck1 : Ausdruck2 │ Passender Ausdruck; siehe unten. │
├───────────────┼─────────────────────── ────────── ─────────┤
│( ausdr ) │ Gruppierungssymbole. Jeder Ausdruck kann │ sein
│ │ in Klammern gesetzt. Klammern │
│ │ kann bis zu einer Tiefe von │ verschachtelt werden
│ │ {EXPR_NEST_MAX}. │
├───────────────┼─────────────────────── ────────── ─────────┤
ganze Zahl │ Ein Argument, das nur aus einem │ besteht
│ │ (optional) unäres Minus gefolgt von │
│ │ Ziffern. │
Schnur │ Ein String-Argument; siehe unten. │
└───────────────┴─────────────────────── ────────── ─────────┘
Abstimmung Ausdruck
Das ':' Der Matching-Operator vergleicht die Zeichenfolge, die sich aus der Auswertung von ergibt Ausdruck1
mit dem regulären Ausdrucksmuster, das sich aus der Auswertung von ergibt Ausdruck2. Regulär
Die Ausdruckssyntax muss der Definition im Basisdefinitionsband von POSIX.1-2008 entsprechen.
Abschnitt 9.3, Basic Lang Ausdrücke, außer dass alle Muster im verankert sind
Anfang der Zeichenfolge (d. h. nur Sequenzen, die mit dem ersten Zeichen von a beginnen
Zeichenfolge mit dem regulären Ausdruck übereinstimmt) und daher ist nicht angegeben, ob
'^' ist in diesem Zusammenhang ein Sonderzeichen. Normalerweise soll der Matching-Operator a zurückgeben
Zeichenfolge, die die Anzahl der übereinstimmenden Zeichen darstellt ('0' bei Ausfall). Alternativ, wenn
Das Muster enthält mindestens einen Unterausdruck eines regulären Ausdrucks „[\(...\)]“, die Saite
übereinstimmend mit dem Rückreferenzausdruck "\1" werden zurückgegeben. Wenn die Rückreferenz
Ausdruck "\1" nicht übereinstimmt, wird die Nullzeichenfolge zurückgegeben.

Schnur Operand
Ein String-Argument ist ein Argument, das nicht als Argument identifiziert werden kann ganze Zahl Argument oder als
eines der im Abschnitt OPERANDEN gezeigten Ausdrucksoperatorsymbole.

Die Verwendung von String-Argumenten Länge, substr, Index, oder Spiel führt zu nicht spezifizierten Ergebnissen.

EXIT STATUS


Die folgenden Exit-Werte sollen zurückgegeben werden:

0 Die Ausdruck ergibt weder null noch null.

1 Die Ausdruck wird als null oder null ausgewertet.

2 Ungültig Ausdruck.

>2 Es ist ein Fehler aufgetreten.

FOLGEN OF FEHLER


Standard.

Das Folgende Abschnitte sind informativ.

Anmeldeformular ANWENDUNG


Nach der Argumentverarbeitung durch die Shell, ausdr ist nicht erforderlich, um das sagen zu können
Unterschied zwischen einem Operator und einem Operanden, außer durch den Wert. Wenn „$a“ is '=', der
Befehl:

ausdr $a = '='

sieht aus wie:

ausdr = = =

wie die Argumente übergeben werden ausdr (und sie alle können als die angesehen werden '=' Operator). Das
Folgendes funktioniert zuverlässig:

ausdr X$a = X=

Beachten Sie außerdem, dass dieser Band von POSIX.1-2008 Implementierungen zur Erweiterung von Dienstprogrammen ermöglicht.
Das ausdr Das Dienstprogramm ermöglicht es, den ganzzahligen Argumenten ein unäres Minus voranzustellen. Das
bedeutet, dass ein ganzzahliges Argument wie eine Option aussehen könnte. Daher die Konformität
Die Anwendung muss die verwenden "−−" Konstrukt von Richtlinie 10 des Bandes „Basisdefinitionen“.
von POSIX.1‐2008, Abschnitt 12.2, Dienstprogramm Syntax Richtlinien um seine Operanden zu schützen, falls vorhanden
Besteht die Möglichkeit, dass der erste Operand eine negative Ganzzahl (oder eine beliebige Zeichenfolge mit führender Zeichenfolge) ist?
Minus).

Beispiele:


Das ausdr Das Dienstprogramm hat eine ziemlich schwierige Syntax:

* Viele der Operatoren sind auch Shell-Kontrolloperatoren oder reservierte Wörter, also sind sie es auch
muss in der Befehlszeile maskiert werden.

* Jeder Teil des Ausdrucks besteht aus separaten Argumenten, daher ist die Verwendung großzügig
Zeichen ist erforderlich. Zum Beispiel:

┌─────────────────┬───────────────────── ──┐
UngültigGültig
├─────────────────┼───────────────────── ──┤
ausdr 1+2 │ ausdr 1 + 2 │
ausdr „1 + 2“ │ ausdr 1 + 2 │
ausdr 1 + (2 * 3) │ ausdr 1 + \( 2 \* 3 \) │
└─────────────────┴───────────────────── ──┘
In vielen Fällen sind die Arithmetik- und String-Funktionen Teil des Shell-Befehls
Sprache sind einfacher zu verwenden als ihre Entsprechungen in ausdr. Neu geschriebene Skripte sollten
vermeiden ausdr zugunsten der neuen Funktionen innerhalb der Shell; sehen Abschnitt 2.5, Parameter und
Variablen und Abschnitt 2.6.4, Arithmetik Erweiterung.

Der folgende Befehl:

a=$(expr $a + 1)

fügt 1 zur Variablen hinzu a.

Der folgende Befehl, z „$a“ gleich beidem /usr/abc/file oder einfach nur Datei:

ausdr $a : '.*/\(.*\)' \| $a

gibt das letzte Segment eines Pfadnamens zurück (d. h. Datei). Bewerbungen sollten das vermeiden
Charakter '/' allein als Argument verwendet; ausdr kann es als Divisionsoperator interpretieren.

Der folgende Befehl:

ausdr „//$a“ : '.*/\(.*\)'

ist eine bessere Darstellung des vorherigen Beispiels. Die Hinzufügung der "//" Zeichen
beseitigt jegliche Unklarheiten über den Divisionsoperator und vereinfacht den gesamten Ausdruck.
Beachten Sie außerdem, dass Pfadnamen Zeichen enthalten können, die in enthalten sind IFS variabel und sollte
zitiert werden, um es zu vermeiden „$a“ in mehrere Argumente erweitern.

Der folgende Befehl:

ausdr „$VAR“ : '.*'

gibt die Anzahl der Zeichen zurück VAR.

RATIONALE


In einem frühen Vorschlag wurden EREs in der Syntax des passenden Ausdrucks verwendet. Dies wurde geändert
zu BREs, um zu verhindern, dass historische Anwendungen beschädigt werden.

Die Verwendung eines führenden im BRE ist nicht spezifiziert, da viele historische
Implementierungen haben es trotz ihres Systems als Sonderzeichen behandelt
Dokumentation. Zum Beispiel:

ausdr foo : ^foo ausdr ^foo : ^foo

auf diesen Systemen jeweils 3 und 0 zurückgeben; Ihre Dokumentation würde das implizieren
umkehren. Daher wird die Verankerungsbedingung nicht spezifiziert, um einen historischen Bruch zu vermeiden
Skripte, die auf dieser undokumentierten Funktion basieren.

ZUKUNFT RICHTUNGEN


Keiner.

Nutzen Sie exprposix online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad