Parcourir la source

commit files

master
杨浩然 il y a 3 ans
Parent
révision
db0d8aefd2
17 fichiers modifiés avec 349 ajouts et 4 suppressions
  1. +77
    -1
      README.md
  2. BIN
      lab_report/1 Shell.doc
  3. +0
    -0
      lab_report/project-1.pdf
  4. BIN
      lab_report/structure.xmind
  5. BIN
      lab_report/test_case_img/cd.png
  6. BIN
      lab_report/test_case_img/exit.png
  7. BIN
      lab_report/test_case_img/history.png
  8. BIN
      lab_report/test_case_img/ls.png
  9. BIN
      lab_report/test_case_img/mytop.png
  10. BIN
      lab_report/test_case_img/pipe.png
  11. BIN
      lab_report/test_case_img/redirect_in.png
  12. BIN
      lab_report/test_case_img/redirect_out.png
  13. BIN
      lab_report/test_case_img/vi.png
  14. BIN
      lab_report/test_case_img/vi_bg.png
  15. +269
    -0
      lab_report/yeeshell.svg
  16. +3
    -3
      yeeshell.c

+ 77
- 1
README.md Voir le fichier

@ -1,3 +1,79 @@
# OS2021_Project1.Shell
OS2021_Project1.Shell
###
#### yeeshell.c
main function and function definition
#### yeeshell.h
function declaration and macro definition
###
### 1. Deployment
Pull from my shuishan git.
```shell
git clone root@gitea.shuishan.net.cn:10195501441/OS2021_Project1.Shell.git
```
In the **MINIX3** environment, use clang to compile the program.
```shell
clang yeeshell.c -o yeeshell
```
Run yeeshell.
```shell
./yeeshell
```
### 2. Test Case
​ (1) `cd /your/path`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\cd.png" alt="cd" style="zoom: 76%;" />
​ (2) `ls -a -l`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\ls.png" alt="ls" style="zoom:76%;" />
​ (3) `ls -a -l > result.txt`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\redirect_out.png" alt="redirect_out" style="zoom:76%;" />
​ (4) `vi result.txt`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\vi.png" alt="vi" style="zoom:76%;" />
​ (5) `grep a < result.txt`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\redirect_in.png" alt="redirect_in" style="zoom:76%;" />
​ (6) `ls -a -l | grep a `
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\pipe.png" alt="pipe" style="zoom:76%;" />
​ (7) `vi result.txt`
​ This command can not be executed in the **MINIX3** environment. It prints the following error information.
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\vi_bg.png" alt="vi_bg" style="zoom:76%;" />
​ (8) `mytop `
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\mytop.png" alt="mytop" style="zoom:76%;" />
​ (9) `history n`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\history.png" alt="history" style="zoom:76%;" />
​ (10) `exit`
<img src="E:\undergraduate\sophomore\SEM2\OS\experiments\1 Shell\OS2021_Project1.Shell\lab_report\test_case_img\exit.png" alt="exit" style="zoom:76%;" />

BIN
lab_report/1 Shell.doc Voir le fichier


project-1.pdf → lab_report/project-1.pdf Voir le fichier


BIN
lab_report/structure.xmind Voir le fichier


BIN
lab_report/test_case_img/cd.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 68  |  Taille: 7.5 KiB

BIN
lab_report/test_case_img/exit.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 67  |  Taille: 3.9 KiB

BIN
lab_report/test_case_img/history.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 338  |  Taille: 12 KiB

BIN
lab_report/test_case_img/ls.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 273  |  Taille: 29 KiB

BIN
lab_report/test_case_img/mytop.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 101  |  Taille: 13 KiB

BIN
lab_report/test_case_img/pipe.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 305  |  Taille: 34 KiB

BIN
lab_report/test_case_img/redirect_in.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 305  |  Taille: 34 KiB

BIN
lab_report/test_case_img/redirect_out.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 340  |  Taille: 37 KiB

BIN
lab_report/test_case_img/vi.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 779  |  Taille: 39 KiB

BIN
lab_report/test_case_img/vi_bg.png Voir le fichier

Avant Après
Largeur: 1230  |  Hauteur: 65  |  Taille: 6.3 KiB

+ 269
- 0
lab_report/yeeshell.svg
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


+ 3
- 3
yeeshell.c Voir le fichier

@ -251,10 +251,10 @@ int do_pipe(char **pipe_arg_1, char **pipe_arg_2)
}
}
if ((prog_2 = fork()) == 0) /* Child process 1 */
if ((prog_2 = fork()) == 0) /* Child process 2 */
{
dup2(fds[0], 0);
close(0);
dup2(fds[0]);
close(fds[0]);
close(fds[1]);

Chargement…
Annuler
Enregistrer