42sh-subject-v1 - 42sh Version 1.2 November 1st 2011...

Info icon This preview shows pages 1–8. Sign up to view the full content.

42sh Version 1.2 November, 1st 2011 Assistants C/Unix 2012 < [email protected] > 1
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

I Copyright This document is for internal use only at EPITA < >. Copyright c 2011/2012 Assistants < [email protected] >. Copying is allowed only under these conditions: . You must have downloaded your copy from the Assistant Intranet < >. . You must make sure that you have the latest version of this document. . It is your responsibility to make sure that this document stays out of reach of students or individuals outside your year (your "promotion").
Image of page 2
Contents II Contents 1 Obligations IV 2 Submission V 3 Instructions VI 4 Prologue 1 5 Preamble 2 5.1 Why the 42sh? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 5.2 Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 5.3 Technical constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 5.4 Oral presentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 5.5 Shell Command Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5.6 Oral examinations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5.7 Hand in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5.8 Mark scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.9 Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 42sh - Version 0.1 7 6.1 Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.2 Slides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.3 Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 7 42sh - Version 0.5 9 7.1 Options parser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 7.2 Prompt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 7.3 Shell parser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 7.4 AST printer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 7.5 Tests suite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.5.1 Test program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.5.2 Tests format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.5.3 Options format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.5.4 Timeout management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.6 Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.6.1 Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.6.2 Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.6.3 Simple commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.6.4 If commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.6.5 While, Until commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.6.6 For commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.6.7 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.6.8 Case commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.7 Autotools/CMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.8 Resource files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.9 History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 8 42sh - Version 0.8 17 8.1 Tilde expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 8.2 Builtin commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 8.2.1 Builtin exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Image of page 3

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

Contents III 8.2.2 Builtin cd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 8.2.3 Builtin shopt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 8.2.4 Builtin export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 8.2.5 Builtin alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 8.2.6 Builtin unalias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 8.2.7 Builtin echo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 8.2.8 Builtin continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.2.9 Builtin break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.2.10 Builtin source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.2.11 Builtin history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.3 Advanced prompt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.4 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 8.5 Quoting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 8.6 Path expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 8.7 Arithmetic expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 8.8 Readline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 8.9 Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 8.10 Path expansion, challenge mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 9 42sh - Version 0.9 24 9.1 Completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 9.2 Command Substitution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 9.3 Multi-arch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 9.4 Job Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 10 42sh - Version 1.0 26 11 Bibliography 27 12 Epilogue 28
Image of page 4
1 Obligations IV 1 Obligations . Read the entire subject . Follow the rules . Respect the submission
Image of page 5

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

2 Submission V 2 Submission Project managers: Antoine Cardon < [email protected] > Xavier Deguillard < [email protected] > Jean-Baptiste Galet < [email protected] > Julien Grall < [email protected] > Rémi Labeyrie < [email protected] > Project markup: [42SH] Developers by team: 5 Submission method: Git Repository: ssh://[email protected]/2014/42sh/login_x Submission: 11/27/2011 at 11:42am Project duration: 4 weeks Newsgroup: epita.cours.c-unix.42sh Group subscriptions: from 10/24/2011 to 10/30/2011 Subject release: 10/31/2011 First oral presentation: 10/31/2011 Second oral presentation: 11/02/2011 Shell Common Language MCQ: from 02/11/2011 to 11/04/2011 Version 0.1: 11/04/2011 11:42am First oral examination: 11/05/2011 Version 0.5: 11/15/2011 11:42am Second oral examination: 11/16/2011 Version 0.8: 11/24/2011 11:42pm Version 0.9: 11/26/2011 11:42pm Version 1.0: 11/27/2011 11:42pm Architecture/OS: x86_64 Fedora Language(s): C Compiler: /usr/bin/gcc Compilation flags: -Wall -Wextra -Werror -std=c99 -pedantic
Image of page 6
3 Instructions VI 3 Instructions The following instructions are very important: You must respect them, otherwise you will suffer penalties, up to and including the multiplication of the final grade by zero.
Image of page 7

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

Image of page 8
This is the end of the preview. Sign up to access the rest of the document.
  • Fall '15
  • Project Management, Verification and validation, Validation, version, WWE The Great American Bash

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern