The UNIX and Linux Forums  
Hello and Welcome-tól az Egyesült Államokat, hogy az UNIX és Linux Forums? Köszönjük, hogy meglátogatta és csatlakozik Globális Közösség.

Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
google unix.com



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
Elképzelhető-e egy gyermek folyamatot vissza a konkrét értéket a szülő folyamat? Ametis1970 Magas szintű Programozás 8 04-10-2008 12:22 AM
kb gyermek folyamat compbug A UNIX a dummies Kérdések és válaszok 12 03-22-2006 07:55 PM
gdb a gyermek folyamat shriashishpatil A UNIX a fejlett és szakértői Felhasználók 4 12-12-2005 07:57 AM
KDM gyermek folyamat larryase A UNIX a dummies Kérdések és válaszok 6 01-24-2005 05:41 PM
Gyermek folyamat PID skannan Magas szintű Programozás 2 06-10-2002 08:54 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 05-25-2006
MichLab MichLab is offline
Regisztrált felhasználó
  
 

Join Date: May 2006
Hozzászólások: 4
Smile A KSH, hogyan működik egy gyermek-line al-folyamat kap saját PID?

Ez nem ugyanaz, mint néhány másik elküldött elemek foglalkozó al-folyamat PID (láttam egyébként).

Ha zot tartalmazza:
echo "fő mypid: $ $ - lastpid: $!"
(
echo "block mypid: $ $ - lastpid: $! - ppid: $ PPID"
a ps-ef> xxx -
alvás 5
echo "block mypid: $ $ - lastpid: $! - ppid: $ PPID"
) &
echo "fő mypid: $ $ - lastpid: $! - ppid: $ PPID"
alvás 6
Aztán: KSH zot (a Solaris és az MKS) eredménye:
fő mypid: 7.318 - lastpid:
blokk mypid: 7.318 - lastpid: - ppid: 607
fő mypid: 7.318 - lastpid: 7.320 - ppid: 607
blokk mypid: 7.318 - lastpid: - ppid: 607
Ez meglep, hogy a villás gyerek folyamat, hogy a $ $ még mindig visszatér a PID-et a fő folyamat. azaz mindkettő a $ $ 7.318 - Azt várnánk, hogy a gyermeket, hogy a $ $ a $ 7.320. (Itt most figyelmen kívül hagyni a ppid - néztem a kapcsolódó fogalmakat.)

Ha ezt: "grep 7.320 xxx" you get:
root 7320 7318 0 13:59:45 pts / 9 0:00 ksh zot
root 7321 7320 1 13:59:45 pts / 9 0:00 ps-ef
ami világosan mutatja, a gyermek folyamat, és ha úgy döntesz, hogy "kill -9", hogy a PID előtt 5 másodperc alatt elfogy, akkor nem kap blokkot a második sorban.

Célom volt, hogy a gyermek folyamat eredménye, hogy a saját pid helyett a szülő csinálja, hogy a nevében. Tisztában vagyok azzal, hogy a szülő tudja használni $! de miért nem a gyerek nem használhatja $ $ a saját PID? Apropó, ha a kivonat a blokk-kód és tedd egy külön fájlba, és nevezed, akkor kap a várt eredményeket.

Előre is köszönöm minden betekintést.
Michel
  #2 (permalink)  
Old 05-25-2006
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Helyszín: Ashburn, Virginia
Hozzászólások: 9.123
KSH állítja össze a kódot, majd végrehajtja. A $ $ elment régen a villa bekövetkezik. Így cserélje ki (stuff) megjegyzéstétel
ksh-c "cucc"

Nem jó megoldás, de működik.
  #3 (permalink)  
Old 05-25-2006
MichLab MichLab is offline
Regisztrált felhasználó
  
 

Join Date: May 2006
Hozzászólások: 4
Akkor hogyan fog valaha is a következő munkák:
xxx \u003d $ (date)
(Sleep 5
xxx \u003d $ (date)
echo $ xxx
) &
echo $ xxx
ha $ xxx volt kényszeríteni, amikor a (...)& olvas, akkor a két echo mindig mutat egy időben, de nem (vagy nem tudod megpróbál ez). Azt akarod mondani, hogy a $ $ nem kényszerítette a különböző szabályok, mint $ xxx?
  #4 (permalink)  
Old 05-25-2006
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Helyszín: Ashburn, Virginia
Hozzászólások: 9.123
Igen. Különleges paraméterek és elnevezett paraméterek eltérőek. Azt követően néhány példa bizonyítja ezt a kódot, de ha megvert hozzá.
  #5 (permalink)  
Old 05-26-2006
MichLab MichLab is offline
Regisztrált felhasználó
  
 

Join Date: May 2006
Hozzászólások: 4
Thumbs up

Kösz a betekintést.

Én meg a viselkedés határvonal dió feltételezhető, különböző szabályokat a nyomást változók.

Egy vitatható érvényes meghatározás tudok képzelni egy helyettest, hogy "$ $" per definitionem az eredeti shell PID, szemben a jelenleg zajló folyamat a PID, független al-kagyló hasonlóan PPID az anyavállalat az eredeti borító függetlenül attól, hogy a sub-shell, vagy sem. Ez összhangban van néhány ember, ksh oldalakon ástak ki, de nem egyértelmű.

Úgy tűnik, hogy összhangban legyenek Néhány kísérlet Próbáltam az "eval"-val egy összetett karakterláncot eredményez "$ $", amely kizárja az eredeti elemző a (....)& a nyomást nyilvánvaló $ $, és hogy is gyártottak ugyanazzal az eredménnyel.

Ksh, hogy kezeli a alhéj eltérően, villás például a KSH összhangban van az egyéb vonatkozásait viselkedés (pl. a változókat nem kell exportálni, amit az egy al-héj), de az biztos, hogy hírnök megjelöl fogalmának használata inline kód vs külső szkripteket bármilyen következetes módon.

Én abból egy alternatív stratégia (Messiás a ps-ef nem lehetőség, mert a kódot kérnek alatt futó Solaris és Windows / MKS amelyben ps miatt eltér az információ feldolgozási paraméterek által fenntartott Windows).

Köszönet újra.
Michel
  #6 (permalink)  
Old 05-26-2006
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Helyszín: Ashburn, Virginia
Hozzászólások: 9.123
Egy jobb módszer is gondol rá, hogy "alhéj" nem garantált, hogy egy új folyamat. Nézd figyelmesen a meghatározása (), és megtalálni a "külön környezet" helyett az "új folyamat". Mindaddig, amíg nincs mellékhatása hirdeti a szülő környezetre, akkor lehetne tenni anélkül, hogy villa és forking drága. Szóval ez nyitva hagyja a gyorsabb implementációja. Dave Korn is akart ksh, hogy az egyetemes és néhány operációs rendszer nem teszi lehetővé a fork (). (Lehet, hogy a spawn (), amely olyan, mint egy fork () / exec () combo, vagy valami ilyesmi.)

Mindegy, gondoltam, úgy kell csinálni ... azt hiszem. Háttérben az alhéj. Have a szülő beszerezni $! és küldje be a alhéj keresztül named pipe. Aztán a szülő várja a alhéj a kilépéshez.
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 06:19 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0