![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| Awk / skal fråga: Läs från filen och tilldela variabler. | akbar | Shell-programmering och Skript | 3 | 05-07-2008 07:10 |
| Behovet av att läsa data från en fil (cut / awk) | rejirajraghav | Shell-programmering och Skript | 1 | 04-29-2008 04:13 |
| Läs från datafil | fongthai | Shell-programmering och Skript | 12 | 02-27-2007 09:22 |
| Hur man läser vissa linjer i en bulk filen med C-fil programmering | rajan_ka1 | High Level Programming | 10 | 11-10-2005 03:29 |
| För att läsa en textfil med hjälp av skal Programmering | sandytul | UNIX for Dummies Frågor & Svar | 1 | 04-11-2001 12:15 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
||||
|
Post Shell programmering: Fråga om källan en fil och läsa data från filen
Detta är skalprogrammering uppdrag.
Det måste skapa en fil som heter. Std_dbrc innehåller STD_DBROOT \u003d $ (HOME) / class/2031/Assgn3/STD_DB (som omfattar alla mina enkel databas filer) och jag ska använda detta. std_dbrc i min skriptfil (läsa data från databasen filer) så här:. $ (HOME) /. Std_dbrc (betyder källa en fil eller mapp) att importera hela databasen till mitt manus och använder dem. Min fråga är vad behöver jag göra efter användning. $ (HOME) /. Std_dbrc i mitt manus? Jag är inte säker på hur man använder det. Please help. |
|
||||
|
Något om mitt uppdrag
1. Studentdatabas
I detta uppdrag kommer du att designa en enkel fil baserad databas. Alla filer är i den enklaste formen av CSV (Comma Separated Values) där varje par av intilliggande områden är sperated av ett kommatecken och fält inte innehåller några kommatecken, inte ens undgått. Varje rad innehåller en enskild post och varje post innehåller flera områden. En uppsättning filer kommer att ges och din kod kommer att prövas mot dessa filer samt ytterligare några som Du kommer inte veta i förväg. Du kan antingen använda aska eller bash. Du kan använda alla stan - dard nytta vi diskuterade i klassen men man kan inte skriva ett program i något annat program - ming miljö. Ditt program inte skapar några filer (annat än en tillfällig fil i / tmp / katalog) var som helst och skriva allt i standard output. 2. Filer i databasen Databasen kommer att ha tre typer av filer. Den första, som det finns bara en Exempelvis är Konton filen. Det innehåller poster som har tre fält. Det första fältet är ett kontonummer, är det näst sista namnet på eleven och den tredje är den första namn. Observera att vissa elever har namn med tecken utanför brev som mellanslag, prick eller bindestreck. Den andra typen av fil är enrollemnt fil, en för varje kurs och de är namngivna CSExxxx där X är siffror, väldigt likt våra egna kurser. De innehåller ett antal poster, var och en med ett enda fält, ett kontonummer. Om en elev har regis - registrerade för en kurs, förefaller hans kontonummer i motsvarande handlingar. Den tredje typen av fil är varumärkena fil, en in av kurs instruktörer en för varje kurs, heter MARKSxxxx och är associerade med motsvarande CSExxxx kurs. Filerna innehåller flera register, ett för varje elev under som fick ett märke. Varje post innehåller två fält: kontonummer och stu - Dent märke från 0 till 100. Om en elev är i CSExxxx men har inga rekord i motsva - motsvarande MARKSxxxx får en nolla. Om filen CSExxxx existerar men filen MARKSxxxx inte alla elever få IP (som pågår). Det finns en fil i databasen och detta är bosatt i hemkatalogen för användare, heter. std_dbrc och innehåller exakt ett uttalande STD_DBROOT \u003d <blahblah> och detta används av dina skript för att hitta där är den katalog av databasen. 1 3. Scripts Du måste skriva fyra skript. Alla skript följer specifikationen om startfil. std_dbrc och ge rimliga felrapportering. Alla saknade filer bör rapporteras. Produktionen ska vara exakt som i specifikationen utan någonting extra. De kommer att testas både för hand och automarking. 3.1. Hitta namnet Skriv ett skript std_db_acc2name att med tanke på kontonummer en student som Kommandoradsargumentet returnerar namnet som kommaseparerade värden. 3.2. Hitta kurser Skriv ett skript std_db_acc2courses att med tanke på kontonummer en student som Kommandoradsargumentet återgår kommaseparerad lista av kurser eleven är registrerats. 3.3. Hitta Marks Skriv ett skript std_db_acc2marks att med tanke på kontonummer en student som en Kommandoradsargumentet återgår kommaseparerad lista av kurser och markerar stu - dent har fått. 3.4. Skapa tabell Skriv ett skript std_db_acc2table som returnerar en CSV-fil med följande struktur. Alla poster i filen innehåller samma antal områden. Den första posten är huvudpost och dess första fältet är bara strängen "Std. Namn. Resten av fälten är 4-siffriga koder för alla kurser. Alla de följande poster har som första fältet student namn (förnamn, sedan efternamn och inget kommatecken) och resten av fälten är motsvarande märken, tom om den studerande inte är registrerad på kursen och förord - Lar märke eller IP om studenten är registrerad. Studenter som är registrerade i någon kurs inte har en post i denna tabell. |
|
||||
|
Vanliga frågor om Assgn 3.
Vad betyder. Std_dbrc innehålla? Något som: STD_DBROOT \u003d $ (HOME) / class/2031/Assgn3/STD_DB Du behöver inte lämna in denna fil så kommer jag att använda min som kommer att peka på min std_db. Men det bör fungera med en sådan fil, annars ditt program kommer inte att klara proven. Behöver vi ett snedstreck (/) i STD_DBROOT definition? Ditt program ska fungera även om det inte finns någon snedstreck. Tanken är att två eller flera snedstreck är likvärdiga med en, så det är bättre om du har två snedstreck istället för none (katastrof). Kan vi åberopa något av våra skript från ett annat script? I princip ja, men det är mycket säkrare om du inte om du inte vet vad du gör. Om jag var du skulle jag välja att klippa och klistra. Hur använder jag. Std_dbrc inifrån mitt eget script? Du källor det. Sourcing är normalt bara en punkt (.). . $ (HOME) /. Std_dbrc Om du skapar denna fil och det verkar förlorade användning ls-a Varför kan jag inte se min. Std_dbrc med ls? Eftersom filer som börjar med en punkt är dolda i Unix / Linux. Använd ls-a för att se alla dina filer i den aktuella katalogen. Jag använder mest ls-ltr eller ls-latr, för att se den senaste (och därmed mest relevanta filer) sista (det första man kunde ha bläddrat ovanför skärmen). Vad betyder det att "källa" en fil? Den manuella säger: . filnamn [argument] Källa filnamn [argument] Läsa och köra kommandon från filnamn i nuvarande skal miljö och återlämna Returvärdet det sista kommandot exe - cuted från filnamn. Om filnamnet inte innehåller ett snedstreck, filnamn i PATH används för att hitta den katalog som innehåller filnamn. Filen sökte i PATH behöver inte vara exe - cutable. När bash inte POSIX läge, den aktuella katalogen har sökt om ingen fil finns i PATH. Om sourcepath alternativ till shopt inbyggda kommandot är avstängd, är den väg inte igenom. Om några argument levereras blir de det positionsparametrar när filnamn körs. Annars positional parametrar är oförändrade. Avkastningen status är den status sista kommandot lämnat i skriptet (0 om ingen kommandon utförs), och falskt om filnamnet inte hittas eller kan inte läsas. De flesta detaljer finns irrelevanta för dig, men det sak att tänka på är att det kör kommandon från filnamn i nuvarande skal miljön. Måste jag ändra variabeln PATH miljön för detta uppdrag? NEJ! Du bör inte ändra sökvägen. I allmänhet är vi inte leker med PATH om vi vet vad vi gör. |
|
||||
|
http://www.unix.com/unix-for-dummies...om-forums.html
Citat:
|
![]() |
| Komihåglista |
| Taggar |
| Linux-kommandon |
| Thread Tools | Sök i denna tråd |
| Visningslägen | Betygsätt denna tråd |
|
|