Verschiedene Shells beim Script im Script aufrufen?

Diskutiere Verschiedene Shells beim Script im Script aufrufen? im Shell-Skripte Forum im Bereich Programmieren unter Linux/Unix; s30a #!/bin/sh X1=x1 X2=x2 X3=x3 s30 #!/bin/sh ./s30a echo '$X1: ' $X1 echo '$X2: ' $X2 echo '$X3: ' $X3 echo '( ./s30a ; )' (...

  1. art

    art Jungspund

    Dabei seit:
    22.06.2007
    Beiträge:
    14
    Zustimmungen:
    0
    s30a
    Code:
    #!/bin/sh
    X1=x1
    X2=x2
    X3=x3
    s30
    Code:
    #!/bin/sh
    ./s30a
    echo '$X1: ' $X1
    echo '$X2: ' $X2
    echo '$X3: ' $X3
    echo '( ./s30a ; )'
    ( ./s30a ; )
    echo '$X1: ' $X1
    echo '$X2: ' $X2
    echo '$X3: ' $X3
    echo '{ ./s30a ; }'
    { ./s30a ; }
    echo '$X1: ' $X1
    echo '$X2: ' $X2
    echo '$X3: ' $X3
    echo '. ./s30a'
    . ./s30a
    echo '$X1: ' $X1
    echo '$X2: ' $X2
    echo '$X3: ' $X3
    
    Ausgabe :

    $X1:
    $X2:
    $X3:
    ( ./s30a ; )
    $X1:
    $X2:
    $X3:
    { ./s30a ; }
    $X1:
    $X2:
    $X3:
    . ./s30a
    $X1: x1
    $X2: x2
    $X3: x3

    Meine Frage :
    Wir haben also 4 Aufrufmöglichkeiten :
    1) ./s30a
    2) ( ./s30a ; )
    3) { ./s30a ; }
    4) . ./s30a
    Laut der Ausgabe, heisst es, dass nur im letzten Fall also ". ./s30a" wird
    das s30a in der gleichen Shell abgearbeitet..Stimmt es?
    Sollte der Aufruf von ./s30a nicht auch in der gleichen Shell passieren?
    ( ./s30a ; ) sollte per Def. in der anderen Shell ausgeführt werden.
    Aber was ist mit 1) und 3) ???
     
  2. StDoe

    StDoe Lebenskünstler

    Dabei seit:
    31.03.2006
    Beiträge:
    78
    Zustimmungen:
    0
    Hi, ich kenne noch 2 weitere:

    5) sh s30a # ist eigentlich das gleiche wie dein '2) ( ./s30a )'
    6) s30a # nur wenn 's30a' ausführbar ist (man chmod)

    dein '1) ./s30a' benutzt man nur, wenn 's30a' nicht ausführbar ist, ist sonst aber wie 6)

    ja.

    nein, die ABARBEITUNG erfolgt nicht in der gleichen shell.

    ja, semikolon ist nicht erforderlich.

    '3) { ./s30a ; }' weiß ich leider auch nicht. normalerweise benutzt man das, um befehle zu gruppieren, aber im zusammenhang mit variablen habe ich das auch noch nicht verwendet.
     
  3. #3 Wolfgang, 13.07.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo

    1) ./skript => Subshell
    2) ( ./skript ) => Subshell
    3) { ./skript; } => Subshell
    4) . ./skript => gleiche Shell

    ./skript ist nur erforderlich, wenn das aktuelle verzeichnis nicht im $PATH liegt. Sonst geht auch skript, wenn ausführbar.

    . <SKRIPT> führt SKRIPT in der gleichen Shell aus (Punkt SKRIPTNAME)
    Alternativ geht auch
    source skriptname

    Teste es selbst:
    Gruß Wolfgang
     
  4. #4 Schlaubi_fi.de, 13.07.2007
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    falsch, Wolfgangs Aussage ist hier richtig - Du kannst kein Skript so ./skript ausführen, wenn es kein Ausführbarkeitsrecht besitzt!
     
Thema:

Verschiedene Shells beim Script im Script aufrufen?

Die Seite wird geladen...

Verschiedene Shells beim Script im Script aufrufen? - Ähnliche Themen

  1. Vorteile/Nachteile der verschiedenen Shells

    Vorteile/Nachteile der verschiedenen Shells: Hey, ich wollte fragen was was die Vorteile/Nachteile der unterschiedlichen Shells sind. Also zwischen zsh, csh, bash usw usf. Was sind...
  2. die verschiedenen Shells- welche und warum ?

    die verschiedenen Shells- welche und warum ?: Hallo, ich bin Linux anfänger und frage mich welche Unterschiede es zwischen den einzelnen Shells gibt und wann man welche benutzen sollte?...
  3. Apache 2.2 Domain u. Sub-Domain auf verschiedenen Ports

    Apache 2.2 Domain u. Sub-Domain auf verschiedenen Ports: Hallo miteinander! Ich knabbere gerade an folgendem Problem: ich möchte, dass Apache auf example.com ausschließlich auf Port 80 antwortet und...
  4. SlickEdit: Verschiedene Varianten unter Linux

    SlickEdit: Verschiedene Varianten unter Linux: Slickedit, einer der ältesten, proprietären Texteditoren für Linux, wird ab sofort in zwei verschiedenen Varianten für Linux angeboten - einer...
  5. Qubes R2 unterstützt verschiedene Templates und Windows AppVMs

    Qubes R2 unterstützt verschiedene Templates und Windows AppVMs: Nach etwa zweijähriger Enwicklungszeit hat Joanna Rutkowska, die Gründerin der auf IT-Sicherheit spezialisierten Firma Invisible Things Lab, die...