![]() |
|
|
google unix.com
|
|||||||
| Fórumok | Regisztráció | Fórum Szabályok | Linkek | Albumok | GYIK | Tagok listája | Naptár | Keres | Mai hozzászólások | Megjelöl Fórumok Olvas |
| Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt. |
Több, UNIX és Linux fórum témák Ön által talált Hasznos
|
||||
| Szál | Thread Starter | Fórum | Válaszok | Utolsó hozzászólás |
| csh, hogy nem hívja egy beágyazott 2 csh parancsfájl | pollsizer | Shell programozás és Scripting | 1 | 06-07-2008 02:22 PM |
| Shell script - Ha --- fi feltétel | yog_chavan | Shell programozás és Scripting | 4 | 05-07-2008 10:46 AM |
| Segítségre van szüksége a vizsgált feltétel shell script | pieman8080 | Shell programozás és Scripting | 9 | 09-11-2006 06:20 PM |
| UNIX script nem .... | khan1978 | A UNIX a fejlett és szakértői Felhasználók | 1 | 12-05-2005 01:28 PM |
| OR'ing feltétel script | vino | Shell programozás és Scripting | 9 | 04-21-2005 09:34 AM |
![]() |
|
|
LinkBack | Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|
|
||||
|
Ha a feltétel hiányában az SSH script
Szia, Én ssh-be, a távoli gép (ubuntu), és próbált végrehajtani egy kis szkriptet there.The script így néz ki: Kód:
ssh user@ubuntu <<EOF cd ~/test ls -l echo "Continue counting files starting with a`s ?" read answer if [ "$answer" = y ] then ls -l a* else exit fi EOF Most minden jól működik, hogy az IF-tesztet. A szkript úgy tűnik, hogy elkerülje az olvasás parancsot, (nem azonnali), és az összes többi a HA lesz figyelmen kívül hagyni. Azt mutatja meg, hogy egy hiba majdnem az "akkor" rész. Próbáltam épület helyi parancsfájlt a távoli gépen, és emlékeztet arra, hogy az SSH forgatókönyvet, de úgy tűnik, hogy nem is. Beépített egyszerű szkript a körülmények, de úgy tűnik, hogy nem hiba - "Váratlan fájl", akkor is, ha mindent helyesen néz ki, (ellenőrizni még od-c semmilyen rejtett karakter) Más szóval minden egyszerű szkriptet, hogy épített egy teszt állapotban egy SSH script Úgy tűnik, hogy nem. Anybody any ideas? És általában, van egy szabály, amit figyelembe kell venniük, amikor a végrehajtó teszt állapotban egy távoli gép segítségével SSH forgatókönyvet? Last edited by rubionis; 04/15/2008 at 06:42 PM.. Ok: hozzá a kódot tags |
|
||||
|
Igen, el is felejtettem mondani már #! / Bin / bash élén a forgatókönyvet.
És tényleg nem kell vissza, jelölje a forgatókönyvben, (Igen, tisztában vagyok a speciális karakterek konfliktusok a script), csak hogy egy `s példának. Say I elkerülni minden speciális karakterek az ssh script, nézd meg a forgatókönyvet OK? Szóval a kérdésem az, ha minden ismert konfliktusok használatakor vizsgálat feltétele az SSH script,. Amelyek nem vagyok tisztában, vagy hogy azt más szavakkal, amit egy általános formátumot a vizsgálat feltétele az SSH forgatókönyvet. Vagy én vagyok hiányzik valami a forgatókönyvet? Köszönöm a gyors választ. |
|
||||
|
Sőt, ha nyílt végű egyetlen idézet, amelyet le kell zárni. De ... még nagyobb probléma, hogy nem, mert ez egy távoli * * parancsfájlt. Szóval, kimutatásokat, mint ez: Kód:
ssh HOST <<EOF
echo $HOSTNAME
EOF
megmutatja az helyi HOSTNAME értéke, mivel a forgatókönyvet is értékelik a héjat, mielőtt azt megküldik a távoli gépen. Szóval, minden változó, hogy nem akarja értékelni kell elmenekült (azaz, "\ $ hostname"). Ha nem kell hivatkozni ANY a helyi változókat, akkor megakadályozza a forgatókönyvet, hogy értékelni kell a menekülés "EOF" elválasztó: Kód:
ssh HOST <<\EOF
# the backslash above will prevent the Variables below from being evaluated
echo $HOSTNAME
EOF
Általában, amikor azt a kódot / debug ilyen scripteket, meg kell küldeni számukra, hogy egy helyi fájl, hogy biztosítsa a kódot értékeli az út vár, és akkor lehet futtatni "sh-n, hogy ellenőrizze a szintaxist: Kód:
cat <<EOF > /tmp/test.script
# this is a temporary location
echo $VALUE1 \$VALUE1
EOF
|
|
||||
|
Köszönet gus2000,
Az elválasztó \ EOF volt a trükk az összes változót az SSH forgatókönyvet. Egy másik hasznos információ, hogy szem előtt tartani! (Tudom, csak óvatosan, a változók, BTW Én használatával hosszabb awk parancsot a script, és megmenekültem a $ a \ $.) De sajnos a teszt, ha nem sikerül újra: Idézet:
Szóval én FŐOLDAL kérdés továbbra is az IF-tesztet. Vagyis hogyan írok egy IF test (vagy egy teszt cmd általában) a ssh szkript nélkül nem? Last edited by rubionis; 04/15/2008 at 06:58 PM.. Indoka: code tags |
|
||||
|
Mit is kapunk a gyors választ nyilatkozatot olvasott? Úgy gondolom, hogy mivel az ssh nem interaktív (nem ellenőrző terminál) nem lehet egy terminál, mint ülés, vagy be kell dolgozni, vagy valami ilyesmit várnak, hogy a szkript helyben, és csak "összegyűjti" bármi info van szüksége a távoli fogadó, és azt helyben.
Készíts egy helyi szkript fut, és azt helyben: Idézet:
/ Lakris |
|
||||
|
Idézet:
Én is ezt bite me előtt néhány programot, hogy szeretnénk egy terminál, hogy küldjön adatokat is ... Root kap email garbage majd. Idézet:
Így: ssh felhasználó @ ubuntu "ls-l / teszt" echo "Tovább számolva kép, kezdve a" s? " read válasz if [ "$ választ" \u003d y] majd ssh felhasználó @ ubuntu "ls-la *" fi Ez nem olyan hatékony, a multple jel-on, de a logika minden helyi. Az egyetlen kivétel az, ha nagy mennyiségű adatok kiszűrését (egy grep, vagy valami ilyesmi) - megpróbálom, és örülök, hogy a hálózaton. |
![]() |
| Könyvjelzõk |
| Címkék |
| grep vagy, linux, ubuntu |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|