Sfoglia il codice sorgente

Redundant text and old parts removed

Michael Mächtel 8 anni fa
parent
commit
988302c59b
1 ha cambiato i file con 0 aggiunte e 47 eliminazioni
  1. 0
    47
      hw6/task2/README.md

+ 0
- 47
hw6/task2/README.md Vedi File

@@ -177,50 +177,3 @@ Bei dieser Aufgabe ist Ihre Dokumentation wichtig, um Ihren Programmablauf nachv
177 177
 
178 178
 [Testing]: https://doc.rust-lang.org/book/testing.html
179 179
 [Documentation Tests]: https://doc.rust-lang.org/book/testing.html#documentation-tests
180
-
181
-
182
-
183
-
184
-___
185
-
186
-## ALT
187
-
188
-Da Sie alle Zeicheneingaben, außer Whitespaces (Leerzeichen, TAB usw.) und `exit` als Kommandoaufruf interpretieren, wird sich Ihre Shell beim Aufruf Ihrer Programme genauso verhalten wie die normale Shell. Die zur Prozessverwaltung verwendeten Sonderzeichen wie &, | usw. werden in dieser Aufgabe nicht behandelt. Somit wird immer nur ein Programm inklusive aller angegebenen Parameter aufgerufen, auf dessen Ende die Shell wartet, um dann wieder den Prompt auszugeben und auf neue Eingaben zu warten.
189
-
190
-```text
191
-bsys-shell /Users/maechtel$ ps 1
192
-  PID   TT  STAT      TIME COMMAND
193
-    1   ??  Ss    28:42.16 /sbin/launchd
194
-bsys-shell /Users/maechtel$ cat blabla.txt
195
-cat: blabla.txt: No such file or directory
196
-bsys-shell /Users/maechtel$ cat testdatei.txt
197
-Hello you snoopy user ....
198
-bsys-shell /Users/maechtel$ file testdatei.txt
199
-testdatei.txt: ASCII text
200
-bsys-shell /Users/maechtel$ exit
201
-exit
202
-```
203
-
204
-### *Command* Datenstruktur
205
-
206
-
207
-```Rust
208
-#[derive(Debug)]
209
-pub enum Command {
210
-    /// Execute a command with arguments.
211
-    Exec { prog: CString, argv: Vec<CString> },
212
-    /// Empty command.
213
-    Empty,
214
-    /// Exit.
215
-    Exit,
216
-}
217
-```
218
-
219
-- 'Exec': Die Eingabe wird als Aufruf eines Programms, inkl. Parameter, ausgewertet und es wird versucht, das zugehörige Programm zu starten (mit *execvp()*). Wird das Programm nicht gefunden, so wird eine Fehlermeldung ausgegeben.
220
-- 'Empty': Keine Eingabe, z.B. hat der Benutzer nur Return, Leerzeichen oder andere Whitespaces getippt.
221
-- 'Exit': Dieses Kommando bedeutet, dass sich die Shell vor dem Start der nächsten Loop beendet.
222
-
223
-Mehr Kommandos kommen in der optionalen Aufgabe Task3 dazu.
224
-
225
-
226
-Die Funktion `parse_exec` enthält den generischen Typen I mit dem Trait Bound Iterator. Das bedeutet, die Funktion verlangt von dem generischen Typen I, dass er vom Typ Iterator mit Items auf `&str` ist. Somit können Sie in der Funktion über den Parameter `args` iterieren. Bei diesen Arten von Funktionen mit Iteratoren müssen typischerweise zusätzlich Lifetime Parameter (`a) mit angegeben werden. Auf dieses Thema kommen wir noch in den nächsten Wochen zu sprechen.

Loading…
Annulla
Salva