Projet système d'exploitation semestre 1 master 1 université d'Artois

Loquicom 4889df9b66 Ajout couleur etat R 6 anni fa
.gitignore 0fe5043d0d MaJ gitignore 6 anni fa
README.md d2f4c5e15b Ajout myps 6 anni fa
color.h 9cfe29b14d addcolor 6 anni fa
command.c b6232f33f4 Ajout myps en commande interne mysh 6 anni fa
command.h 17cd429b0d :bug: Debug compilation 6 anni fa
constante.h fc243f7e3e Ajout création et suppression ipc 6 anni fa
error.c be18178fd5 :bug: Debuf redirection all 6 anni fa
error.h be18178fd5 :bug: Debuf redirection all 6 anni fa
execute.c 585c70792b Meilleur affichage commande introuvable 6 anni fa
execute.h a3577e2715 :sparkles: Ajout commande status 6 anni fa
expreg.c dd922fd081 Debug postion fin 6 anni fa
expreg.h 5ba016ad22 Ajout documentation 6 anni fa
ipc.c 59219854df Ajout comportement par defaut set et setenv 6 anni fa
ipc.h 82d480f3d7 Ajout documentation 6 anni fa
makefile d2f4c5e15b Ajout myps 6 anni fa
myls.c 2754390eef Ajout verification 6 anni fa
myps.c 4889df9b66 Ajout couleur etat R 6 anni fa
mysh.c 17cd429b0d :bug: Debug compilation 6 anni fa
mysh.h 17cd429b0d :bug: Debug compilation 6 anni fa
parser.c 1ff4e023df Amélioration gestion memoire string nom fichier redir 6 anni fa
parser.h 65aa236221 Fin commande en fond 6 anni fa
sem.c a188331297 :bug:Debug semaphore 6 anni fa
sem.h a188331297 :bug:Debug semaphore 6 anni fa
shm.c fc243f7e3e Ajout création et suppression ipc 6 anni fa
shm.h a3f9d34da9 Ajout shm 6 anni fa
str.c 6f207d9d59 :bug: Correction presence char indésirable 6 anni fa
str.h 504e8da190 :bug: Debug split commande 6 anni fa
subdiv.c 66f50e3ee6 Correction faute de frappe 6 anni fa
subdiv.h b9285d5e01 :bug: Retrait pointeur subdiv 6 anni fa
variable.c 59219854df Ajout comportement par defaut set et setenv 6 anni fa
variable.h 59219854df Ajout comportement par defaut set et setenv 6 anni fa
wildcard.c c6b58bf38c :bug: Debug wildcard 6 anni fa
wildcard.h c6b58bf38c :bug: Debug wildcard 6 anni fa

README.md

Projet SEC (MySh) Master 1 Artois 2018-2019

Brandao Arthur (75%) & Maxence Bacquet (25%)

Utilisation

La compilation du programme s'effectue avec le commande make dans le dossier du projet. Il est possible de recréer les dépendances avec la commande make depend, et de supprimer les logs avec make rm-log. Pour lancer le programme il suffit d'exécuter le fichier ./mysh.

Les commandes externes (myls et myps) sont exécutable sans passer par le programme mysh, mais sont aussi utilisable comme des commandes internes de ce dernier. Il suffit juste de taper le nom de la commande dans un terminal mysh pour l'exécuter.

Fonctionalités

Présentes :

  • Exécution de commandes
  • Séquencement
  • Wildcards
  • Changement de répertoire
  • Sortie du shell (commande exit et Ctrl+C)
  • Code de retoure d'un processus (commande status)
  • Lister le contenue d'un répertoire (commande myls)
  • Etat des processus en cours (commande myps)
  • Les tubes
  • Les redirections d'entrées et de sorties vers des fichiers
  • Premier et arrière plans
  • Commande myjobs
  • Variables locales et d'environnements

Absentes :

  • Commandes myfg, mybg et gestion du Ctrl+Z

Bug / Fonctionalitées partiels

La commande myps liste les processus en cours d'exécution avec leur PID, le nom de la commande, l'etat et l'utilisateur qui l'a lancé. Elle ne récupère qu'une partie des infos présente dans ps -aux.

La commande myls n'indique pas la valeur de la 2éme colonne du ls -l (un nombre), et affiche X à la place.

Blagounette

Qu'est-ce qu'un canife ?

Un petit fien.