This course covers a variety of topics, all related to the use and management of a Linux operating system. In particular, the course is divided in three parts dedicated respectively to the command-line, to the Python programming language, and to maintaining, compiling, and installing applications.
Teaching and Learning Methods : Lectures and Homework Assignments
* Part I: Unix history, GNU Linux environment, bash, grep, sed, awk, Vim, ...
* Part II: gcc, makefiles, autotools, diff & merge, svn, git*
Students will learn how to quickly solve everyday problems in a Linux environment, using a combination of existing command-line tools and prototype programs written in a scripting language. Students will also learn a number of basic foundations of software development in the Linux environment, including SVN and GIT, writing makefiles, and using the autotool suite to compile and install applications from source code.
Nb hours: 21.00
Grading Policy: Homework (40%), Final Exam (60%)