Zum Inhalt springen

Bash/Prozesssubstitution

Aus Foxwiki

Bash/Prozesssubstitution - Ein-/Ausgabe von Prozessen mit einer FIFO-Datei verbinden Bash/Prozesssubstitution - Beschreibung

Beschreibung

Installation

< /syntaxhighlight>

== Aufruf ==
<syntaxhighlight lang="bash" highlight="1" line copy>
< /syntaxhighlight>

=== Optionen ===
{| class="wikitable sortable options gnu big"
|-
! Unix !! GNU !! Parameter !! Beschreibung
|-
| || || || 
|-
|}

=== Parameter ===
=== Umgebungsvariablen ===
=== Exit-Status ===
{| class="wikitable options col1center big"
|-
! Wert !! Beschreibung
|-
| 0 || Erfolg
|-
| >0  || Fehler
|}

== Anwendung ==
<syntaxhighlight lang="bash" highlight="1" line copy>
< /syntaxhighlight>

=== Problembehebung ===

== Konfiguration ==
=== Dateien ===
{| class="wikitable options big"
|-
! Datei !! Beschreibung
|-
| || 
|-
| || 
|}

<noinclude>

== Anhang ==
=== Siehe auch ===
<div style="column-count:2">
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}

=== Dokumentation ===
<!--
; Man-Page 
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)]

; Info-Pages 
-->

=== Links ===
==== Projekt ====
==== Weblinks ====

[[Kategorie:Bash/Expansionen]]

</noinclude>

= TMP =
== Beschreibung ==
In ''Liste'' genannter Kommandos in einer Subshell starten
; Aufruf
<syntaxhighlight lang="bash" highlight="1-2" line>
<(Liste)
>(Liste)
Ein-/Ausgabe

Audgabe

(>(...))

Eingabe

(<(...))

der Kommandos mit einer automatisch erzeugten FIFO-Datei verbunden

FIFO-Datei

Auf der Kommandozeile erscheint nach erfolgter Substitution der Name der erzeugten FIFO-Datei

ls <(echo "hello")
 /dev/fd/63
Beispiel

Mithilfe der Prozesssubstitution könnte man den vi dazu bewegen, die Ausgaben eines Kommandos zu lesen

vi <(ls /boot/vm*)
 /boot/vmlinuz
 /boot/vmlinuz.old
 ~
  
 ~
 "/dev/fd/63" [fifo/socket] 2L, 32C
                                        1,1            All
Bestandsaufnahme laufender Prozesse
diff <(ps ax) <(sleep 10; ps ax)
 64d63
 <  2129 pts/0    S      0:00 /bin/bash
 67,68c66
 <  2132 pts/0    R      0:00 ps ax
 <  2133 pts/0    S      0:00 sleep 10
 ---
 >  2134 pts/1    S      0:00 top
 >  2135 pts/0    R      0:00 ps ax

Im Beispiel ist der Prozess top neu hinzugekommen, dass die Aufrufe der Kommandos ps und sleep erscheinen, war zu erwarten

Und abschließend vergleichen wir die Inhalte zweier Archive

 '''diff <(tar tzf Buch1.tar.gz) <(tar tzf Buch.tar.gz)'''
 325a326,328
 > Images/tkinfo.gif
 > Images/GlobaleVariable.gif
 > Images/LokaleVariable.gif

Innerhalb der Klammern

 >(...)
 <(...)

können Parameter- Kommando- sowie arithmetische Substitutionen benutzt werden

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Problembehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch



Dokumentation

Links

Projekt

Weblinks