Anzeige:
Ergebnis 1 bis 10 von 10

Thema: su -c/bash -c und Variablen setzen

  1. #1
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549

    su -c/bash -c und Variablen setzen

    Guten Tag,

    ich möchte sowas hier zum laufen bringen:
    Code:
    su -c "A='bla bla'; echo $A"
    Dasselbe funktioniert genausowenig für die bash einfach so:
    Code:
    bash -c "A='bla bla'; echo $A"
    [Edit]Kleine Anmerkung: Dass die Bilschirmausgabe des Variableninhalts mittels echo funktioniert ist mir nicht wichtig.
    Was ich will, ist die Variable setzen und dann später weiterverwenden (also noch innerhalb der in dem su -c/bash -c aufgelisteten Kommandos)[/Edit]

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  2. #2
    Registrierter Benutzer Avatar von John W
    Registriert seit
    29.01.2010
    Beiträge
    211
    Ein doppeltes Anführungszeichen schützt nicht vor Ersetzung.
    $A -> \$A
    Also:
    su -c "A='bla bla'; echo \$A"

  3. #3
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Achso, ja klar. Vielen Dank!

    Ich hatte irgendwie angenommen, dass er wenns die Variable A nicht gibt (was ja in der äusseren shell der Fall ist) er das $A einfach da stehen lassen würde (woher sollte er auch wissen was da reinsetzen...) und dann nicht einfach das $A löscht. Was er aber tut.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  4. #4
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    Bei mir gehts auch so

    Code:
    bash -c "A='bla bla'; echo ${A}"
    cu Bischi

    PS: Aber frag mich bitte nicht wieso - das war irgendwie Intuition

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

  5. #5
    Registrierter Benutzer Avatar von John W
    Registriert seit
    29.01.2010
    Beiträge
    211
    Entweder spinnt meine Shell oder deine, weil bei mir spuckt der nur ne leere Zeile aus...

  6. #6
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    Interessant... Funktioniert bei dir die erste Lösung?

    Lg Bischi

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

  7. #7
    Registrierter Benutzer Avatar von John W
    Registriert seit
    29.01.2010
    Beiträge
    211
    Code:
    $ bash -c "A='bla bla'; echo $A"
    
    $ bash -c "A='bla bla'; echo ${A}"
    
    $ bash -c "A='bla bla'; echo \$A"
    bla bla
    Würde mich aber eig. auch wundern, wenn die ${A}-Lösung funktionieren würde, da dies ja im Prinzip auch nur $A ist, wobei genauer definiert ist, wo A (als Bezeichner) aufhört.

  8. #8
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    Ok - irgendwas hab ich falsch gemacht... Meine Lösung geht auch nicht mehr

    Sorry für das Chaos

    MfG Bischi

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

  9. #9
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Das wäre zu schön gewesen, bischi, wenn deine Lösung funktioniert hätte. Allerdings auch äusserst inkonsequent und irgendwie etwas schizophren

    MfG Peschmä, escape-characters um sich werfend
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  10. #10
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    Zitat Zitat von peschmae Beitrag anzeigen
    Das wäre zu schön gewesen, bischi, wenn deine Lösung funktioniert hätte.
    Frag mich bitte nicht, was genau ich gemacht hab. Aber ich hab irgendwas ausprobiert und hätte mit jedem gewettet, dass es funktioniert hat Naja - vielleicht hatte ich ja ausversehen in meinen Demo-Code nen Escape-Char mit reinkopiert

    Lg Bischi

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •