[Megoldva] DBUS változó írása fájlba, BASH szkripttel (SSH , gnome-screensaver-command)

Sziasztok!

A segítségeteket kérném az alábbi problémám megoldásában. A Google sajnos nem volt segítségemre, nem nagyon tudtam jól feltenni neki a kérdésem... Az ITT leírtak alapján jártam el, de egy érdekes eltérés van az output-ban, ami szerintem bash beállítási különbség lehet.

Ezt a parancsot szeretném lefuttatni az UHU linux 2.1-es pc-n bekapcsoláskor / belépéskor, tehát amint lehet, hogy el ne maradjon:

set | grep DBUS > /home/user/.DBUS_temp

ha belépés után gnome terminálban kiadom a parancsot, a .DBUS_temp fájl tartalma az alábbi lesz (és ez a jó):
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-uuGwxjD20P,guid=ab7c3d1d8659ae937218ca0050f7917e

Ezt akartam automatizálni a linkelt oldalon szereplők szerint, beletéve egy fájlba, majd futtathatóvá tenni, és a munkamenetek közé felvenni (bár ennél jobb megoldás is lehetne, ami még akkor lefut, amikor még nem lépett be egy felhasználó sem a grafikus felületre). Nem működött a dolog, nagy nehezen rájöttem, miért. A fájl tartalma az alábbi lett:

BASH_SOURCE=([0]="./programok/write_DBUS.sh")
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-uuGwxjD20P,guid=ab7c3d1d8659ae937218ca0050f7917e
_=./programok/write_DBUS.sh

A legfőbb kérdés: Hogy tudnám elérni, hogy a szkripttel létrejött fájl tartalma ugyan az legyen, mint a paranccsal létrejötté?

A helyzet az, hogy a telefonomról szeretnék SSH-zni a gépre, és kilőni a futó képernyővédőt, hogy képet készítsek a megjelenített képről. A használt PROGRAMmal tudok parancsokat is futtatni, de ha megpróbálom ott kiadni a set | grep DBUS > /home/user/.DBUS_temp parancsot, akkor létrejön a fájl, de üres. Gondolom ez azért van, mert nem az SSH szerveren található értéket akarja bele írni, hanem az SSH kliens telefonét, s gondolom annak nincs olyan. Ha a fenti problémát sikerül megoldani, akkor tudnátok esetleg választ adni arra a kérdésre is, hogy jól gondolom-e, és ha igen, hogyan lehet úgy kiadni a parancsokat, hogy az teljesen úgy működjön, mintha az SSH szerver előtt ültem volna?

Előre is köszönöm a segítséget!

Kodmen

Hozzászólások

echo "DBUS_SESSION_BUS_ADDRESS=${DBUS_SESSION_BUS_ADDRESS}" >fileneve

Köszönöm szépen a gyors választ, így remekül működik!
Erre a megoldásra nem jöttem volna rá, mivel erre felé nem keresgéltem.

Kodmen
-------------------
...a Linux filozófiája: "Keresd a veszélyt". Hopp! Nem így van. "Csináld magad!" Ez az! (Linus Torvalds)

Csak hogy tudd: A többi sor azért kerül be, mert abban is szerepel a DBUS szó, a grep argumentuma. Ezért sokkal biztonságosabb a felettem szóló megoldása, mert ott nem fordulhat elő ilyen.

Most, hogy mondod, tényleg rémlik, hogy a grep midíg felhozza önmagát, máskor csak az zavart meg, hogy a paracssorból kiadva nem jelent meg. Illetve érdekes módon a parancssorból kiadva a következő az eredmény:
~$ set | grep DBUS
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-uuGwxjD20P,guid=ab7c3d1d8659ae937218ca0050f7917e
_=./programok/write_DBUS.sh

A kimenet végén a kiemelt rész azért került oda, mert jelöli, hogy ... melyik szkript használja a változót (először az jutott eszembe, hogy melyik szzkript adja az értéket, de ez nyilván nem állná meg a helyét, ezért kicsit értetlenül állok a dolog előtt)?

Mivel nem értettem, próbálkoztam rájönni, mi lehet az ok, de idő közben eltűnt a kiemelt rész, szóval egy gonddal kevesebb :-)

Még az SSH kérdés érdekes, de lehet, hogy annak meg utána nézek a megfelelő fórumban.

Köszönöm a felvilágosítást!

Kodmen
-------------------
...a Linux filozófiája: "Keresd a veszélyt". Hopp! Nem így van. "Csináld magad!" Ez az! (Linus Torvalds)

Aha!

Akkor értem, miért nem működött nekem, mikor másnak meg igen: én "kikommenteltem" előtte a sleep 120 részt, így ez lett az első parancs. Köszi! Sokat tanultam :-)
Kodmen
-------------------
...a Linux filozófiája: "Keresd a veszélyt". Hopp! Nem így van. "Csináld magad!" Ez az! (Linus Torvalds)