![]() |
|
|
Google unix.com
|
|||||||
| Foren | Registrieren | Forum-Regeln | Links | Alben | FAQ | Benutzerliste | Kalender | Suche | Die heutige Beiträge | Alle Foren als gelesen markieren |
| Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier. |
Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
|
||||
| Faden | Thread Starter | Forum | Antworten | Last Post |
| Awk / Shell-Frage: Lesen Sie aus der Datei und weisen Sie den Variablen. | akbar | Shell Programmierung und Scripting | 3 | 05-07-2008 07:10 PM |
| Brauchen Sie das Lesen von Daten aus einer Datei (cut / awk) | rejirajraghav | Shell Programmierung und Scripting | 1 | 04-29-2008 04:13 PM |
| Lesen aus Datei | fongthai | Shell Programmierung und Scripting | 12 | 02-27-2007 09:22 PM |
| Wie lese ich bestimmte Zeilen in einer Bulk-Datei mit C-Programmierung Datei | rajan_ka1 | High-Level-Programmierung | 10 | 11-10-2005 03:29 AM |
| So lesen Sie eine Text-Datei mit Shell-Programmierung | sandytul | UNIX for Dummies Questions & Answers | 1 | 04-11-2001 12:15 PM |
![]() |
|
|
LinkBack | Thread Tools | Suche diesen Thread | Rate Thread | Anzeige-Modi |
|
|
|
||||
|
Post-Shell-Programmierung: Frage zu Quelle eine Datei und Lesen von Daten aus der Datei
Diese Zuordnung wird Shell-Programmierung.
Es muss eine Datei namens. Std_dbrc enthält STD_DBROOT \u003d $ (HOME) / class/2031/Assgn3/STD_DB (die alle meine einfache Datenbank-Dateien) und ich bin gonna verwenden. std_dbrc in meinem Skript-Datei (Lesen Sie die Daten aus der Datenbank-Dateien) wie folgt aus:. $ (HOME) /. Std_dbrc (Quelle bedeutet, eine Datei oder einen Ordner) die Einfuhr aller Datenbank auf mein Skript und zu nutzen. Meine Frage ist, was muss ich tun, nach dem Gebrauch. $ (HOME) /. Std_dbrc in meinem Script? Ich bin mir nicht sicher, wie man sie benutzen kann. Bitte helfen. |
|
||||
|
Etwas über meine Aufgabe
1. Schüler-Datenbank
In diesem Auftrag wird ein einfaches Design-, Datei-basierte Datenbank. Alle Dateien sind in Die einfachste Form von CSV (Comma Separated Values), wo jedes Paar von benachbarten Feldern sperated sind durch ein Komma und die Felder enthalten keine Kommas, auch nicht entgangen. Jede Zeile enthält einen einzelnen Datensatz und jeden Datensatz enthält mehrere Felder aus. Eine Reihe von Dateien werden und Ihr Code wird getestet gegen diese Dateien sowie ein paar mehr, dass Sie wird nicht im Voraus wissen. Sie können entweder Asche oder bash. Sie können alle Standard - Standard Utility wir in der Klasse diskutiert, aber du kannst nicht ein Programm schreiben, in einem anderen Programm - Ming Umwelt. Ihre Programme schaffen keine Datei (andere als die Möglichkeit einer vorübergehenden Datei im / tmp /-Verzeichnis), die beliebig und drucken alles, was in der Standard-Ausgabe. 2. Dateien in der Datenbank Die Datenbank wird drei Arten von Dateien. Die erste, von denen es nur einen Beispiel ist die Konten-Datei. Es enthält Aufzeichnungen, die drei Felder. Der erste Bereich ist Konto-Nummer, die zweite ist der letzte Name des Schülers und der dritte ist die erste Name. Bitte beachten Sie, dass einige Schüler die Namen nicht mit Schreiben Zeichen wie Raum, Punkt oder Bindestrich. Die zweite Art des Dossiers ist die enrollemnt Datei, eines für jeden Kurs, und sie sind Namen CSExxxx, wo die x sind Ziffern, sehr viel, wie unsere eigenen Kurse. Sie enthalten eine Reihe von Datensätzen, die jeweils mit einem einzigen Feld, ein Konto-Nr. Wenn ein Student hat Regis - ten für einen Kurs, seine Konto-Nummer in der entsprechenden Datei. Die dritte Art des Dossiers ist die Marken-Datei, die von Dozenten ein für jeden Kurs, den Namen MARKSxxxx und sind im Zusammenhang mit der entsprechenden CSExxxx natürlich. Die Dateien enthalten mehrere Datensätze, eine für jeden Schüler im Laufe dass eine Marke. Jeder Datensatz besteht aus zwei Bereichen: die Kontonummer und die Stu - dent Marke von 0 bis 100. Wenn ein Student ist in der CSExxxx, hat aber keine Aufnahme in die entspre - gen MARKSxxxx bekommt eine Null. Wenn die Datei CSExxxx zwar existiert, aber die Datei MARKSxxxx nicht, alle Schüler IP (das ist in Arbeit). Es gibt noch eine weitere Datei in der Datenbank und befindet sich im Home-Verzeichnis des Benutzer, benannt ist. std_dbrc und genau eine Aussage STD_DBROOT \u003d <blahblah> und dies wird von Ihren Skripten zu finden, wo ist das Verzeichnis der Datenbank. 1 3. Scripts Sie haben vier Skripte zu schreiben. Alle Skripte die Spezifikation in Bezug auf die Start-Datei. std_dbrc und einen angemessenen Fehlerberichterstattung. Alle fehlenden Dateien sollten zu verzeichnen. Die Ausgabe sollte genau so ein, wie in der Spezifikation, ohne etwas extra. Sie werden sowohl von Hand geprüft und automarking. 3.1. Suchen Sie den Namen Schreiben Sie ein Skript std_db_acc2name Rechnung, dass angesichts der Zahl der Schüler als Kommandozeilen-Argument gibt den Namen als durch Komma getrennte Werte. 3.2. Finden Sie die Kurse Schreiben Sie ein Skript std_db_acc2courses Rechnung, dass angesichts der Zahl der Schüler als Kommandozeilen-Argument liefert die durch Komma getrennte Liste der Kurse der Student registriert. 3.3. Finden Sie die Marken Schreiben Sie ein Skript std_db_acc2marks Rechnung, dass angesichts der Zahl der Schüler als ein Kommandozeilen-Argument liefert die durch Komma getrennte Liste von Kursen und markiert den Stu - dent hat. 3.4. Erstellen Sie die Tabelle Schreiben Sie ein Skript, dass std_db_acc2table liefert eine CSV-Datei mit den folgenden Struktur. Alle Einträge in der Datei enthalten die gleiche Anzahl von Feldern. Die erste Platte, ist die Steuersatz und der erste Bereich ist nur die Zeichenkette "Std. Name ". Der Rest der Felder sind die 4-stelligen Codes für die alle Kurse. Alle folgenden Einträge haben, da ihre erste Feld der Student Name (Vorname, dann Nachname, und kein Komma) und der Rest der Felder sind die entsprechenden Marken, leer, wenn der Student nicht in den Verlauf und die Ver - lar-oder IP, wenn der Student registriert ist. Studenten, die in keine natürlich nicht haben einen Datensatz in dieser Tabelle. |
|
||||
|
Häufig gestellte Fragen für Assgn 3.
Was macht die. Std_dbrc enthalten? Etwas wie: STD_DBROOT \u003d $ (HOME) / class/2031/Assgn3/STD_DB Sie brauchen diese Datei nicht, ich werde mich mit mir, die auf meine std_db. Aber es sollte mit einer solchen Datei, sonst wird das Programm nicht über die Tests. Brauchen wir den abschließenden Slash (/) in der STD_DBROOT Definition? Ihr Programm sollte auch wenn es keine abschließenden Schrägstrich. Die Idee ist, dass zwei oder mehr Schrägstriche gleichwertig sind, die einen, dann ist es besser, wenn Sie über zwei Schrägstriche als keine (Katastrophe). Kann man sich auf einer unserer Skripte aus einem anderen Script? Im Prinzip ja, aber es ist viel sicherer, wenn Sie nicht, es sei denn, Sie wissen, was Sie tun. Wenn ich Sie Ich möchte sich für Ausschneiden und Einfügen. Wie benutze ich die. Std_dbrc aus meinem eigenen Skript? Sie ist Quelle. Sourcing ist in der Regel nur einen Punkt (.). . $ (HOME) /. Std_dbrc Wenn Sie diese Datei, und es scheint, verloren Nutzung ls-a Warum kann ich nicht meine. Std_dbrc mit ls? Denn Dateien, die mit einem Punkt sind sich in Unix / Linux. Verwenden Sie ls-a, um alle Dateien im aktuellen Verzeichnis. Ich meistens Sie sich mit ls-l oder ls-latr, um zu sehen, die jüngsten (und damit die meisten relevanten Dateien) letzte (das erste man hat geblättert über den Bildschirm). Was bedeutet es, "Quelle" eine Datei? Das Handbuch sagt: . filename [Argumente] Quelldateiname [Argumente] Lesen und Ausführen von Kommandos Dateinamen in der aktuellen Shell Umwelt und die Rückkehr der Exit-Status des letzten Befehls exe - cuted von Dateinamen. Wenn Dateiname nicht enthalten einen Schrägstrich, Dateinamen im Pfad verwendet werden, um das Verzeichnis mit Dateinamen. Die Datei hast in PATH muss nicht exe - cutable. Bei der bash ist nicht in posix Modus, das aktuelle Verzeichnis gesucht wird, wenn keine Datei findet sich in PATH. Wenn die SourcePath Option, um die shopt eingebaute Befehl deaktiviert ist, wird der Pfad nicht durchsucht. Wenn alle Argumente sind, werden sie zu den Parameter, wenn Dateinamen ausgeführt wird. Andernfalls wird die Parameter bleiben unverändert. Die Rückkehr ist der Status der letzten Befehl beendet innerhalb des script (0, wenn keine Befehle werden ausgeführt), und falsch, wenn Dateiname nicht gefunden wird oder kann nicht gelesen werden. die meisten der Informationen sind nicht für Sie, aber die Sache, die man beachten ist, dass er führt Befehle aus Dateinamen in der aktuellen Shell-Umgebung. Muss ich die Umgebungsvariable PATH für diese Aufgabe? NEIN! Sie sollten nicht den Pfad ändern. In der Regel spielen wir nicht mit PATH, es sei denn, wir wissen, was wir tun. |
|
||||
|
http://www.unix.com/unix-for-dummies...om-forums.html
Zitat:
|
![]() |
| Lesezeichen |
| Tags |
| Linux-Befehle |
| Thread Tools | Suche diesen Thread |
| Anzeige-Modi | Rate this thread |
|
|