Outline. Unix shells Bourne-again Shell (bash) Interacting with bash Basic scripting References

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Outline. Unix shells Bourne-again Shell (bash) Interacting with bash Basic scripting References"

Transcription

1 Ryan Hulguin

2 Outline Unix shells Bourne-again Shell (bash) Interacting with bash Basic scripting References

3 Unix shells This lets users issue commands to the Unix operating system Users can interact with various parts of the Unix operating system such as the input/output system the scheduler memory management The shell is simply a program whose job is to execute other programs Different shells exist such as the C shell (csh), the Korn shell (ksh), the Bourne shell (sh) and the Bourne-again shell (bash)

4 Bourne-again shell (bash) bash is the default shell on modern Linux distributions as well as Mac OS X bash is both a command interpreter and a highlevel programming language When used as a programming language, bash processes commands stored in files called shell scripts Most system shell scripts are written for bash Like other programming languages, bash has variables and control flow commands (i.e. for loops and if statements)

5 Active participation It is highly encouraged to try all the examples as we go along You may use your own shell from a Linux/Mac terminal You may also use the free linux shell provided by

6 Shell Variables Variables in a bash script are typically written with all-uppercase letters This is not a strict requirement Assignment is done using the equals sign without spaces VAR1= test string Referencing the value of a variable is done using the dollar sign echo My assigned variable contains $VAR1 An exception to this rule is evaluating arithmetic expressions, covered later

7 Documenting bash scripts with comments It is always a good idea to document bash scripts with comments Any text immediately following the # character will be considered a comment and ignored by the shell # This is a comment The exception to this the shebang #! found at the top of most scripts The shebang specifies which shell to use to execute the script Example: #!/bin/bash

8 Command substitution To assign the value of another bash command/ script to a variable, command substitution is used TODAYS_DATE=$(date +%m/%d/%y ) TODAYS_DATE=`date +%m/%d/%y ` echo $TODAYS_DATE echo $(TODAYS_DATE) Newer scripts will use $(), while older scripts will use backticks ` ` The $() convention makes it easier to read and nest commands within commands

9 Our first bash script Visit Click Start my session nano hello_world.sh Ctrl-X Y to save modified buffer Hit return/ enter to accept filename

10 Running our first bash script We can run our bash script several ways We can pass the script to the shell of our choice /bin/bash./hello_world.sh /bin/sh./hello_world.sh We can specify which shell to use with the shebang, and then make the script executable nano hello_world.sh Insert #!/bin/bash at the top Ctrl x, y, enter to save chmod u+x./hello_world.sh./hello_world

11 Embedding variable values in text Suppose you have the following variable defined PREFIX=sun If you wanted to echo the following words using this prefix: sunflower, sunshine, sunset you would use echo ${PREFIX}flower echo ${PREFIX}shine echo ${PREFIX}set Note the use of the braces Without the braces, echo $PREFIXflower would return nothing since the variable PREFIXflower is undefined

12 Using parameters in a bash script scripts are often called using input parameters To reference these parameters use ${position #} where position # is the specific parameter to use that starts at 1 Example: echo The first input parameter is ${1} echo The second input parameter is ${2} You can also get the number of input parameters passed using ${#} echo There were ${#} input parameters passed

13 Setting default values for parameters Many times you would like parameter set to a default value if none is given Suppose you have a script that is expecting a directory as an input parameter, but needs to default to the $HOME directory if none is specified default_param.sh: #!/bin/bash # List the contents of the 1 st argument # Use the $HOME directory if none is specified TARGET=${1:-$HOME} ls $TARGET

14 Setting default values for variables Just like parameters, variables can also have default values assigned to them default_variable.sh: #!/bin/bash # Show the first 5 lines of $TARGET file TARGET=/proc/cpuinfo head -5 ${TARGET:=./default_variable.sh} echo TARGET file is $TARGET unset TARGET echo head -5 ${TARGET:=./default_variable.sh} echo TARGET file is $TARGET

15 The for control structure for loop-index do commands done The loop-index takes on the values of each of the command line arguments Example: # Display all of the command line arguments for INPUT_ARG do echo $INPUT_ARG done

16 The for in control structure for loop-index in argument-list do commands done The loop-index takes on the values of each argument in the specified argument-list Example: # Display all of the animals in a given list for ANIMAL in lions tigers bears do echo $ANIMAL done

17 The for control structure with C like syntax bash also allows a syntax for for loops much like the C programming language # count from 1 to 10 on a single line for (( count=1; count<10; count+=1 )) do echo n $count done echo

18 References A Practical Guide to Linux Commands, Editors, and Shell Programming by Mark G. Sobell Bash Cookbook: Solutions and Examples for Bash Users by Carl Albing, JP Vossen, and Cameron Newham These slides will be posted on

19 Questions? / Contact Ryan Hulguin

Week 1 Lesson 2: Creating Shell Scripts, Linux Commands

Week 1 Lesson 2: Creating Shell Scripts, Linux Commands Week 1 Lesson 2: Creating Shell Scripts, Linux Commands 1 Chapter Objectives In this chapter, you will: Learn how to create Shell Scripts Commenting / Making Portable Shell Scripts Making Shell Scripts

More information

Unix Shell Scripts. Contents. 1 Introduction. Norman Matloff. July 30, 2008. 1 Introduction 1. 2 Invoking Shell Scripts 2

Unix Shell Scripts. Contents. 1 Introduction. Norman Matloff. July 30, 2008. 1 Introduction 1. 2 Invoking Shell Scripts 2 Unix Shell Scripts Norman Matloff July 30, 2008 Contents 1 Introduction 1 2 Invoking Shell Scripts 2 2.1 Direct Interpretation....................................... 2 2.2 Indirect Interpretation......................................

More information

Linux System Administration

Linux System Administration Shell Scripts Objective As system administrators it is often necessary to write or modify a script to automate administrator duties We should have a basic understating of the syntax of some basic script

More information

Module Eight Shell Scripting in Linux

Module Eight Shell Scripting in Linux Postgraduate course, Covenant University Ota, Nigeria Oyelade, O. J., PhD ola.oyelade@covenantuniversity.edu.ng Isewon, I. itunu.isewon@covenantuniversity.edu.ng Module Eight Shell Scripting in Linux 8.1

More information

Using Linux Six rules of thumb in using Linux EVERYTHING ls -l ls /bin ctrl-d Linux Kernel Shell Command Interpretation shell myfile myfile

Using Linux Six rules of thumb in using Linux EVERYTHING ls -l ls /bin ctrl-d Linux Kernel Shell Command Interpretation shell myfile myfile Using Linux In this section we cover some background Linux concepts including some general rules of thumb when using Linux, the operating system kernel, the shell command interpreter, and the file system.

More information

What is Shell Script?

What is Shell Script? Linux Shell Scripts What is Shell Script? We have seen some basic shell commands, it s time to move on to scripts. There are two ways of writing shell programs. You can type a sequence of commands and

More information

What is UNIX? A Little Bit about UNIX and User Interfaces

What is UNIX? A Little Bit about UNIX and User Interfaces What is UNIX? A Little Bit about UNIX and User Interfaces Copyright 2006 Stewart Weiss What is UNIX? It is a multi-user, multi-tasking operating system. An operating system is a program or collection of

More information

BASH Shell Scripting. Adapted from:

BASH Shell Scripting. Adapted from: BASH Shell Scripting Adapted from: http://www.eecs.wsu.edu/~cs302/notes/shprogramming.html http://steve-parker.org/sh The basics A shell script is a collection of Unix commands, with a little bit of programming

More information

Introduction to shell scripting

Introduction to shell scripting Introduction to shell scripting Thomas Röblitz thomas.roblitz@usit.uio.no Research Infrastructure Services Group Department for Research Computing (DRC) DRC Course Week, April 16-18, 2013 Outline What

More information

Computer Science 340. Operating Systems. Assignment 1 SOME SHELL SCRIPT EXAMPLES

Computer Science 340. Operating Systems. Assignment 1 SOME SHELL SCRIPT EXAMPLES Computer Science 340 Operating Systems Assignment 1 SOME SHELL SCRIPT EXAMPLES NOTICE that all the files I use in these examples have names which begin with the letters ss. If your files have names which

More information

Introduction to Linux Basics

Introduction to Linux Basics Introduction to Linux Basics Part-II Shell Scripting Georgia Advanced Computing Resource Center University of Georgia Zhuofei Hou, HPC Trainer zhuofei@uga.edu Outline What is GACRC? What are Linux Shell

More information

BASH Scripting. A bash script may consist of nothing but a series of command lines, e.g. The following helloworld.sh script simply does an echo.

BASH Scripting. A bash script may consist of nothing but a series of command lines, e.g. The following helloworld.sh script simply does an echo. BASH Scripting bash is great for simple scripts that automate things you would otherwise by typing on the command line. Your command line skills will carry over to bash scripting and vice versa. bash comments

More information

Which shell? Shells. Common shell facilities. bash versus sh

Which shell? Shells. Common shell facilities. bash versus sh Shells 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:

More information

Shell Scripting Crash Course

Shell Scripting Crash Course Shell Scripting Crash Course Travis Phillips JAX LUG Overview What is a shell script What can I do with a shell script How to build shell scripts Syntax basics Basic useful shell commands Pipes and redirectors

More information

Linux shell scripting intro/review

Linux shell scripting intro/review Linux shell scripting intro/review David Morgan You should already know how to log in run programs at the command line use pipelines and redirection ( < > ) put jobs in the background ( & ) create and

More information

LINUX SHELL SCRIPTING

LINUX SHELL SCRIPTING LINUX SHELL SCRIPTING @Copyright 2015 1 1. Chapter 1: Quick Introduction to Linux What Is Linux? Who created Linux? Where can I download Linux? How do I Install Linux? Linux usage in everyday life What

More information

Introduction to C Programming S Y STEMS

Introduction to C Programming S Y STEMS Introduction to C Programming CS 40: INTRODUCTION TO U NIX A ND L I NUX O P E R AT ING S Y STEMS Objectives Introduce C programming, including what it is and what it contains, which includes: Command line

More information

Session 2: Shell Scripting

Session 2: Shell Scripting Session 2: Shell Scripting Craig A. Struble, Ph.D. July 14, 2010 1 Introduction Shell scripts are a way to automate the execution of a series of Linux commands. Essentially, any command you can run from

More information

Ashell program combines Linux commands in such a way as to perform a specific

Ashell program combines Linux commands in such a way as to perform a specific Shell Programming 1 2 Red Hat Linux: The Complete Reference Ashell program combines Linux commands in such a way as to perform a specific task. The Linux shell provides you with many programming tools

More information

UNIX/Linux: Notes on Sobell, Chapter 9, Bourne Again Shell

UNIX/Linux: Notes on Sobell, Chapter 9, Bourne Again Shell These are some notes to help you through Chapter 9 of A Practical Guide to Linux, by Mark Sobell. This is the chapter on the BASH shell, and it is long, complicated, and difficult. But it covers how the

More information

Unix Scripts and Job Scheduling

Unix Scripts and Job Scheduling Unix Scripts and Job Scheduling Michael B. Spring Department of Information Science and Telecommunications University of Pittsburgh spring@imap.pitt.edu http://www.sis.pitt.edu/~spring Overview Shell Scripts

More information

AWS running first C++ program

AWS running first C++ program AWS running first C++ program This document describes how edit, compile, link, and run your first linux program using: - Terminal a command line interface to your linux os - Emacs a popular ide for linux

More information

Shell Scripting. 2014/10/09 Victor Eijkhout

Shell Scripting. 2014/10/09 Victor Eijkhout Shell Scripting 2014/10/09 Victor Eijkhout What is a shell? Command interpreter: listens for your commands, executes, shows output Toolbox: chain together commands with pipes Programming language: Variables

More information

Introduction to shell programming using bash Part I

Introduction to shell programming using bash Part I Introduction to shell programming using bash Part I Deniz Savas and Michael Griffiths 2005-2011 Corporate Information and Computing Services The University of Sheffield Email M.Griffiths@sheffield.ac.uk

More information

Raspbian (Linux) VNC Linux History Overview Shell Commands File system

Raspbian (Linux) VNC Linux History Overview Shell Commands File system Raspbian (Linux) VNC Linux History Overview Shell Commands File system A new way to connect the Pi: VNC http://quaintproject.wordpress.com/2013/03/24/establish-a-vnc-connection-to-you r-raspberry-pi-from-a-linux-pc

More information

LINUX SHELL SCRIPTING Sagar MungsE------

LINUX SHELL SCRIPTING Sagar MungsE------ LINUX SHELL SCRIPTING ------Sagar MungsE------ Shell Scripting Text files that contain sequences of UNIX commands, created by a text editor No compiler required to run a shell script, because the UNIX

More information

This presentation explains how to monitor memory consumption of DataStage processes during run time.

This presentation explains how to monitor memory consumption of DataStage processes during run time. This presentation explains how to monitor memory consumption of DataStage processes during run time. Page 1 of 9 The objectives of this presentation are to explain why and when it is useful to monitor

More information

CS2043 - Unix Tools & Scripting Lecture 9 Shell Scripting

CS2043 - Unix Tools & Scripting Lecture 9 Shell Scripting CS2043 - Unix Tools & Scripting Lecture 9 Shell Scripting Spring 2015 1 February 9, 2015 1 based on slides by Hussam Abu-Libdeh, Bruno Abrahao and David Slater over the years Announcements Coursework adjustments

More information

INFORMATION SYSTEMS SERVICES

INFORMATION SYSTEMS SERVICES INFORMATION SYSTEMS SERVICES Further Exercises in Unix This document contains a series of exercises which provide examples of Unix commands and is intended for existing Unix users AUTHOR: Information Systems

More information

Hands-On UNIX Exercise:

Hands-On UNIX Exercise: Hands-On UNIX Exercise: This exercise takes you around some of the features of the shell. Even if you don't need to use them all straight away, it's very useful to be aware of them and to know how to deal

More information

Internet Traffic Measurements. Shell Scripts. School of Electrical Engineering AALTO UNIVERSITY

Internet Traffic Measurements. Shell Scripts. School of Electrical Engineering AALTO UNIVERSITY Internet Traffic Measurements Shell Scripts School of Electrical Engineering AALTO UNIVERSITY Page 1 Contents What is a shell script?... 2 Useful Linux commands... 2 Useful commands for data manipulation...

More information

Shell Scripts (1) For example: #!/bin/sh If they do not, the user's current shell will be used. Any Unix command can go in a shell script

Shell Scripts (1) For example: #!/bin/sh If they do not, the user's current shell will be used. Any Unix command can go in a shell script Shell Programming Shell Scripts (1) Basically, a shell script is a text file with Unix commands in it. Shell scripts usually begin with a #! and a shell name For example: #!/bin/sh If they do not, the

More information

Lecture 4: Writing shell scripts

Lecture 4: Writing shell scripts Handout 5 06/03/03 1 Your rst shell script Lecture 4: Writing shell scripts Shell scripts are nothing other than les that contain shell commands that are run when you type the le at the command line. That

More information

Beginners Shell Scripting for Batch Jobs

Beginners Shell Scripting for Batch Jobs Beginners Shell Scripting for Batch Jobs Evan Bollig and Geoffrey Womeldorff Before we begin... Everyone please visit this page for example scripts and grab a crib sheet from the front http://www.scs.fsu.edu/~bollig/techseries

More information

The Basics of the bash shell

The Basics of the bash shell The Basics of the bash shell Phil Spector September 4, 2009 The bash shell is the program that Linux and Mac systems use to actually communicate with the computer. When you type a command into the shell,

More information

Command Line - Part 1

Command Line - Part 1 Command Line - Part 1 STAT 133 Gaston Sanchez Department of Statistics, UC Berkeley gastonsanchez.com github.com/gastonstat Course web: gastonsanchez.com/teaching/stat133 GUIs 2 Graphical User Interfaces

More information

Lab Manual. Unix and Linux Programming (Pr) COT-218 and IT-214

Lab Manual. Unix and Linux Programming (Pr) COT-218 and IT-214 Lab Manual Unix and Linux Programming (Pr) COT-218 and IT-214 Lab Instructions Several practicals / programs? Whether an experiment contains one or several practicals /programs One practical / program

More information

Lecture 10: More Bash Scripting

Lecture 10: More Bash Scripting Lecture 10: More Bash Scripting CS2042 - UNIX Tools October 22, 2008 Lecture Outline 1 2 3 Basic Operators While shell scripts are usually used to automate more complex tasks, occasionally a little arithmetic

More information

Introduction to Shell Programming

Introduction to Shell Programming Introduction to Shell Programming Timothy Brown February 12, 2015 Specifically bash Research Computing @ CU Boulder Introduction to Shell Programming 1 February 12, 2015 Overview Introduction Variables

More information

Automating Tasks Using bash

Automating Tasks Using bash Overview Automating Tasks Using bash David McCaughan, HPC Analyst SHARCNET, University of Guelph dbm@sharcnet.ca Introduction to command shells & bash bash fundamentals I/O redirection, pipelining, wildcard

More information

LING 408/508: Programming for Linguists. Lecture 4 September 2 nd

LING 408/508: Programming for Linguists. Lecture 4 September 2 nd LING 408/508: Programming for Linguists Lecture 4 September 2 nd Administrivia Did people manage to install Ubuntu as a guest OS inside VirtualBox? (We'll try to reserve a bit of 0me at the end.) Today

More information

A Crash Course on UNIX

A Crash Course on UNIX A Crash Course on UNIX UNIX is an "operating system". Interface between user and data stored on computer. A Windows-style interface is not required. Many flavors of UNIX (and windows interfaces). Solaris,

More information

The Command Line. Matthew Bender. Friday 9 th October, CMSC Command Line Workshop

The Command Line. Matthew Bender. Friday 9 th October, CMSC Command Line Workshop The Command Line Matthew Bender CMSC Command Line Workshop Friday 9 th October, 2015 Matthew Bender (2015) The Command Line Friday 9 th October, 2015 1 / 22 Functions Section 1 Functions Matthew Bender

More information

HP-UX Essentials and Shell Programming Course Summary

HP-UX Essentials and Shell Programming Course Summary Contact Us: (616) 875-4060 HP-UX Essentials and Shell Programming Course Summary Length: 5 Days Prerequisite: Basic computer skills Recommendation Statement: Student should be able to use a computer monitor,

More information

Advance Bash Shell Scripting

Advance Bash Shell Scripting Advance Bash Shell Scripting 1- Introduction to Shell What is shell Installation of shell Shell features Bash Keywords Built-in Commands Linux Commands Specialized Navigation and History Commands Shell

More information

CS 153 Lab1. Kishore Kumar Pusukuri

CS 153 Lab1. Kishore Kumar Pusukuri Outline Overview of Linux/Unix Linux is a variant of UNIX (with only small deviations). Linus Torvalds. 1991. Monolithic kernel rather than Micro-kernel. Linux is free, this license, the GPL (GNU Public

More information

Linux Shell Scripting : A Brief Primer. - By Team. Table Of Contents :

Linux Shell Scripting : A Brief Primer. - By  Team. Table Of Contents : Linux Shell Scripting : A Brief Primer - By www.ihaveapc.com Team 1. Shell What is it good for? 2. The First Linux Shell Script 3. Some More Fun Shell Scripts 4. Variables 5. Loops 6. User Interaction

More information

bash Cookbookm Carl Albing, JP Vossen, and Cameron Newham O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo

bash Cookbookm Carl Albing, JP Vossen, and Cameron Newham O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo bash Cookbookm Carl Albing, JP Vossen, and Cameron Newham O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo Table of Contents Preface xiii 1. Beginning bash 1 1.1 Decoding the Prompt 4 1.2

More information

2. To see the contents of DOG variable, you must proceed the name of the variable with a $ operator.

2. To see the contents of DOG variable, you must proceed the name of the variable with a $ operator. CPSC 2800 - Lab #6: Shell Script Programming Project 6-1 Before setting one or more environment variables, it is a good idea to view their current configurations. In this project, you use the printenv

More information

LSN 10 Linux Overview

LSN 10 Linux Overview LSN 10 Linux Overview ECT362 Operating Systems Department of Engineering Technology LSN 10 Linux Overview Linux Contemporary open source implementation of UNIX available for free on the Internet Introduced

More information

Automating admin tasks using shell scripts and cron Vijay Kumar Adhikari. vijay@kcm

Automating admin tasks using shell scripts and cron Vijay Kumar Adhikari. vijay@kcm Automating admin tasks using shell scripts and cron Vijay Kumar Adhikari vijay@kcm kcm.edu.np How do we go? Introduction to shell scripts Example scripts Introduce concepts at we encounter them in examples

More information

Shell Scripts. Jacob Morzinski Jan-23 1

Shell Scripts. Jacob Morzinski Jan-23 1 Shell Scripts Jacob Morzinski jmorzins@mit.edu http://sipb.mit.edu/iap/2006/shell/ http://web.mit.edu/sipb-iap/www/2006/shell/ 2006-Jan-23 1 Why use shell scripts? They simplify your life. Store complicated

More information

Linux Shells. Linux Shells. Book Chapter 5. What is a shell? Examples: Linux default shell /bin/bash. How do I know what shell I am running?

Linux Shells. Linux Shells. Book Chapter 5. What is a shell? Examples: Linux default shell /bin/bash. How do I know what shell I am running? Linux Shells Book Chapter 5 What is a shell? Examples: bash Bourne Again shell ksh tcsh Korn shell C shell 1 Linux Shells Linux default shell /bin/bash How do I know what shell I am running? echo $SHELL

More information

Shell Scripts in UNIX

Shell Scripts in UNIX Shell Scripts in UNIX Prof. P.C.P. Bhatt P.C.P Bhatt OS/M13/V1/2004 1 Unix System Shell Organization In the below figure we show how a user interacts with UNIX shell. P.C.P Bhatt OS/M13/V1/2004 2 Facilities

More information

CS 2112 Lab: Version Control

CS 2112 Lab: Version Control 29 September 1 October, 2014 Version Control What is Version Control? You re emailing your project back and forth with your partner. An hour before the deadline, you and your partner both find different

More information

SCR. Scripting. Goals of this lab: Prerequisites: LXB

SCR. Scripting. Goals of this lab: Prerequisites: LXB SCR Scripting Goals of this lab: To learn the basics of writing shell scripts. To gain insight in the gains with automating administrative work. To gain practical experience of automating administrative

More information

UNIX Commands. COMP 444/5201 Revision 1.4 January 25,

UNIX Commands. COMP 444/5201 Revision 1.4 January 25, UNIX Commands COMP 444/5201 Revision 1.4 January 25, 2005 1 Contents Shell Intro Command Format Shell I/O Command I/O Command Overview 2 Shell Intro A system program that allows a user to execute: shell

More information

Origins of scripting languages

Origins of scripting languages Scripting on Linux Origins of scripting languages Learning scripting languages A simple example of a shell script A script with a loop and debugging Processing a table of data by selecting rows and columns

More information

Chapter 8: Shell Scripting. Chapter 8 Shell Scripting

Chapter 8: Shell Scripting. Chapter 8 Shell Scripting Chapter 8: Shell Scripting Chapter 8 Shell Scripting Last revised: 20/6/2004 Chapter 8 Outline In this chapter we will learn how to: Create shell scripts Use variables and environment variables Pass parameters

More information

San Francisco State University School of Engineering Nano-electronics & Computing Research Center BASIC UNIX/LINUX COMMANDS

San Francisco State University School of Engineering Nano-electronics & Computing Research Center BASIC UNIX/LINUX COMMANDS San Francisco State University School of Engineering Nano-electronics & Computing Research Center BASIC UNIX/LINUX COMMANDS Introduction A short paper that briefly describes the UNIX shell, environment

More information

Automating tasks through scripting. HPC Certificate Program

Automating tasks through scripting. HPC Certificate Program Automating tasks through scripting HPC Certificate Program Summary of preparation lectures From "The Shell" at Software Carpentry: Lecture 4: Pipes and Filters The redirect operator saves command output

More information

why Z shell (zsh) is cooler than your shell Brendon Rapp - Cave Lunch #1

why Z shell (zsh) is cooler than your shell Brendon Rapp - Cave Lunch #1 why Z shell (zsh) is cooler than your shell Brendon Rapp - Cave Lunch #1 why Z shell (zsh) is cooler than your shell (unless your shell is zsh) Brendon Rapp - Cave Lunch #1 (alternate title) she sells

More information

BASH scripting. Sebastian von Alfthan Scripting techniques 25.10.2010. CSC Tieteen tietotekniikan keskus Oy CSC IT Center for Science Ltd.

BASH scripting. Sebastian von Alfthan Scripting techniques 25.10.2010. CSC Tieteen tietotekniikan keskus Oy CSC IT Center for Science Ltd. BASH scripting Sebastian von Alfthan Scripting techniques 25.10.2010 CSC Tieteen tietotekniikan keskus Oy CSC IT Center for Science Ltd. Introduction Shell scripting is the art of writing scripts that

More information

Unix/Linux basics Operating systems lab Gergely Windisch room 4.12

Unix/Linux basics Operating systems lab Gergely Windisch room 4.12 Unix/Linux basics 0001 Operating systems lab Gergely Windisch windisch.gergely@nik.bmf.hu room 4.12 http://nik.bmf.hu/gwindisch/os_2010 And now: the test Assignment test 20 minutes Grade together Is of

More information

Learn Perl by Example - Perl Handbook for Beginners - Basics of Perl Scripting Language

Learn Perl by Example - Perl Handbook for Beginners - Basics of Perl Scripting Language Learn Perl by Example - Perl Handbook for Beginners - Basics of Perl Scripting Language www.freebsdonline.com Copyright 2006-2008 www.freebsdonline.com 2008/01/29 This course is about Perl Programming

More information

Linux command line. An introduction to the Linux command line for genomics. Susan Fairley

Linux command line. An introduction to the Linux command line for genomics. Susan Fairley Linux command line An introduction to the Linux command line for genomics Susan Fairley Aims Introduce the command line Provide an awareness of basic functionality Illustrate with some examples Provide

More information

GNU Bash. An Introduction to Advanced Usage. James Pannacciulli (mt) Media Temple

GNU Bash. An Introduction to Advanced Usage.  James Pannacciulli (mt) Media Temple GNU Bash http://talk.jpnc.info/bash_scale11x.pdf An Introduction to Advanced Usage James Pannacciulli Sysadmin @ (mt) Media Temple Notes about the presentation: This is a talk about Bash, not about GNU/Linux

More information

AN INTRODUCTION TO UNIX

AN INTRODUCTION TO UNIX AN INTRODUCTION TO UNIX Paul Johnson School of Mathematics September 24, 2010 OUTLINE 1 SHELL SCRIPTS Shells 2 COMMAND LINE Command Line Input/Output 3 JOBS Processes Job Control 4 NETWORKING Working From

More information

Steve Crouch, Mike Jackson, The Software Sustainability Institute. Steve McGough, Newcastle University.

Steve Crouch, Mike Jackson, The Software Sustainability Institute. Steve McGough, Newcastle University. Bash Shell Key Points ===================== Steve Crouch, Mike Jackson, The Software Sustainability Institute. Steve McGough, Newcastle University. This work is licensed under the Creative Commons Attribution

More information

Introduction to Linux Scripting. Albert Lund CHPC User Services

Introduction to Linux Scripting. Albert Lund CHPC User Services Introduction to Linux Scripting Albert Lund CHPC User Services Overview What is scripting? Compiling mini-excercise Basic bash/tcsh scripting exercises Slides: home.chpc.utah.edu/~u0403692/introscripting.pdf

More information

Using the Shell. UIC Linux Users Group. September 9, 2010

Using the Shell. UIC Linux Users Group. September 9, 2010 September 9, 2010 About the Presenter Hold Your Comments Alias: eviljoel (or ej) Name: Joel Luellwitz 7 Years of Linux Experience. UIC Alumni Management Information Systems Masters from the CBA. Works

More information

Running your first Linux Program

Running your first Linux Program Running your first Linux Program This document describes how edit, compile, link, and run your first linux program using: - Gnome a nice graphical user interface desktop that runs on top of X- Windows

More information

Text Editors and Shell Scripting

Text Editors and Shell Scripting Text Editors and Shell Scripting OUCS MT 2010 Your course leader is Susan Hutchinson. Susan is a support specialist for Linux and Windows in the Department of Statistics. Her email address is hutchins@stats.ox.ac.uk

More information

SSH Connections MACs the MAC XTerm application can be used to create an ssh connection, no utility is needed.

SSH Connections MACs the MAC XTerm application can be used to create an ssh connection, no utility is needed. Overview of MSU Compute Servers The DECS Linux based compute servers are well suited for programs that are too slow to run on typical desktop computers but do not require the power of supercomputers. The

More information

Chapter 3 Introduction to Shells and Scripting

Chapter 3 Introduction to Shells and Scripting Chapter 3 Introduction to Shells and Scripting 3.1 What is a Shell? For our purposes, a shell will be considered as a command line interface that allows the user to input commands. These commands can range

More information

UNIX / Linux commands Basic level. Magali COTTEVIEILLE - September 2009

UNIX / Linux commands Basic level. Magali COTTEVIEILLE - September 2009 UNIX / Linux commands Basic level Magali COTTEVIEILLE - September 2009 What is Linux? Linux is a UNIX system Free Open source Developped in 1991 by Linus Torvalds There are several Linux distributions:

More information

Environment Variables. Command Line. Environment Variables. Variables. csh/tcsh:

Environment Variables. Command Line. Environment Variables. Variables. csh/tcsh: Overview Shell Scripting Tom Logan (Slides from Kate Hedstrom & Don Bahls) Variables Scripting Basics Bash Shell Scripts Other Scripting Advanced Command Line Appendix (C-Shell Scripts) Shells Bash There

More information

Do not write in this area Doc TOTAL. Maximum possible points: 40

Do not write in this area Doc TOTAL. Maximum possible points: 40 Name: Student ID: Lab Instructor: Borja Sotomayor Do not write in this area 1 2 3 Doc TOTAL Maximum possible points: 40 NOTE: The lab session will take place in the Linux machines of the Maclab. This lab

More information

Introduction to Shell Scripting

Introduction to Shell Scripting Introduction to Shell Scripting Lecture 1. Shell scripts are small programs. They let you automate multi-step processes, and give you the capability to use decision-making logic and repetitive loops. 2.

More information

Laboratory Manual. For OPERATING SYSTEM (140702) B.E. (COMPUTER) SEM IV. January 2013

Laboratory Manual. For OPERATING SYSTEM (140702) B.E. (COMPUTER) SEM IV. January 2013 Laboratory Manual For OPERATING SYSTEM (140702) B.E. (COMPUTER) SEM IV January 2013 Shree Swami Atmanand Saraswati Institute of Technology Shree Swami Atmanand Vidya Sankul, Kapodra, Varachha Road, Surat

More information

CS197U: A Hands on Introduction to Unix

CS197U: A Hands on Introduction to Unix CS197U: A Hands on Introduction to Unix Lecture 5: Programming & Scripting J.D. DeVaughn-Brown University of Massachusetts Amherst Department of Computer Science jddevaughn@cs.umass.edu 1 Reminders Assignment

More information

Navigating within the GNU/Linux Filesystem

Navigating within the GNU/Linux Filesystem Navigating within the GNU/Linux Filesystem The purpose of this section is to provide a few basic GNU/Linux commands to aide new users locate areas on the ODU Turing cluster. The commands presented are

More information

Introduction to Scripting using bash

Introduction to Scripting using bash Introduction to Scripting using bash Scripting versus Programming (from COMP10120) You may be wondering what the difference is between a script and a program, or between the idea of scripting languages

More information

Bash Reference Manual

Bash Reference Manual Bash Reference Manual Reference Documentation for Bash Edition 4.4, for Bash Version 4.4. September 2016 Chet Ramey, Case Western Reserve University Brian Fox, Free Software Foundation This text is a brief

More information

Project Proposal. Windshield. Windows Shell Script. Columbia University COMS W4115 Programming Languages and Translators Spring 2007

Project Proposal. Windshield. Windows Shell Script. Columbia University COMS W4115 Programming Languages and Translators Spring 2007 Project Proposal Windshield Winws Shell Script Columbia University COMS W4115 Programming Languages and Translators Spring 2007 Prof. Stephen A. Edwards Team members Wei-Yun Ma wm2174 wm2174@columbia.edu

More information

CS2720 Practical Software Development

CS2720 Practical Software Development Page 1 Rex Forsyth CS2720 Practical Software Development CS2720 Practical Software Development Scripting Tutorial Srping 2011 Instructor: Rex Forsyth Office: C-558 E-mail: forsyth@cs.uleth.ca Tel: 329-2496

More information

KORN SHELL PROGRAMMING CHEAT SHEET

KORN SHELL PROGRAMMING CHEAT SHEET KORN SHELL PROGRAMMING CHEAT SHEET Special Characters Metacharacters have special meaning to the shell unless quoted (by preceding it with a \ or enclosing it in ` `) Inside double quotes parameter and

More information

Beginning CGI Programming in Perl

Beginning CGI Programming in Perl Beginning CGI Programming in Perl In this section we will lay the foundation for CGI script development. 432 We will introduce general CGI programming concepts relating to CGI output but then focus on

More information

CHAPTER 5 THE KORN SHELL

CHAPTER 5 THE KORN SHELL CHAPTER 5 THE KORN SHELL ALIASES The Korn shell allows you to create and customize your ow ommands by using the alias command. alias [word [=string]] alias dir= ls F # option-f appends / for files, * for

More information

Using Commands in Linux

Using Commands in Linux Hervey Allen Network Startup Resource Center PacNOG 6: Nadi, Fiji Using Commands in Linux The format of a command command [options] parameters Traditionally, UNIX command-line options consist of a dash,

More information

A fault tolerant, peer-to-peer replication network

A fault tolerant, peer-to-peer replication network A fault tolerant, peer-to-peer replication network Radu Potop Otto Iovanici 1 Table of contents Introduction... 3 Evolution... 3 Centralized node for synchronizing... 4 Decentralized synchronizing network...

More information

MSE 4270/6270: Getting started with Unix and computing

MSE 4270/6270: Getting started with Unix and computing MSE 4270/6270: Getting started with Unix and computing Research computing accounts on ITS Linux Cluster Fir : ITS at UVA operates a Linuxbased commodity cluster with a frontend named Fir. Access to Fir

More information

WELCOME to UNIX/Linux II Shell Scripting OUTLINE 1. Parameters 2. Variables 3. Some commands 4. Control structures 5. getopts

WELCOME to UNIX/Linux II Shell Scripting OUTLINE 1. Parameters 2. Variables 3. Some commands 4. Control structures 5. getopts UNIX Operating Systems II Part 2: Shell Scripting Instructor: Stan Isaacs Shell Scripts Parameters/arguments - what s on the input line Control structures for - repetition if then else - conditional execution

More information

UNIX, Shell Scripting and Perl Introduction

UNIX, Shell Scripting and Perl Introduction UNIX, Shell Scripting and Perl Introduction Bart Zeydel 2003 Some useful commands grep searches files for a string. Useful for looking for errors in CAD tool output files. Usage: grep error * (looks for

More information

Introduction to Running Hadoop on the High Performance Clusters at the Center for Computational Research

Introduction to Running Hadoop on the High Performance Clusters at the Center for Computational Research Introduction to Running Hadoop on the High Performance Clusters at the Center for Computational Research Cynthia Cornelius Center for Computational Research University at Buffalo, SUNY 701 Ellicott St

More information

Installing IBM Websphere Application Server 7 and 8 on OS4 Enterprise Linux

Installing IBM Websphere Application Server 7 and 8 on OS4 Enterprise Linux Installing IBM Websphere Application Server 7 and 8 on OS4 Enterprise Linux By the OS4 Documentation Team Prepared by Roberto J Dohnert Copyright 2013, PC/OpenSystems LLC This whitepaper describes how

More information

The Linux Operating System

The Linux Operating System The Linux Operating System Charles Abzug, Ph.D. Department of Computer Science James Madison University Harrisonburg, VA 22807 Voice Phone: 540-568-8746; Cell Phone: 443-956-9424 E-mail: abzugcx@jmu.edu

More information

Introduction to C Programming in Linux Environment

Introduction to C Programming in Linux Environment Introduction to C Programming in Linux Environment Ibrahim Korpeoglu Department of Computer Engineering Bilkent University Spring 2004 This document includes information about the followings: Logging to

More information

An introduction to Unix * and the shell. (*) unix-like operating systems ( ) actually, a shell etc

An introduction to Unix * and the shell. (*) unix-like operating systems ( ) actually, a shell etc An introduction to Unix * and the shell (*) unix-like operating systems ( ) actually, a shell etc Overview This brief course will give you two things: 1. An introduction to Unix 2. An introduction to using

More information

CLC Server Command Line Tools USER MANUAL

CLC Server Command Line Tools USER MANUAL CLC Server Command Line Tools USER MANUAL Manual for CLC Server Command Line Tools 2.5 Windows, Mac OS X and Linux September 4, 2015 This software is for research purposes only. QIAGEN Aarhus A/S Silkeborgvej

More information