![]() |
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| UNIX för avancerade & Expertanvändare Expert-to-experten. Läs avancerade UNIX UNIX-kommandon, Linux operativsystem, systemadministration, programmering, Shell, Shell Scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| globala variabler i KLD (FreeBSD) | int80h | High Level Programming | 0 | 01-17-2008 08:14 |
| fastställa en global variabel i skriptet | arunkumar_mca | UNIX for Dummies Frågor & Svar | 3 | 10-23-2007 08:46 |
| perl globala variabler | reggiej | Shell-programmering och Skript | 3 | 08-29-2005 09:18 |
| inställning global variabel för alla användare | mästare | UNIX for Dummies Frågor & Svar | 4 | 08-15-2002 01:59 |
| Global PATH inställning | jxh | UNIX for Dummies Frågor & Svar | 5 | 07-20-2001 06:23 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
||||
|
Ställa globala variabler med KLÅ / Linux
Jag använder funktioner i ett manus, och för vissa konstiga skäl EXPORT kommandot doesnt tycks göra mitt variabler globalt.
Den har några idéer? Jag använder en funktion för att passera några utgångsenergi början en annan med hjälp av röret kommando, t.ex. Funktion 1 | Funktion 2 Funktion 2 läser värde gått från Funktion ett och sätter några variabler som baseras på dess värde sedan exporterar dem setStartSeq () ( Läs loggfil echo "Start Redo log: $ loggfil" arcPrefix \u003d $ (echo $ loggfil | cut-d_-f1 )"_"$( echo $ loggfil | cut-d_-f2) startSeq \u003d $ (echo $ loggfil | cut-d_-f3 | cut-d.-f1) export arcPrefix \u003d $ arcPrefix export startSeq \u003d $ startSeq ) Men senare i skriptet en annan funktion försöker att använda ovanstående exporterade variabler och de Arent inställd! Jag har bekräftat att genom att köra en export-p under senare funktion och alla värden som anges ovan är tomma. Jag är ny på KLÅ och Linux men har använt export utan problem med kornshell. Någon hjälp skulle vara mycket uppskattat ![]() |
|
||||
|
Ja det gör det, men jag vet inte hur annan gör det.
Jag har en funktion som utvinner data från en databas, som en annan funktion lyder. Detta sparar en startpunkt sekvensnumret. Sedan script utför olika åtgärder. Sedan i slutet en annan funktion måste få börja sekvensnumret behandla vissa filer. Här finns funktioner och hur de kallas. De två första pipelinad är de utvinna / läsa data från databasen, och sedan botten ett behov att få värdet läses av setStopSeq getLogFile | setStopSeq copyArc |
|
||||
|
Du bör inte använda export att göra variabler inom en funktion blivit global. När en funktion körs, det är variabler bör vara tillgänglig under resten av ditt manus.
Om du åberopar en subshell (medan uttalande?) I en av dina uppgifter, det är en annan historia. Det skulle bidra till att se andra funktioner för att felsöka problemet. Är du säker på att de värden från Funktion 1 har gått till Funktion 2 när röret? Om du vill passera en variabel till din andra funktionen, jag vill göra det så här: Kod:
func1 () {
var1=1
}
func2 () {
var2=$1
}
func1
func2 $var1
echo $var2
|