![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Svar på vanlige spørsmål FAQ for UNIX, UNIX kommandoer, Linux operativsystem, systemadministrasjon, programmering, Shell, Shell Scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| Utvikling Releases: Linux Mint 4.0 Beta "Fluxbox", 4.0 Alpha "Debian" | iBot | UNIX og Linux RSS Nyheter | 0 | 01-04-2008 03:00 |
| Forklar line "mn_code \u003d` konv | grep ".. mn" | awk-F "\u003d" '(print $ 2)' `" | Lokesha | UNIX for Dummies Spørsmål og svar | 4 | 12-20-2007 01:52 |
| Hvordan kunne jeg lage et program som blandes med mange "|", "<" og ">" | strugglingman | High Level Programmering | 2 | 04-29-2006 09:11 |
| Ingen utpmx oppføring: du må exec "login" fra laveste nivå "shell" | peterpan | UNIX for Dummies Spørsmål og svar | 0 | 01-18-2006 04:15 |
| hvordan man skal be om en "lest" eller "levert" kvittering for post | plelie2 | Shell programmering og Skripting | 1 | 08-06-2002 04:26 |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Når vi skriver et skallskript det første utsagnet ville være #! / usr / bin / ksh eller noe av det samme ..
Hva gjør betyr dette?? Jeg vet # er en kommentar .. hva er dette! for?? Gi i dine tanker .... Takk, Nisha |
|
||||
|
Ja, det er det. Men bør dette slags kommentar være i første linje av skriptet, først da tar det dette skjemaet. Også, når skallet kommer over denne linjen, en ny prosess er gytt og erstattet med dette skall av ditt valg, og det er denne prosessen som vil analysere ditt script.
|
|
|||||
|
Dette vil trolig være mer enn du ønsket å vite, men her går likevel ....
Opprinnelig vi bare hadde en skallet på unix. Når du blir bedt om å kjøre en kommando, vil skallet forsøke å påberope seg en av exec ()-systemet kaller på den. Det kommandoen ble en kjørbar, ville exec lykkes og kommandoen kjøres. Hvis exec () mislyktes, ville skallet ikke gi opp, i stedet ville prøve å tolke kommandofilen som om det var et shell script. Så unix fikk mer skjell, og situasjonen ble forvirret. De fleste menneskene ville skrive skript i ett skall og skrive kommandoer i et annet. Og hver shell hatt ulike regler for fôring skript til tolk. Dette er da "#! /" Lure ble oppfunnet. Ideen var å la kjernen's exec ()-systemet samtaler lykkes med shell scripts. Når kjernen prøver å exec () en fil, det ser ved første 4 byte som representerer et heltall kalles et magisk tall. Dette forteller kjernen dersom den skulle prøve å kjøre filen eller ikke. Så "#! /" Ble lagt til magiske tall som kjernen vet, og det ble utvidet til å faktisk kunne kjøre shell scripts av seg selv. Men noen mennesker kunne ikke skrive "#! /" Holdt de forlater rommet ut. Så kjernen var exended litt igjen for å tillate "#!/" å jobbe som en spesiell 3 byte magiske nummer. Så #! / usr / bin / ksh og #! / usr / bin / ksh Nå betyr det samme. Jeg har alltid bruke den tidligere siden minst noen kjerner kan fremdeles eksisterer som ikke forstår det sistnevnte. Og merk at den første linjen er et signal til kjernen, og ikke skallet. Hva skjer nå er at når skall prøve å kjøre skript via exec () de bare lykkes. Og vi aldri snubler på deres ulike fallback ordninger. |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|