Learning Unix/Linux Based on slides from: Eric Bishop.

Slides:



Advertisements
Similar presentations
Learning Unix/Linux Bioinformatics Orientation 2008 Eric Bishop.
Advertisements

Introduction to UNIX CSE 2031 Fall May 2015.
Unix. Outline Commands Environment Variables Basic Commands CommandMeaning lslist files and directories ls -alist all files and directories mkdirmake.
NETW-240 Shells Last Update Copyright Kenneth M. Chipps Ph.D. 1.
ATS Programming Short Course I INTRODUCTORY CONCEPTS Tuesday, Jan. 27 th, 2009 Essential Unix Commands.
Introducing the Command Line CMSC 121 Introduction to UNIX Much of the material in these slides was taken from Dan Hood’s CMSC 121 Lecture Notes.
Lecture 01CS311 – Operating Systems 1 1 CS311 – Lecture 01 Outline Course introduction Setting up your system Logging onto the servers at OSU with ssh.
1 SEEM3460 Tutorial Unix Introduction. 2 Introduction What is Unix? An operation system (OS), similar to Windows, MacOS X Why learn Unix? Greatest Software.
Linux Commands LINUX COMMANDS.
CS 141 Labs are mandatory. Attendance will be taken in each lab. Make account on moodle. Projects will be submitted via moodle.
Using Macs and Unix Nancy Griffeth January 6, 2014 Funding for this workshop was provided by the program “Computational Modeling and Analysis of Complex.
Introduction to Linux Workshop February Introduction Rob Lane & The HPC Support Team Research Computing Services CUIT.
Unix Primer. Unix Shell The shell is a command programming language that provides an interface to the UNIX operating system. The shell is a “regular”
Chapter 9 Part II Linux Command Line Access to Linux Authenticated login using a Linux account is required to access a Linux system. The Linux prompt will.
Linux environment ● Graphical interface – X-window + window manager ● Text interface – terminal + shell.
Essential Unix at ACEnet Joey Bernard, Computational Research Consultant.
Basic unix commands that everyone should know (Even if you have a mac) Slightly more advanced:
Dedan Githae, BecA-ILRI Hub Introduction to Linux / UNIX OS MARI eBioKit Workshop; Nov , 2014.
CS 6560 Operating System Design Lecture 3:Tour of GNU/Linux.
PROGRAMMING PROJECT POLICIES AND UNIX INTRO Sal LaMarca CSCI 1302, Fall 2009.
System Administration Introduction to Unix Session 2 – Fri 02 Nov 2007 Reference:  chapter 1, The Unix Programming Environment, Kernighan & Pike, ISBN.
Session 2 Wharton Summer Tech Camp Basic Unix. Agenda Cover basic UNIX commands and useful functions.
INTRODUCTION TO LINUX Jacob Chan. GNU/Linux Consists of Linux kernel, GNU utilities, and open source and commercial applications Works like Unix –Multi-user.
Chapter Five Advanced File Processing Guide To UNIX Using Linux Fourth Edition Chapter 5 Unix (34 slides)1 CTEC 110.
1 System Administration Introduction to Scripting, Perl Session 3 – Sat 10 Nov 2007 References:  chapter 1, The Unix Programming Environment, Kernighan.
1 Operating Systems and Using Linux Topics What is an Operating System? Linux Overview Frequently Used Linux Commands Some content in this lecture added.
Unix/Linux cs3353. The Shell The shell is a program that acts as the interface between the user and the kernel. –The shell is fully programmable and will.
Lesson 2-Touring Essential Programs. Overview Development of UNIX and Linux. Commands to execute utilities. Communicating instructions to the shell. Navigating.
Unix/Linux for beginners:
40 Years and Still Rocking the Terminal!
Introduction to Programming Using C An Introduction to Operating Systems.
Agenda Basic Unix Commands (Chapters 2 & 3) Miscellaneous Commands: which, passwd, date, ps / kill Working with Files: file, touch, cat, more, less, grep,
Lesson 3-Touring Utilities and System Features. Overview Employing fundamental utilities. Linux terminal sessions. Managing input and output. Using special.
CSE 374 Programming Concepts & Tools Hal Perkins Fall 2015 Lecture 2a – A Unix Command Sampler (Courtesy of David Notkin, CSE 303)
Linux Commands C151 Multi-User Operating Systems.
Linux A practical introduction. 1)Background and Getting Started Linux is an operating system with multiple providers Red Hat/CentOS (our version) Ubuntu.
1 Introduction to Unix. 2 What is UNIX?  UNIX is an Operating System (OS).  An operating system is a control program that helps the user communicate.
A Brief Overview of Unix Brandon Bohrer. Topics What is Unix? – Quick introduction Documentation – Where to get it, how to use it Text Editors – Know.
1 CS3695 – Network Vulnerability Assessment & Risk Mitigation – Introduction to Unix & Linux.
Lecture 1: Introduction, Basic UNIX Advanced Programming Techniques.
Operating Systems and Using Linux Courtesy of John Y. Park 1.
File Management commands cat Cat command cat cal.txt cat command displays the contents of a file here cal.txt on screen (or standard out).
Linux Tutorial Lesson Two *Getting Help in Linux *Data movement and manipulation *Relative and Absolute path *Processes Note: see chapter 1,2,3 from Linux.
+ Introduction to Unix Joey Azofeifa Dowell Lab Short Read Class Day 2 (Slides inspired by David Knox)
Operating systems Lecture #3 Modern OS characteristics.
INTRODUCTION TO SHELL SCRIPTING By Byamukama Frank
UNIX  Portable (common to many computer architectures), multitasking, multi-user operating system  Introduced by Bell labs in mid-1960’s  Thus, much.
UNIX To do work for the class, you will be using the Unix operating system. Once connected to the system, you will be presented with a login screen. Once.
Tutorial of Unix Command & shell scriptS 5027
Linux Commands Help HANDS ON TRAINING Author: Muhammad Laique
Andy Wang Object Oriented Programming in C++ COP 3330
Some Linux Commands.
C151 Multi-User Operating Systems
Lecture #3 Modern OS characteristics
Tutorial of Unix Command & shell scriptS 5027
Basic UNIX OLC Training.
Introduction to UNIX.
Tutorial of Unix Command & shell scriptS 5027
Operating Systems and Using Linux
Lecture #3 Modern OS characteristics
Tutorial of Unix Command & shell scriptS 5027
Operating Systems and Using Linux
Andy Wang Object Oriented Programming in C++ COP 3330
UNIX/LINUX Commands Using BASH Copyright © 2017 – Curt Hill.
Tutorial Unix Command & Makefile CIS 5027
Module 6 Working with Files and Directories
Operating Systems and Using Linux
Linux Commands LINUX COMMANDS.
A shell is a user interface.
Presentation transcript:

Learning Unix/Linux Based on slides from: Eric Bishop

Introduction: What is Unix? An operating system Developed at AT&T Bell Labs in the 1960’s Command Line Interpreter GUIs (Window systems) are now available

Introduction: Unix vs. Linux Unix was the predecessor of Linux Linux is a variant of Unix  So is Mac OS X, so much of this tutorial applies to Macs as well Linux is open source

Introduction: Why Unix/Linux? Linux is free It’s fully customizable It’s stable (i.e. it almost never crashes) These characteristics make it an ideal OS for programmers and scientists

Connecting to a Unix/Linux system Open up a terminal:

Connecting to a Unix/Linux system Open up a terminal: The “prompt” The current directory (“path”) The host

What exactly is a “shell”? After logging in, Linux/Unix starts another program called the shell The shell interprets commands the user types and manages their execution The shell communicates with the internal part of the operating system called the kernel The most popular shells are: tcsh, csh, korn, and bash The differences are most times subtle For this tutorial, we are using bash Shell commands are CASE SENSITIVE!

Help! Whenever you need help with a command type “man” and the command name

Help!

Unix/Linux File System /home/john/portfolio/ /home/mary/ The Path NOTE: Unix file names are CASE SENSITIVE!

Command: pwd To find your current path use “pwd”

Command: cd To change to a specific directory use “cd”

Command: cd “~” is the location of your home directory

Command: cd “..” is the location of the directory below current one

Command: ls To list the files in the current directory use “ls”

Command: ls ls has many options  -l long list (displays lots of info)  -t sort by modification time  -S sort by size  -h list file sizes in human readable format  -r reverse the order “man ls” for more options Options can be combined: “ls -ltr”

Command: ls -ltr List files by time in reverse order with long listing

General Syntax: * “*” can be used as a wildcard in unix/linux

Command: mkdir To create a new directory use “mkdir”

Command: rmdir To remove and empty directory use “rmdir”

Working environments 23 Writing C code:  IDE (Integrated development environment): emacs, eclipse, code::blocks, qtcreator etc.  Any text editor + SHELL commands.  Visual Studio – not recommended as does not support C99 and it is YOUR responsibility to migrate the code to linux.

Displaying a file Various ways to display a file in Unix  cat  less  head  tail

Command: cat Dumps an entire file to standard output Good for displaying short, simple files

Command: less “less” displays a file, allowing forward/backward movement within it  return scrolls forward one line, space one page  y scrolls back one line, b one page use “/” to search for a string Press q to quit

Command: head “head” displays the top part of a file By default it shows the first 10 lines -n option allows you to change that “head -n50 file.txt” displays the first 50 lines of file.txt

Command: head Here’s an example of using “head”:

Command: tail Same as head, but shows the last lines

File Commands Copying a file: cp Move or rename a file: mv Remove a file: rm

Command: cp To copy a file use “cp”

Command: mv To move a file to a different location use “mv”

Command: mv mv can also be used to rename a file

Command: rm To remove a file use “rm”

Command: rm To remove a file “recursively”: rm –r Used to remove all files and directories Be very careful, deletions are permanent in Unix/Linux

File permissions Each file in Unix/Linux has an associated permission level This allows the user to prevent others from reading/writing/executing their files or directories Use “ls -l filename” to find the permission level of that file

Permission levels “r” means “read only” permission “w” means “write” permission “x” means “execute” permission  In case of directory, “x” grants permission to list directory contents

File Permissions User (you)

File Permissions Group

File Permissions “The World”

Command: chmod If you own the file, you can change it’s permissions with “chmod”  Syntax: chmod [ u ser/ g roup/ o thers/ a ll]+[permission] [file(s)]  Below we grant execute permission to all:

Running a program (a.k.a. a job) Make sure the program has executable permissions Use “./” to run the program

Running a program: an example Running the sample perl script “hello_world.pl”

Ending a program To end a program use “ctrl-c”. To try it:

Command: ps To view the processes that you’re running:

Command: top To view the CPU usage of all processes:

Command: kill To terminate a process use “kill”

Input/Output Redirection (“piping”) Programs can output to other programs Called “piping” “program_a | program_b”  program_a’s output becomes program_b’s input “program_a > file.txt”  program_a’s output is written to a file called “file.txt” “program_a < input.txt”  program_a gets its input from a file called “input.txt”

A few examples of piping

Command: wc To count the characters, words, and lines in a file use “wc” The first column in the output is lines, the second is words, and the last is characters

A few examples of piping

Command: grep To search files in a directory for a specific string use “grep”

Command: diff To compare to files for differences use “diff”  Try: diff /dev/null hello.txt  /dev/null is a special address -- it is always empty, and anything moved there is deleted

Unix Web Resources ginners ginners

Emacs reference card ds/pdf/refcard.pdf