Lecture 6” Area

Total Page:16

File Type:pdf, Size:1020Kb

Lecture 6” Area ● Log into the course site ● Enter the “Lecture 6” area ● At 14:00, choose “Daily Quiz 5” ● Answer the multiple choice quiz (you have 10 minutes to finish) Finding files and directories, deletion, standard streams, piping J. M. P. Alves Laboratory of Genomics & Bioinformatics in Parasitology Department of Parasitology, ICB, USP Removing files ● Files can be removed with the rm (for remove) command ● By default, rm only removes regular files, but not directories ● To remove a file called file_name, simply run: rm file_name ● Notice that removing counts as “writing”, so you need the adequate permission ● What happens if the file belongs to you but you do not have write permission? Let’s try! J.M.P. Alves 3 / 60 BMP0260 / ICB5765 / IBI5765 Let’s do it! ● First, try to delete file smart_file from your home directory rm smart_file ● If everything went well, the file should have disappeared. Check! ● Now, try to remove the file called ~/dummy_fileX ● Notice that, although the file is yours, you have to answer a question before deleting it J.M.P. Alves 4 / 60 BMP0260 / ICB5765 / IBI5765 Quiz time! Go to the course page and choose Quiz 13 J.M.P. Alves 5 / 60 BMP0260 / ICB5765 / IBI5765 ● As you saw, removing files and/or directories does not depend on the permissions to the items being removed, but on the permissions you have to their parent! (the directory where they are located) ● List again the contents of the test_dir directory that is in your home area ● Let’s look at the ownership and permissions for the another_dir directory: drwxr-xr-x 2 dummy dummy 4096 Apr 4 16:15 another_dir J.M.P. Alves 6 / 60 BMP0260 / ICB5765 / IBI5765 Let’s try that again... ● Can we remove directory another_dir or not? ● As seen before, no; we do not have write permission to the parent directory (test_dir) of another_dir ● But what happens inside of directory another_dir? ● Enter the another_dir directory ● Create a regular file there, called test_1 ● Did you succeed? Always check! J.M.P. Alves 7 / 60 BMP0260 / ICB5765 / IBI5765 ● Did you notice there is another file already there? -rw-r--r-- 1 root root 0 Apr 4 17:07 test_0 ● It belongs to root, not to you. Try to delete file test_0 ● Answer y to the question. What happened? ● This seems like a violation, but it is not! You did not have write permission to file test_0, but you did have it to its parent directory... ● The directory is a special file (one that users cannot change directly) containing a table of the names and inodes for the files and subdirectories contained within the directory J.M.P. Alves 8 / 60 BMP0260 / ICB5765 / IBI5765 ● A directory is just a table with two columns: file name and inode identifier (not shown here, but the first two entries of that table are . and ..) ● When you delete a file or directory, all you are doing is removing its entry from that table – the data will still be on storage for a while! ● Incidentally, when you create a hard link, you are just adding another entry to one of those tables, pointing to the same inode ● When the system sees that there are no more hard links to an inode, it deletes the inode as well, and your data will eventually get overwritten J.M.P. Alves 9 / 60 BMP0260 / ICB5765 / IBI5765 A directory as the system sees it This is why a dot The directory is a represents the file, so of course it directory itself has its own inode Each file and subdirectory inside the directory is represented by a row in the table J.M.P. Alves 10 / 60 BMP0260 / ICB5765 / IBI5765 So, if you have write permission to a directory, that means that you have the power to change that table, adding or removing rows (i.e., creating or deleting files, respectively), regardless of your permissions to those items located inside the directory! J.M.P. Alves 11 / 60 BMP0260 / ICB5765 / IBI5765 Deleting directories ● Files can be removed with the rm (for remove) command ● By default, rm only removes regular files, but not directories ● Like for cp, to remove a directory you must give rm the -r option: rm -r dir_name ● Notice that this will recursively delete everything inside a directory (i.e., all files, subdirectories, files within subdirs, subdirs inside subdirs etc.)! ● If there are subdirectories to which you do not have write permission, will removing them fail or not? J.M.P. Alves 12 / 60 BMP0260 / ICB5765 / IBI5765 Now you do it! Go to the course site and enter Practical Exercise 14 Follow the instructions to answer the questions in the exercise Remember: in a PE, you should do things in practice before answering the question! J.M.P. Alves 13 / 60 BMP0260 / ICB5765 / IBI5765 Deleting directories ● As you saw in PE14, you cannot delete a directory if you are unable to delete at least one item inside that directory ● By default, rm silently deletes whatever you ask it to ● That, of course, makes it a very dangerous command: there is NO undelete command, NO “trash can” or anything like that for the Linux command line ● Therefore, always be sure of what you are doing before running rm! ● Remember the ls or echo trick: replace rm with one of those commands first to make sure only the intended files will get deleted, and nothing more (or less)! J.M.P. Alves 14 / 60 BMP0260 / ICB5765 / IBI5765 The CLI (usually) assumes you know what you are doing and does not try to stop you from hurting yourself! J.M.P. Alves 15 / 60 BMP0260 / ICB5765 / IBI5765 Deleting directories ● Another way to delete directories is the rmdir (remove directory) command ● rmdir can only delete directories that are empty (of regular files) ● To delete multiple directories that are nested, one can use the -p option (also known as --parents) ● Examples: rmdir dir1 rmdir -p dir1/subdirX ● The second command will only work if there are no regular files inside either subdirX or dir1 (if there are, then rm -r dir1 should be the command used) J.M.P. Alves 16 / 60 BMP0260 / ICB5765 / IBI5765 Standard streams ● Standard streams (for data flow) are automatically connected input and output communication channels between a computer program and its environment, available when the program begins execution ● They are considered a special kind of virtual text files ● One of the most important concepts in the use of the command line! ● There are three such streams: ● Standard input (stdin) ● Standard output (stdout) ● Standard error (stderr) J.M.P. Alves 17 / 60 BMP0260 / ICB5765 / IBI5765 Standard streams ● In most operating systems before UNIX, programs had to be explicitly connected (by the programmer) to the appropriate input and output devices ● One of the advances introduced by UNIX were abstract devices, which eliminated the need for the program to know where data was coming from (or going into) ● UNIX also implemented automatic connection of each running program to the standard data streams (which tie the program to actual physical devices) ● Standard input (stdin): where data comes from to enter the program ● Standard output (stdout): where data goes when it gets out of the program ● Standard error (stderr): where program errors (or warnings or diagnostic messages) go to when issued J.M.P. Alves 18 / 60 BMP0260 / ICB5765 / IBI5765 Standard streams ● Some programs do not require standard input, e.g., ls, pwd ● Some others do not require standard output, e.g., mkdir, cd ● Standard input is represented by number 0 ● Standard output is represented by number 1 ● Standard error is represented by number 2 J.M.P. Alves 19 / 60 BMP0260 / ICB5765 / IBI5765 Standard streams ● By default: ● Standard input (stdin): keyboard ● Standard output (stdout): screen Text terminal ● Standard error (stderr): screen #0 stdin Keyboard Process #1 stdout #2 stderr Display J.M.P. Alves 20 / 60 BMP0260 / ICB5765 / IBI5765 Standard streams ● If you were in class previously, you must have a program called average whose file has been placed in your $HOME/bin directory ● If you don't have that file, copy it from ~dummy/bin/ to your home directory ● The average program accepts data from the standard input and sends its output to standard output ● Start the program (remember: if it's not in a directory from your $PATH, you must give the relative or absolute path to be able to run it! Also make sure your copy of the program has execute permissions for your user) average (or ./average or bin/average etc.) ● Notice that the program started, and it is now waiting… for data! J.M.P. Alves 21 / 60 BMP0260 / ICB5765 / IBI5765 ● Data is coming from the standard input, which is the keyboard, by default ● So, type a number, and then ENTER ● Keep doing that until you are done ● To signal the end of “file” (after all, STDIN is a “virtual text file”), press Ctrl+d by itself, at the start of a new line ● Since the average program waits for the whole input before performing any calculation, no output appears until the end of input ● Other programs could behave differently; for example: head ● This program return the top 10 (by default) lines of a file. Try it with STDIN! Enter lines until the program exits J.M.P. Alves 22 / 60 BMP0260 / ICB5765 / IBI5765 Standard streams ● Just by existing, standard streams are already very useful ● But the capability of redirection makes them even more versatile ● That way, data can come from (or go to) different places than just the keyboard (or the screen) ● Redirection can be done between a program and input and output files or between different programs J.M.P.
Recommended publications
  • Chapter 10 Streams Streams Text Files and Binary Files
    Streams Chapter 10 • A stream is an object that enables the flow of File I/O data between a ppgrogram and some I/O device or file – If the data flows into a program, then the stream is called an input stream – If the dtdata flows out of a program, then the stream is called an output stream Copyright © 2012 Pearson Addison‐Wesley. All rights reserved. 10‐2 Streams Text Files and Binary Files • Input streams can flow from the kbkeyboar d or from a • Files that are designed to be read by human beings, file and that can be read or written with an editor are – StSystem. in is an itinput stream tha t connects to the called text files keyboard – Scanner keyy(y);board = new Scanner(System.in); Text files can also be called ASCII files because the data they contain uses an ASCII encoding scheme • Output streams can flow to a screen or to a file – An advantage of text files is that the are usually the same – System.out is an output stream that connects to the screen on all computers, so tha t they can move from one System.out.println("Output stream"); computer to another Copyright © 2012 Pearson Addison‐Wesley. All rights reserved. 10‐3 Copyright © 2012 Pearson Addison‐Wesley. All rights reserved. 10‐4 Text Files and Binary Files Writing to a Text File • Files tha t are didesigne d to be read by programs and • The class PrintWriter is a stream class that consist of a sequence of binary digits are called binary files that can be used to write to a text file – Binary files are designed to be read on the same type of – An object of the class PrintWriter has the computer and with the same programming language as the computer that created the file methods print and println – An advantage of binary files is that they are more efficient – These are similar to the System.out methods to process than text files of the same names, but are used for text file – Unlike most binary files, Java binary files have the advantage of being platform independent also output, not screen output Copyright © 2012 Pearson Addison‐Wesley.
    [Show full text]
  • C++ Input/Output: Streams 4
    C++ Input/Output: Streams 4. Input/Output 1 The basic data type for I/O in C++ is the stream. C++ incorporates a complex hierarchy of stream types. The most basic stream types are the standard input/output streams: istream cin built-in input stream variable; by default hooked to keyboard ostream cout built-in output stream variable; by default hooked to console header file: <iostream> C++ also supports all the input/output mechanisms that the C language included. However, C++ streams provide all the input/output capabilities of C, with substantial improvements. We will exclusively use streams for input and output of data. Computer Science Dept Va Tech August, 2001 Intro Programming in C++ ©1995-2001 Barnette ND & McQuain WD C++ Streams are Objects 4. Input/Output 2 The input and output streams, cin and cout are actually C++ objects. Briefly: class: a C++ construct that allows a collection of variables, constants, and functions to be grouped together logically under a single name object: a variable of a type that is a class (also often called an instance of the class) For example, istream is actually a type name for a class. cin is the name of a variable of type istream. So, we would say that cin is an instance or an object of the class istream. An instance of a class will usually have a number of associated functions (called member functions) that you can use to perform operations on that object or to obtain information about it. The following slides will present a few of the basic stream member functions, and show how to go about using member functions.
    [Show full text]
  • HP C Run-Time Library Reference Manual for Openvms Systems
    HP C Run-Time Library Reference Manual for OpenVMS Systems Order Number: BA554-90014 June 2010 This manual describes the functions and macros in the HP C Run-Time Library for OpenVMS systems. Revision/Update Information: This manual supersedes the HP C Run-Time Library Reference Manual for OpenVMS Systems, Version 8.3 Software Version: OpenVMS Version 8.4 for Integrity servers OpenVMS Alpha Version 8.4 Hewlett-Packard Company Palo Alto, California © Copyright 2010 Hewlett-Packard Development Company, L.P. Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor’s standard commercial license. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein. UNIX is a registered trademark of The Open Group. X/Open is a registered trademark of X/Open Company Ltd. in the UK and other countries. Intel and Itanium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Microsoft and Windows are US registered trademarks of Microsoft Corporation. Printed in the US ZK5763 The HP OpenVMS documentation set is available on CD-ROM. This document was prepared using DECdocument, Version 3.3-1b.
    [Show full text]
  • L13 Streams and IO
    Binghamton CS-220 University Spring 20162015 Includes & Streams 1 Binghamton CS-220 University Spring 20162015 C Pre-Processor C Program Pre-Processor Pre-processed C Program Header Files Header Files 2 Binghamton CS-220 University Spring 20162015 #include • Two flavors: • #include <abc.h> • Replace this line with the contents of file abc.h found in the system libraries • #include “xyz.h” • Replace this line with the contents of file xyz.h found in the current directory • Concept: Write code once, use it in many different programs • By convention, included files are called “header files” and have a “.h” file type 3 Binghamton CS-220 University Spring 20162015 Header (.h) files • May include any valid C code • may include further #includes • Typically small – only what you need to invoke “outside” functions • Function prototype declarations • Sometimes, data and/or type declarations • Typically, a header file describes a group of functions • “related” functions – e.g. functions which deal with Input and Output • Typically associated with a “.c” file with the same name • .c file contains function definitions – more later 4 Binghamton CS-220 University Spring 20162015 C Standard Library • Part of C itself • Definitions/Descriptions included in C standard • Available with every C compiler • Primarily, a set of C functions we all can use • Keep C language simple • Wrap complicated stuff in function definitions • We don’t need to know about the implementation of the complicated stuff • Full description of standard library available as reference • Programming in C, Appendix B 5 Binghamton CS-220 University Spring 20162015 Standard Input and Output • Need: #include <stdio.h> • Large list of input and output functions to: • Read and write from a “stream” • Open a file and make a stream • Close a file and remove the stream • Create, Rename, delete, or move files • Streams….
    [Show full text]
  • CS2043 - Unix Tools & Scripting Cornell University, Spring 20141
    CS2043 - Unix Tools & Scripting Cornell University, Spring 20141 Instructor: Bruno Abrahao January 31, 2014 1 Slides evolved from previous versions by Hussam Abu-Libdeh and David Slater Instructor: Bruno Abrahao CS2043 - Unix Tools & Scripting Vim: Tip of the day! Line numbers Displays line number in Vim: :set nu Hides line number in Vim: :set nonu Goes to line number: :line number Instructor: Bruno Abrahao CS2043 - Unix Tools & Scripting Counting wc How many lines of code are in my new awesome program? How many words are in this document? Good for bragging rights Word, Character, Line, and Byte count with wc wc -l : count the number of lines wc -w : count the number of words wc -m : count the number of characters wc -c : count the number of bytes Instructor: Bruno Abrahao CS2043 - Unix Tools & Scripting Sorting sort Sorts the lines of a text file alphabetically. sort -ru file sorts the file in reverse order and deletes duplicate lines. sort -n -k 2 -t : file sorts the file numerically by using the second column, separated by a colon Example Consider a file (numbers.txt) with the numbers 1, 5, 8, 11, 62 each on a separate line, then: $ sort numbers.txt $ sort numbers.txt -n 1 1 11 5 5 8 62 11 8 62 Instructor: Bruno Abrahao CS2043 - Unix Tools & Scripting uniq uniq uniq file - Discards all but one of successive identical lines uniq -c file - Prints the number of successive identical lines next to each line Instructor: Bruno Abrahao CS2043 - Unix Tools & Scripting Character manipulation! The Translate Command tr [options] <char_list1> [char_list2] Translate or delete characters char lists are strings of characters By default, searches for characters in char list1 and replaces them with the ones that occupy the same position in char list2 Example: tr 'AEIOU' 'aeiou' - changes all capital vowels to lower case vowels Instructor: Bruno Abrahao CS2043 - Unix Tools & Scripting Pipes and redirection tr only receives input from standard input (stdin) i.e.
    [Show full text]
  • Shells and Shell Programming
    Shells & Shell Programming (Part A) Software Tools EECS2031 Winter 2018 Manos Papagelis Thanks to Karen Reid and Alan J Rosenthal for material in these slides SHELLS 2 What is a Shell • A shell is a command line interpreter that is the interface between the user and the OS. • The shell: – analyzes each command – determines what actions are to be performed – performs the actions • Example: wc –l file1 > file2 3 Which shell? • sh – Bourne shell – Most common, other shells are a superset – Good for programming • csh or tcsh – command-line default on EECS labs – C-like syntax – Best for interactive use. • bash – default on Linux (Bourne again shell) – Based on sh, with some csh features. • korn – written by David Korn – Based on sh – Some claim best for programming. – Commercial product. 4 bash versus sh • On EECS labs, when you run sh, you are actually running bash. • bash is a superset of sh. • For EECS2031, you will be learning only the features of the language that belong to sh. 5 Changing your shell • I recommend changing your working shell on EECS to bash – It will make it easier to test your shell programs. – You will only need to learn one set of syntax. • What to do: – echo $SHELL (to check your current shell) – chsh <userid> bash – Logout and log back in. – .profile is executed every time you log in, so put your environment variables there 6 Standard Streams • Preconnected input and output channels between a computer program and its environment. There are 3 I/O connections: – standard input (stdin) – standard output (stdout) – standard
    [Show full text]
  • Alex Scriven Data Scientist Introduction to the Course This Course Will Cover
    Introduction and refresher I N T R O D U C T I O N TO B A S H S C R I P T I N G Alex Scriven Data Scientist Introduction to the course This course will cover: Moving from command-line to a Bash script Variables and data types in Bash scripting Control statements Functions and script automation INTRODUCTION TO BASH SCRIPTING Why Bash scripting? (Bash) Firstly, let's consider why Bash? Bash stands for 'Bourne Again Shell' (a pun) Developed in the 80's but a very popular shell today. Default in many Unix systems, Macs Unix is the internet! (Running ML Models, Data Pipelines) AWS, Google, Microso all have CLI's to their products INTRODUCTION TO BASH SCRIPTING Why Bash scripting? (scripting!) So why Bash scripting? Ease of execution of shell commands (no need to copy-paste every time!) Powerful programming constructs INTRODUCTION TO BASH SCRIPTING Expected knowledge You are expected to have some basic knowledge for this course. Understand what the command-line (terminal, shell) is Have used basic commands such as cat , grep , sed etc. If you are rusty, don't worry - we will revise this now! INTRODUCTION TO BASH SCRIPTING Shell commands refresher Some important shell commands: (e)grep lters input based on regex paern matching cat concatenates le contents line-by-line tail \ head give only the last -n (a ag) lines wc does a word or line count (with ags -w -l ) sed does paern-matched string replacement INTRODUCTION TO BASH SCRIPTING A reminder of REGEX 'Regex' or regular expressions are a vital skill for Bash scripting.
    [Show full text]
  • Deepfreeze: a Management Interface for ISEAGE Nathan Lyle Karstens Iowa State University
    Iowa State University Capstones, Theses and Retrospective Theses and Dissertations Dissertations 2007 DeepFreeze: a management interface for ISEAGE Nathan Lyle Karstens Iowa State University Follow this and additional works at: https://lib.dr.iastate.edu/rtd Part of the Computer Sciences Commons Recommended Citation Karstens, Nathan Lyle, "DeepFreeze: a management interface for ISEAGE" (2007). Retrospective Theses and Dissertations. 14559. https://lib.dr.iastate.edu/rtd/14559 This Thesis is brought to you for free and open access by the Iowa State University Capstones, Theses and Dissertations at Iowa State University Digital Repository. It has been accepted for inclusion in Retrospective Theses and Dissertations by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. DeepFreeze: a management interface for ISEAGE by Nathan Lyle Karstens A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Co-majors: Information Assurance; Computer Engineering Program of Study Committee: Doug W Jacobson, Major Professor Thomas Earl Daniels Johnny S Wong Iowa State University Ames, Iowa 2007 Copyright © Nathan Lyle Karstens, 2007. All rights reserved. UMI Number: 1443093 UMI Microform 1443093 Copyright 2007 by ProQuest Information and Learning Company. All rights reserved. This microform edition is protected against unauthorized copying under Title 17, United States Code. ProQuest Information and Learning Company
    [Show full text]
  • Hands-On UNIX System Administration Decal Lecture 1 — 24 January 2011 Found the Right Room?
    Welcome and Intro Hands-On UNIX System Administration DeCal Lecture 1 — 24 January 2011 Found the right room? • You’re in CS 98/198-8, the Hands-On UNIX System Administration DeCal. • No experience with *nix required, but be ready to learn fast! (Ask questions!) • We’re diving in right after this mini intro. Who are we? • Jordan Salter — 3rd year L&S CS2 major. Itinerant sysadmin and senior root staff member at the Open Computing Facility. • Eugene Baumstein — 2nd year EECS student. Developer at Yelp, Inc. What’s UNIX? http://en.wikipedia.org/wiki/File:Unix_history.svg source: source: What’s sysadminning? source: http://xkcd.com/705 Course logistics • This is a lecture/lab based course: Each class has a lab assignment, due by the start of next week’s meeting. • There’s a !nal project! You’ll do it in groups of four — more about this later. • To earn a “P”: attend every class, attempt each lab, do the #nal project. (2 drops.) Course logistics • If you’re on the waiting list, stick around in case anyone drops the class. If you hope to add … try again next semester. • There aren’t enough computers — please bring a laptop to work on, if you can! In a nutshell mv cd ls cat pwd find locate sed bash awk vi less ssh cp The shell • The shell is your gateway to the system. It’s an ordinary program — sh, bash, csh, ksh, tcsh, zsh, fish… • You can access and modify the #lesystem, run programs, and administer the system. • It makes your life easier with automation: shell scripting is a wonderful thing! Basic commands • ls: list directory contents • pwd: print working directory • cd: change working directory • mkdir: make directory • rmdir: remove directory Basic commands • mv: move #les/directories • cp: copy a #le • rm: remove a #le • less (more): scroll (“page”) through text • grep: search text for a speci#ed pattern RTFM • Programs have command line options.
    [Show full text]
  • Software Systems Components 1
    SSC1: I/O Volker Sorge Overview I/O Streams Basic Streams Data Streams Software Systems Components 1 Standard Streams I/O Redirection Input/Output Cmd Line Input Formatted I/O Formatted Output Formatted Input Volker Sorge Buffered Streams Memory Mapping http://www.cs.bham.ac.uk/~vxs/teaching/ssc1 File System Manipulations Polling Topic Overview SSC1: I/O Volker Sorge Overview I/O Streams Basic Streams Data Streams 1. Simple Input/Output: streams for various types, Standard Streams I/O Redirection redirection. java.io.* Cmd Line Input 2. Formatted Input/Output: dealing with mixed input, Formatted I/O Formatted Output formatting output. java.util.Scanner, Formatted Input java.util.Formatter Buffered Streams 3. Advanced Techniques: buffering, file system Memory Mapping File System manipulations, memory mapping, polling, Manipulations ... java.nio.* Polling Simple Input/Output Techniques SSC1: I/O Volker Sorge Overview I/O Streams Basic Streams Data Streams Standard Streams I/O Redirection I Streams: the basis of all data input/output Cmd Line Input Redirecting Standard Input/Output: turning Formatted I/O I Formatted Output System.in, System.out into streams Formatted Input Buffered Streams Console: some specialities dealing with direct input and I Memory Mapping passwords File System Manipulations Polling What is a stream SSC1: I/O Volker Sorge Overview I/O Streams Basic Streams I Streams are an abstraction over the actual low-level Data Streams operations of data handling. Standard Streams I/O Redirection I Streams enable a programming language to implement Cmd Line Input a uniform interface to the communication infrastructure Formatted I/O Formatted Output of diverse devices (files, sockets, hardware devices, etc.) Formatted Input Buffered Streams I A stream can be viewed as a sequence of data elements Memory Mapping I A stream represent either a data source (input) or data File System sink (output) Manipulations Polling I There are different type of streams depending on what data s communicated and how.
    [Show full text]
  • Command Line Initiation
    Linux command line Initiation 2020 Christof De Bo Agenda UNIX fundamentals UNIX file system Command line + operations on files Standard output, input and building pipelines Text mining Scripting Linux training setup VNC Viewer for Google Chrome IP: 35.241.215.2:590X (1-5) IP: 35.187.88.121:590X (1-5) IP: 35.241.215.2:590X (1-5) IP: 35.187.88.121:590X (1-5) Password: TrainingVIBX Training material Slides and exercises https://material.bits.vib.be/topics/linux/ What can Linux/this course do for you? Why use Linux? What is the difference with other operating systems? Only for bioinformaticians? Is it really for free? …? UNIX fundamentals UNIX family UNIX is a family of computer operating systems UNIX key features Multiuser Possible to connect to the same server (remote) and execute different programs at the same time Multitasking Multiple processes can run on the same machine at the same time Networking The network is essential for remote access Various user interfaces Both text-only and graphical interfaces are available UNIX OS What? Collection of software that manages computer hardware resources and provides common services for programs Kernel An OS kernel manages computer resources (e.g. CPU, RAM, internal/external devices) and allows programs to use these resources Shell = Command Line Interpreter (CLI) is a text-only interface between the user and the kernel. Its function is to execute commands from the terminal window Programs External programs can be installed. The OS comes with many built-in utilities GNU/Linux Linux kernel GNU Linux kernel Takes care of managing computer recources GNU Provides the means of communication with the linux kernel through command Linux distributions Linux is a core operating system and can be used to build your own flavor if Linux.
    [Show full text]
  • Linux Bootcamp Lectures
    Linux Bootcamp An introduction to the Linux environment v2018-11 Programme • Linux Basics • What is Linux • Using the BASH shell to run and automate programs • Installing and managing software • Understanding the file system • Installing operating system packages • Installing external software • Installing packages for other languages (R, Python, Perl) • Other Useful Stuff • Using containers • Remote connections through SSH • Installing operating systems on hardware or virtual machines • Using Linux in a cloud environment Learning Outcomes • By the end of the course you should be able to: 1. Install a Linux operating system on your machine, either directly or through a virtual machine 2. Be able to run and customise installed applications using the BASH shell 3. Be able to perform simple automation, linking programs together and iterating the processing of large numbers of files. 4. Be able to install and configure new software packages 5. Understand how to use Linux in a variety of environments from personal computers to cloud infrastructure. Linux Basics Understanding Linux and the BASH shell v2018-11 What (exactly) is Linux? Unix, Posix and Linux • Unix was a set of concepts which defined a number of early operating systems developed in the 1970s. • These concepts allowed for interoperability of software written based on them. • The original Unix concepts developed into POSIX, a more formal standard defining • The way that devices, configuration, memory and libraries are handled • A standardised development environment based on C and
    [Show full text]