Vi & Shell Scripting
|
|
- Sharon Griffin
- 6 years ago
- Views:
Transcription
1 Vi & Shell Scripting Comp-206 : Introduction to Week 3 Joseph Vybihal Computer Science McGill University
2 Announcements Sina Meraji's office hours Trottier 3rd floor open area Tuesday 1:30 2:30 PM Thursday 1:00 2:00 PM
3 Part 1 The Vi Editor
4 WhyVi? Most installed command-line editor Next comes Emacs We don't need to learn about windowed text editors... they are all the same Most installed on limitted resourced real-time systems Concern is low memory usage
5 Vi Modes Edit Mode You can input and edit your text file Command Mode Issue editor commands like File/Open, File/Save, Search and Replace,... Escape Mode Takes you out of the other two modes Gives you immediate commands: delete line, next page,...
6 Vi Modes Command Mode Press the : key Takes you from Escape to Command mode Edit Mode Many keys get you into this mode: i, a, o, O Takes you from Escape to Edit mode Escape Mode Press the ESC key Takes you from Edit/Command to Escape mode
7 A sample Vi session...
8
9
10 Part 2 Introduction to Scripts
11 Shell A shell is an application that allows you to relay commands to the Operating System. These commands are executed by the Operating System and the output is sent back to the shell. Most often, shells are used to execute commands. Most shells also include a simple programming language, often known as a scripting language. The first popular shell was the Bourne shell (sh). It remains at the core of most UNIX OS.
12 The Architecture The Hardware The OS The Shell The Command-line The Script A window is a special case of this YOU 12
13 Script (Batch) Scripts are collections of commands, grouped in a file and sequentially execute. Scripts are not compiled programs, they are interpreted. Scripts run from top to bottom, with little control flow (does not have the complexity of a piece of software). System administrators use script to automate complex tasks. Be sure to CHMOD it to execute!
14 Example script clear who finger bob ie outlook quoteoftheday Tasks at login. 14
15 Bash BASH is a scripting language that implements some programming language control flows, like: goto if for while But it is a script, it is interpreted by the OS, not compiled and executed by the CPU. 15
16 Uses of script files Backup scripts archiving important files and saving them in a safe place. Startup scripts application which require a complicated environment to run. programs you often run when your session begins Scheduled scripts regularly rotating and archiving logs. Maintenance scripts a script that creates a user or changes a password on multiple system, all in one command. Programmer scripts compiling, version control and backups in one step
17 Default Bash Files.cshrc.kshrc.login.bash_profile csh login script ksh login script sh login script bash login script.plan.forward extra finger info forwarding.logout sh and csh logout 17
18 Changing ENV at Login When you login or start a shell, specific scripts are executed to configure your environment. The specific script depends on which shell you are using. With Bash, ~/.bash_profile is executed on login. With csh (and it s derivative, like tcsh), the /.cshrc file is executed.
19 A Session Login prompt Launch shell Execute login script rlogin Display prompt until logout or exit Execute logout script Login prompt Sessions are stacked and independent. 19
20 Environment Changes While customising your account, you might want to set some shell variables, such as the PATH, CLASSPATH and PROMPT. set prompt = Best Student $home> set history = 100 setenv prompt Best Student $home> 20
21 Other startup things... You can customize your command prompt by changing an environment variable. Check your shell s documentation for information on how to do this (often set prompt=something) You can use the alias command to set up shortcuts. alias ll= /usr/bin/ls -l You can set your default editor. EDITOR=vi Some applications might require you to set up an environment variable. PVM_ROOT=/usr/local
22 Path and Classpath The PATH is a set of directory a shell searches for executables. In, it s a colon ( : ) separated list. In Windows, it s a semi-colon ( ; ) separated list. You can use the which command to figure out what file path is needed. The CLASSPATH is the set of directories the JVM searches when loading classes.
23 Other defaults HOME SHELL TERM USER PWD path to home directory path to your shell type of terminal I/O your user name your current directory 23
24 Part 3 Regular Expressions and commands that use it
25 Regular Expressions Several commands and editors allow you to search on text patterns. These text patterns are known as regular expressions (regex).
26 grep, sed and awk grep [options] string files search for occurrences of the string. sed [options] files stream editor for editing files. awk [options] files scan for patterns in a file and process the results. (script execution)
27 Grep grep is used to search for the occurrence of a regular expression in files. Regular expressions, are best specified in apostrophes (or single quotes) when used with grep. Some common options include: -i : ignore case -c : report only a count of the number of lines containing matches -v : invert the search, displaying only lines that do not match -n : display the line number along with the line on which a match was found -l : list filenames, but not lines, in which matches were found
28 Examples of grep Consider the following text file : Alex Marc Micheal Ting Juan Jeremy Jessica Yannick Nicolas Jean-Sebastien Nadeem
29 Examples of grep (cont.) Grep for a specific string... [jvybihal][~/cs206] grep Je demo.txt Jeremy Jessica Jean-Sebastien [jvybihal][~/cs206] grep -n Je demo.txt 6:Jeremy 7:Jessica 10:Jean-Sebastien [jvybihal][~/cs206] grep -c Je demo.txt 3
30 Examples of grep (cont.) Grep for vowels... [jvybihal][~/cs206] grep -i ^[aeiouy] demo.txt Alex Yannick [jvybihal][~/cs206] grep -i [aeiouy]$ demo.txt Jeremy Jessica [jvybihal][~/cs206] grep -i [aeiouy]\{2,\} demo.txt Micheal Juan Yannick Jean-Sebastien Nadeem
31 Examples of grep (cont.) Grep for specific characters... [jvybihal][~/cs206] grep -i ^.e demo.txt Jeremy Jessica Jean-Sebastien [jvybihal][~/cs206] grep -i ^.e\ a.$ demo.txt Micheal Juan Jeremy Jessica Nicolas Jean-Sebastien
32 Regex Syntax Take a look at the Regex Syntax quick sheet. Literal characters are combination to represent special characters. Character classes are combination to represent groups of characters. Repetition indicate how often a character should be appear to be a match. Anchors determine where the matching string must be found.
33 33
34 When to use grep Grep is a useful tool to find specific strings. Outlining all the errors in a log file. Finding a specific string in a collection of source files. It becomes an even more powerful tool when combined with other utilities. [jvybihal][~/cs206] ps -e grep java pts/1 00:18:30 java 21395? 00:00:08 java pts/4 00:03:51 java
35 Part 4 Shell Scripting
36 Shell Scripting A shell program (or script) containing a series of shell commands. The first line of the script should start with #! (sha-bang) which indicates to the kernel that the script is directly executable. You immediately follow this with the name of the shell, or program (spaces are allowed), to execute, using the full path name. Different languages can be used to script (sh, bash, perl, python, ruby, etc). To set up a Bourne shell script the first line must be: #!/bin/sh You also need to specify that the script is executable by setting the proper permissions on the file. % chmod +x shell_script
37 Variables There are three kinds of variables in a shell script: Environment Variable : these variables are used to customize the operating system and the shell to your needs. User-created : these variables are created by the script itself. Positional Parameters : these variables store the parameter used to start the script.
38 Positional Variables $# : number of arguments on the command line $- : options supplied to the shell $? : exit value of the last command executed $$ : process number of the current process $! : process number of the last command done in background $n : argument on the command line, where n is from 1 through 9, reading left to right $0 : the name of the current shell or program $* : all arguments on the command line ( $1 $2... $9 ) $@ : all arguments on the command line, each separately quoted ( $1 $2... $9 )
39 Your first Script The following script will print out the positional variables: #!/bin/sh echo "$#:" echo $-: echo $?: echo $$: echo $!: echo $3: echo $0: echo $*: echo $# $$? $$ $! $3 $0 $*
40 Changing an environment variable You can output an environment variable using echo. Before something goes wrong, you might want to backup the old value. TEMP_VAR_NAME=$VAR_TO_CHANGE You can then set the new value. VAR_TO_CHANGE=SomethingElse You can use any existing variables. TEMP_VAR_NAME=$VAR_TO_CHANGE:SomethingElse If something goes wrong, you can revert to the old value. VAR_TO_CHANGE=$TEMP_VAR_NAME This works in bash. In tcsh, you need to use setenv.
41 Shell Scripts A shell script runs from top to bottom. If statements and loop can be used to alter the control flow. You can also create functions. The # character is usually used to denote a comment. The #! (called a sha-bang) at the start of the script indicates which program should execute/interpret the script. Unlike other programming languages, scripts are sometime sensitive to extra spaces.
42 Simple Script The following script gathers information about the system and stores it in a file specified at the command line. #!/bin/sh uname -a > $1 date >> $1 who >> $1 The output was as follows : [jvybihal][~/cs206]./info.sh output.txt [jvybihal][~/cs206] cat output.txt Linux rogue gentoo-r4 #1 SMP... Thu Aug 10 10:57:38 EDT 2006 jvybihal pts/0 Aug 10 08:04 (dz2.cs.mcgill.ca)
43 Reading from STDIN The read command allows you to read a string from STDIN. That string is then stored in the specified variable. #!/bin/sh echo "What is your name?" read name echo "Your name is $name."
44 Arithmetic Operations The shell was never designed for numerical work. To do mathematical (integer) operations, you can to use the expr command. The following example script adds two numbers passed at the command line and outputs the answer to STDOUT. #!/bin/sh sum= expr $1 + $2 echo $sum
45 Question Write a script that will tell you if your friend is currently logged into the system. 45
46 SH.login Example e 100 ile 46
47 CSH.cshrc Example 47
48 Part 5 Shell Programming
49 test Before discussing control statements (if, for, etc), we need to check out the test command. The test command is used to evaluate an expression, or in our case, a condition. Although shells do contain operators to test a condition, they are not as versatile and universal as test. The test command can evaluate condition at the file, string or integer level.
50 File Tests -r : true if it exists and is readable -w : true if it exists and is writable -x : true if it exists and is executable -f : true if it exists and is a regular file -d : true if it exists and is a directory -h or -L : true if it exists and is a symbolic link and many more...
51 String Tests -z string : true if the string length is zero -n string : true if the string length is non-zero string1 = string2 : true if string1 is identical to string2 string1!= string2 : true if string1 is non identical to string2 string : true if string is not NULL
52 Integer Tests n1 -eq n2 : true if integers n1 and n2 are equal n1 -ne n2 : true if integers n1 and n2 are not equal n1 -gt n2 : true if integer n1 is greater than integer n2 n1 -ge n2 : true if integer n1 is greater than or equal to integer n2 n1 -lt n2 : true if integer n1 is less than integer n2 n1 -le n2 : true if integer n1 is less than or equal to integer n2
53 If statements If statements have a syntax similar to Java, but without brackets. if _condition_ then _code_ elif _condition_ then _code_ else _code_ fi
54 Example of If statement The following example program can be used to add or subtract two numbers. #!/bin/sh if test $1 = add then result= expr $2 + $3 elif test $1 = sub then result= expr $2 - $3 else result=0 fi echo "The result is $result \n"
55 Case statements A case statement is similar to a Java switch statement. case _condition_ in _condition1_) _action1_;; _condition2_) _action2_;; _condition3_ _condition4_) _action3_;; *) _else_action_;; esac
56 Examples of Case The following example program is a remodeling of the if example, but with a case statement. #!/bin/sh case $1 in add addition) result= expr $2 + $3 ;; sub substraction) result= expr $2 - $3 ;; *) result=0;; esac echo "The result is $result \n"
57 For loops The for loop is similar to a Java iterator. It allows you to iterate (loop) over a list strings. for _var_ in _list_ do _action_ done
58 Example of a For loop The following script executes the file command for each file in the specified path. #!/usr/bin/sh for i in ls $1 do file $i; done
59 While Statement The last control statement we will need is the while statement. Again, it is very similar to its Java equivalent. while _condition action_ [continue] [break] end
60 Using parameters The following script will pad a file with zeros. #!/usr/bin/sh i= wc -c < $1 ; while test $i -lt $2 do echo -n "0" >> $1; i= wc -c < $1 ; done
61 Capturing Complex Output Some commands, such as date, have output that require an extra bit of parsing to use. Sun Aug 13 11:42:38 EDT 2006 You can use the set command to capture and parse the output. set date The output will be stored in $n ($1, $2, $3, etc). Note that using set will erase any data you might already have in $n.
62 Example of set The following script executes the date command and outputs the parsed result. #!/usr/bin/sh set date echo "Time: $4 $5" echo "Day: $1" echo "Date: $3 $2 $6" The output would be as follows: Time: 12:45:54 EDT Day: Sun Date: 13 Aug 2006
63 Examples
64 While 64
65 Case 65
66 Wrap Feature 66
67 Functions 67
68 CSH Example 68
69 At Home
70 Try These Regular Expressions Practice writing regular expressions You can use grep to help you do his 70
Grep and Shell Programming
Grep and Shell Programming Comp-206 : Introduction to Software Systems Lecture 7 Alexandre Denault Computer Science McGill University Fall 2006 Teacher's Assistants Michael Hawker Monday, 14h30 to 16h30
More informationCSCI 211 UNIX Lab. Shell Programming. Dr. Jiang Li. Jiang Li, Ph.D. Department of Computer Science
CSCI 211 UNIX Lab Shell Programming Dr. Jiang Li Why Shell Scripting Saves a lot of typing A shell script can run many commands at once A shell script can repeatedly run commands Help avoid mistakes Once
More informationShells & Shell Programming (Part B)
Shells & Shell Programming (Part B) Software Tools EECS2031 Winter 2018 Manos Papagelis Thanks to Karen Reid and Alan J Rosenthal for material in these slides CONTROL STATEMENTS 2 Control Statements Conditional
More informationUNIX shell scripting
UNIX shell scripting EECS 2031 Summer 2014 Przemyslaw Pawluk June 17, 2014 What we will discuss today Introduction Control Structures User Input Homework Table of Contents Introduction Control Structures
More informationAssignment clarifications
Assignment clarifications How many errors to print? at most 1 per token. Interpretation of white space in { } treat as a valid extension, involving white space characters. Assignment FAQs have been updated.
More informationCOMP 4/6262: Programming UNIX
COMP 4/6262: Programming UNIX Lecture 12 shells, shell programming: passing arguments, if, debug March 13, 2006 Outline shells shell programming passing arguments (KW Ch.7) exit status if (KW Ch.8) test
More informationIntroduction to UNIX Part II
T H E U N I V E R S I T Y of T E X A S H E A L T H S C I E N C E C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S Introduction to UNIX Part II For students
More informationbash Execution Control COMP2101 Winter 2019
bash Execution Control COMP2101 Winter 2019 Bash Execution Control Scripts commonly can evaluate situations and make simple decisions about actions to take Simple evaluations and actions can be accomplished
More information5/20/2007. Touring Essential Programs
Touring Essential Programs Employing fundamental utilities. Managing input and output. Using special characters in the command-line. Managing user environment. Surveying elements of a functioning system.
More informationShell Programming (bash)
Shell Programming Shell Programming (bash) Commands run from a file in a subshell A great way to automate a repeated sequence of commands. File starts with #!/bin/bash absolute path to the shell program
More informationUseful Unix Commands Cheat Sheet
Useful Unix Commands Cheat Sheet The Chinese University of Hong Kong SIGSC Training (Fall 2016) FILE AND DIRECTORY pwd Return path to current directory. ls List directories and files here. ls dir List
More informationShells and Shell Programming
Shells and Shell Programming 1 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
More information9.2 Linux Essentials Exam Objectives
9.2 Linux Essentials Exam Objectives This chapter will cover the topics for the following Linux Essentials exam objectives: Topic 3: The Power of the Command Line (weight: 10) 3.3: Turning Commands into
More informationUnix Scripts and Job Scheduling. Overview. Running a Shell Script
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 informationCSCI 2132: Software Development. Norbert Zeh. Faculty of Computer Science Dalhousie University. Shell Scripting. Winter 2019
CSCI 2132: Software Development Shell Scripting Norbert Zeh Faculty of Computer Science Dalhousie University Winter 2019 Reading Glass and Ables, Chapter 8: bash Your Shell vs Your File Manager File manager
More informationTable of contents. Our goal. Notes. Notes. Notes. Summer June 29, Our goal is to see how we can use Unix as a tool for developing programs
Summer 2010 Department of Computer Science and Engineering York University Toronto June 29, 2010 1 / 36 Table of contents 1 2 3 4 2 / 36 Our goal Our goal is to see how we can use Unix as a tool for developing
More informationA shell can be used in one of two ways:
Shell Scripting 1 A shell can be used in one of two ways: A command interpreter, used interactively A programming language, to write shell scripts (your own custom commands) 2 If we have a set of commands
More informationAnswers to AWK problems. Shell-Programming. Future: Using loops to automate tasks. Download and Install: Python (Windows only.) R
Today s Class Answers to AWK problems Shell-Programming Using loops to automate tasks Future: Download and Install: Python (Windows only.) R Awk basics From the command line: $ awk '$1>20' filename Command
More informationShells and Shell Programming
Shells and Shell Programming 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
More informationCS 25200: Systems Programming. Lecture 10: Shell Scripting in Bash
CS 25200: Systems Programming Lecture 10: Shell Scripting in Bash Dr. Jef Turkstra 2018 Dr. Jeffrey A. Turkstra 1 Lecture 10 Getting started with Bash Data types Reading and writing Control loops Decision
More informationCommand Interpreters. command-line (e.g. Unix shell) On Unix/Linux, bash has become defacto standard shell.
Command Interpreters A command interpreter is a program that executes other programs. Aim: allow users to execute the commands provided on a computer system. Command interpreters come in two flavours:
More information28-Nov CSCI 2132 Software Development Lecture 33: Shell Scripting. 26 Shell Scripting. Faculty of Computer Science, Dalhousie University
Lecture 33 p.1 Faculty of Computer Science, Dalhousie University CSCI 2132 Software Development Lecture 33: Shell Scripting 28-Nov-2018 Location: Chemistry 125 Time: 12:35 13:25 Instructor: Vla Keselj
More informationEECS 470 Lab 5. Linux Shell Scripting. Friday, 1 st February, 2018
EECS 470 Lab 5 Linux Shell Scripting Department of Electrical Engineering and Computer Science College of Engineering University of Michigan Friday, 1 st February, 2018 (University of Michigan) Lab 5:
More informationUNIX System Programming Lecture 3: BASH Programming
UNIX System Programming Outline Filesystems Redirection Shell Programming Reference BLP: Chapter 2 BFAQ: Bash FAQ BMAN: Bash man page BPRI: Bash Programming Introduction BABS: Advanced Bash Scripting Guide
More informationBourne Shell Reference
> Linux Reviews > Beginners: Learn Linux > Bourne Shell Reference Bourne Shell Reference found at Br. David Carlson, O.S.B. pages, cis.stvincent.edu/carlsond/cs330/unix/bshellref - Converted to txt2tags
More informationLinux Command Line Interface. December 27, 2017
Linux Command Line Interface December 27, 2017 Foreword It is supposed to be a refresher (?!) If you are familiar with UNIX/Linux/MacOS X CLI, this is going to be boring... I will not talk about editors
More information/smlcodes /smlcodes /smlcodes. Shell Scripting TUTORIAL. Small Codes. Programming Simplified. A SmlCodes.Com Small presentation
/smlcodes /smlcodes /smlcodes Shell Scripting TUTORIAL Small Codes Programming Simplified A SmlCodes.Com Small presentation In Association with Idleposts.com For more tutorials & Articles visit SmlCodes.com
More informationShell Scripting. Todd Kelley CST8207 Todd Kelley 1
Shell Scripting Todd Kelley kelleyt@algonquincollege.com CST8207 Todd Kelley 1 If we have a set of commands that we want to run on a regular basis, we could write a script A script acts as a Linux command,
More informationCS Unix Tools & Scripting
Cornell University, Spring 2014 1 February 24, 2014 1 Slides evolved from previous versions by Hussam Abu-Libdeh and David Slater A note on awk for (item in array) The order in which items are returned
More informationC Shell Tutorial. Section 1
C Shell Tutorial Goals: Section 1 Learn how to write a simple shell script and how to run it. Learn how to use local and global variables. About CSH The Barkley Unix C shell was originally written with
More informationexample: name1=jan name2=mike export name1 In this example, name1 is an environmental variable while name2 is a local variable.
Bourne Shell Programming Variables - creating and assigning variables Bourne shell use the set and unset to create and assign values to variables or typing the variable name, an equal sign and the value
More informationShell script. Shell Scripts. A shell script contains a sequence of commands in a text file. Shell is an command language interpreter.
Shell Scripts A shell script contains a sequence of commands in a text file. Shell is an command language interpreter. Shell executes commands read from a file. Shell is a powerful programming available
More informationIntroduction: What is Unix?
Introduction 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
More informationSHELL SCRIPT BASIC. UNIX Programming 2014 Fall by Euiseong Seo
SHELL SCRIPT BASIC UNIX Programming 2014 Fall by Euiseong Seo Shell Script Interactive shell sequentially executes a series of commands Some tasks are repetitive and automatable They are what programs
More informationChapter 9. Shell and Kernel
Chapter 9 Linux Shell 1 Shell and Kernel Shell and desktop enviroment provide user interface 2 1 Shell Shell is a Unix term for the interactive user interface with an operating system A shell usually implies
More informationLecture 8. Introduction to Shell Programming. COP 3353 Introduction to UNIX
Lecture 8 Introduction to Shell Programming COP 3353 Introduction to UNIX 1 What is a shell script? An executable file containing Unix shell commands Programming control constructs (if, then, while, until,
More informationShell programming. Introduction to Operating Systems
Shell programming Introduction to Operating Systems Environment variables Predened variables $* all parameters $# number of parameters $? result of last command $$ process identier $i parameter number
More informationAdvanced Unix Programming Module 03 Raju Alluri spurthi.com
Advanced Unix Programming Module 03 Raju Alluri askraju @ spurthi.com Advanced Unix Programming: Module 3 Shells & Shell Programming Environment Variables Writing Simple Shell Programs (shell scripts)
More informationCisco IOS Shell. Finding Feature Information. Prerequisites for Cisco IOS.sh. Last Updated: December 14, 2012
Cisco IOS Shell Last Updated: December 14, 2012 The Cisco IOS Shell (IOS.sh) feature provides shell scripting capability to the Cisco IOS command-lineinterface (CLI) environment. Cisco IOS.sh enhances
More informationShell Scripting. With Applications to HPC. Edmund Sumbar Copyright 2007 University of Alberta. All rights reserved
AICT High Performance Computing Workshop With Applications to HPC Edmund Sumbar research.support@ualberta.ca Copyright 2007 University of Alberta. All rights reserved High performance computing environment
More informationLinux Shell Scripting. Linux System Administration COMP2018 Summer 2017
Linux Shell Scripting Linux System Administration COMP2018 Summer 2017 What is Scripting? Commands can be given to a computer by entering them into a command interpreter program, commonly called a shell
More informationConditional Control Structures. Dr.T.Logeswari
Conditional Control Structures Dr.T.Logeswari TEST COMMAND test expression Or [ expression ] Syntax Ex: a=5; b=10 test $a eq $b ; echo $? [ $a eq $b] ; echo $? 2 Unix Shell Programming - Forouzan 2 TEST
More informationToday. Review. Unix as an OS case study Intro to Shell Scripting. What is an Operating System? What are its goals? How do we evaluate it?
Today Unix as an OS case study Intro to Shell Scripting Make sure the computer is in Linux If not, restart, holding down ALT key Login! Posted slides contain material not explicitly covered in class 1
More informationSystem Programming. Unix Shells
Content : Unix shells by Dr. A. Habed School of Computer Science University of Windsor adlane@cs.uwindsor.ca http://cs.uwindsor.ca/ adlane/60-256 Content Content 1 Introduction 2 Interactive and non-interactive
More informationSHELL SCRIPT BASIC. UNIX Programming 2015 Fall by Euiseong Seo
SHELL SCRIPT BASIC UNIX Programming 2015 Fall by Euiseong Seo Shell Script! Interactive shell sequentially executes a series of commands! Some tasks are repetitive and automatable! They are what programs
More informationLecture 5. Essential skills for bioinformatics: Unix/Linux
Lecture 5 Essential skills for bioinformatics: Unix/Linux UNIX DATA TOOLS Text processing with awk We have illustrated two ways awk can come in handy: Filtering data using rules that can combine regular
More informationProcesses and Shells
Shell ls pico httpd CPU Kernel Disk NIC Processes Processes are tasks run by you or the OS. Processes can be: shells commands programs daemons scripts Shells Processes operate in the context of a shell.
More informationShell. SSE2034: System Software Experiment 3, Fall 2018, Jinkyu Jeong
Shell Prof. Jinkyu Jeong (Jinkyu@skku.edu) TA -- Minwoo Ahn (minwoo.ahn@csl.skku.edu) TA -- Donghyun Kim (donghyun.kim@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu
More informationBash scripting basics
Bash scripting basics prepared by Anatoliy Antonov for ESSReS community September 2012 1 Outline Definitions Foundations Flow control References and exercises 2 Definitions 3 Definitions Script - [small]
More informationShell Programming. Introduction to Linux. Peter Ruprecht Research CU Boulder
Introduction to Linux Shell Programming Peter Ruprecht peter.ruprecht@colorado.edu www.rc.colorado.edu Downloadable Materials Slides and examples available at https://github.com/researchcomputing/ Final_Tutorials/
More informationПрограмиранев UNIX среда
Програмиранев UNIX среда Използванена команден шел и създаванена скриптове: tcsh, bash, awk, python Shell programming As well as using the shell to run commands you can use its built-in programming language
More informationIntroduction to Shell Scripting
Introduction to Shell Scripting Evan Bollig and Geoffrey Womeldorff Presenter Yusong Liu 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 informationBasic Shell Scripting
Basic Shell Scripting Wei Feinstein HPC User Services LSU HPC & LON sys-help@loni.org February 2018 Outline Introduction to Linux Shell Shell Scripting Basics Variables Quotations Beyond Basic Shell Scripting
More informationThe UNIX Shells. Computer Center, CS, NCTU. How shell works. Unix shells. Fetch command Analyze Execute
Shells The UNIX Shells How shell works Fetch command Analyze Execute Unix shells Shell Originator System Name Prompt Bourne Shell S. R. Bourne /bin/sh $ Csh Bill Joy /bin/csh % Tcsh Ken Greer /bin/tcsh
More informationScripting. Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers
Scripting Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers Adapted from Practical Unix and Programming Hunter College Copyright 2006 2009 Stewart Weiss What a shell
More informationEssentials for Scientific Computing: Bash Shell Scripting Day 3
Essentials for Scientific Computing: Bash Shell Scripting Day 3 Ershaad Ahamed TUE-CMS, JNCASR May 2012 1 Introduction In the previous sessions, you have been using basic commands in the shell. The bash
More informationBashed One Too Many Times. Features of the Bash Shell St. Louis Unix Users Group Jeff Muse, Jan 14, 2009
Bashed One Too Many Times Features of the Bash Shell St. Louis Unix Users Group Jeff Muse, Jan 14, 2009 What is a Shell? The shell interprets commands and executes them It provides you with an environment
More informationLab 5a Shell Script Lab 4 Using Arithmetic Operators in shell script
Lab 5a Shell Script Lab 4 Using Arithmetic Operators in shell script Objective Upon completion of this lab, the student will be able to use arithmetic operators in Linux shell script. Scenario The student
More informationLezione 8. Shell command language Introduction. Sommario. Bioinformatica. Mauro Ceccanti e Alberto Paoluzzi
Lezione 8 Bioinformatica Mauro Ceccanti e Alberto Paoluzzi Dip. Informatica e Automazione Università Roma Tre Dip. Medicina Clinica Università La Sapienza Sommario Shell command language Introduction A
More informationThe Unix Shell & Shell Scripts
The Unix Shell & Shell Scripts You should do steps 1 to 7 before going to the lab. Use the Linux system you installed in the previous lab. In the lab do step 8, the TA may give you additional exercises
More informationBash scripting Tutorial. Hello World Bash Shell Script. Super User Programming & Scripting 22 March 2013
Bash scripting Tutorial Super User Programming & Scripting 22 March 2013 Hello World Bash Shell Script First you need to find out where is your bash interpreter located. Enter the following into your command
More informationIntroduction to UNIX. Logging in. Basic System Architecture 10/7/10. most systems have graphical login on Linux machines
Introduction to UNIX Logging in Basic system architecture Getting help Intro to shell (tcsh) Basic UNIX File Maintenance Intro to emacs I/O Redirection Shell scripts Logging in most systems have graphical
More informationBasic Linux (Bash) Commands
Basic Linux (Bash) Commands Hint: Run commands in the emacs shell (emacs -nw, then M-x shell) instead of the terminal. It eases searching for and revising commands and navigating and copying-and-pasting
More informationA Big Step. Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers
A Big Step Shell Scripts, I/O Redirection, Ownership and Permission Concepts, and Binary Numbers Copyright 2006 2009 Stewart Weiss What a shell really does Here is the scoop on shells. A shell is a program
More informationEECS2301. Lab 1 Winter 2016
EECS2301 Lab 1 Winter 2016 Lab Objectives In this lab, you will be introduced to the Linux operating system. The basic commands will be presented in this lab. By the end of you alb, you will be asked to
More informationControl Structures. CIS 118 Intro to LINUX
Control Structures CIS 118 Intro to LINUX Basic Control Structures TEST The test utility, has many formats for evaluating expressions. For example, when given three arguments, will return the value true
More informationScripting. More Shell Scripts. Adapted from Practical Unix and Programming Hunter College
Scripting More Shell Scripts Adapted from Practical Unix and Programming Hunter College Copyright 2006 2009 Stewart Weiss Back to shell scripts Now that you've learned a few commands and can edit files,
More informationUsing bash. Administrative Shell Scripting COMP2101 Fall 2017
Using bash Administrative Shell Scripting COMP2101 Fall 2017 Bash Background Bash was written to replace the Bourne shell The Bourne shell (sh) was not a good candidate for rewrite, so bash was a completely
More informationPerl and R Scripting for Biologists
Perl and R Scripting for Biologists Lukas Mueller PLBR 4092 Course overview Linux basics (today) Linux advanced (Aure, next week) Why Linux? Free open source operating system based on UNIX specifications
More informationLezione 8. Shell command language Introduction. Sommario. Bioinformatica. Esercitazione Introduzione al linguaggio di shell
Lezione 8 Bioinformatica Mauro Ceccanti e Alberto Paoluzzi Esercitazione Introduzione al linguaggio di shell Dip. Informatica e Automazione Università Roma Tre Dip. Medicina Clinica Università La Sapienza
More informationMills HPC Tutorial Series. Linux Basics II
Mills HPC Tutorial Series Linux Basics II Objectives Bash Shell Script Basics Script Project This project is based on using the Gnuplot program which reads a command file, a data file and writes an image
More informationIntroduction to Linux. Fundamentals of Computer Science
Introduction to Linux Fundamentals of Computer Science Outline Operating Systems Linux History Linux Architecture Logging in to Linux Command Format Linux Filesystem Directory and File Commands Wildcard
More informationTitle:[ Variables Comparison Operators If Else Statements ]
[Color Codes] Environmental Variables: PATH What is path? PATH=$PATH:/MyFolder/YourStuff?Scripts ENV HOME PWD SHELL PS1 EDITOR Showing default text editor #!/bin/bash a=375 hello=$a #No space permitted
More informationLinux shell programming for Raspberry Pi Users - 2
Linux shell programming for Raspberry Pi Users - 2 Sarwan Singh Assistant Director(S) NIELIT Chandigarh 1 SarwanSingh.com Education is the kindling of a flame, not the filling of a vessel. - Socrates SHELL
More information15-122: Principles of Imperative Computation
15-122: Principles of Imperative Computation Lab 0 Navigating your account in Linux Tom Cortina, Rob Simmons Unlike typical graphical interfaces for operating systems, here you are entering commands directly
More informationBash command shell language interpreter
Principles of Programming Languages Bash command shell language interpreter Advanced seminar topic Louis Sugy & Baptiste Thémine Presentation on December 8th, 2017 Table of contents I. General information
More informationComputer Systems and Architecture
Computer Systems and Architecture Stephen Pauwels UNIX Scripting Academic Year 2018-2019 Outline Basics Conditionals Loops Advanced Exercises Shell Scripts Grouping commands into a single file Reusability
More informationLinux Shell Script. J. K. Mandal
Linux Shell Script J. K. Mandal Professor, Department of Computer Science & Engineering, Faculty of Engineering, Technology & Management University of Kalyani Kalyani, Nadia, West Bengal E-mail: jkmandal@klyuniv.ac.in,
More informationLast Time. on the website
Last Time on the website Lecture 6 Shell Scripting What is a shell? The user interface to the operating system Functionality: Execute other programs Manage files Manage processes Full programming language
More informationProf. Navrati Saxena TA: R. Sachan Bharat Jyoti Ranjan
Prof. Navrati Saxena navrati@ece.skku.ac.kr TA: R. Sachan rochak@skku.edu Bharat Jyoti Ranjan Decision making Loops de-bugging the shell script 2 What is decision.? How to take decision? Knows only 0(zero)
More information12.1 UNDERSTANDING UNIX SHELL PROGRAMMING LANGUAGE: AN INTRODUCTION Writing a Simple Script Executing a Script
12 Shell Programming This chapter concentrates on shell programming. It explains the capabilities of the shell as an interpretive high-level language. It describes shell programming constructs and particulars.
More informationLecture 02 The Shell and Shell Scripting
Lecture 02 The Shell and Shell Scripting In this course, we need to be familiar with the "UNIX shell". We use it, whether bash, csh, tcsh, zsh, or other variants, to start and stop processes, control the
More informationShell Programming Overview
Overview Shell programming is a way of taking several command line instructions that you would use in a Unix command prompt and incorporating them into one program. There are many versions of Unix. Some
More informationIntroduction to Linux Part 2b: basic scripting. Brett Milash and Wim Cardoen CHPC User Services 18 January, 2018
Introduction to Linux Part 2b: basic scripting Brett Milash and Wim Cardoen CHPC User Services 18 January, 2018 Overview Scripting in Linux What is a script? Why scripting? Scripting languages + syntax
More informationLING 408/508: Computational Techniques for Linguists. Lecture 5
LING 408/508: Computational Techniques for Linguists Lecture 5 Last Time Installing Ubuntu 18.04 LTS on top of VirtualBox Your Homework 2: did everyone succeed? Ubuntu VirtualBox Host OS: MacOS or Windows
More informationSystem Programming. Session 6 Shell Scripting
System Programming Session 6 Shell Scripting Programming C Programming vs Shell Programming C vs Shell Programming Compilation/Direct execution C Requires compilation while shell script can be directly
More informationPractical 04: UNIX / LINUX Shell Programming 1
Operating Systems: UNIX / LINUX Shell Programming 1 Page 1 Practical 04: UNIX / LINUX Shell Programming 1 Name: Roll no: Date: Section: Practical Objectives 1. To study about the Unix Shell Programming
More informationShell Script Example. Here is a hello world shell script: $ ls -l -rwxr-xr-x 1 horner 48 Feb 19 11:50 hello* $ cat hello #!/bin/sh
Shell Programming Shells A shell can be used in one of two ways: A command interpreter, used interactively A programming language, to write shell scripts (your own custom commands) Shell Scripts A shell
More informationUnix Shell Environments. February 23rd, 2004 Class Meeting 6
Unix Shell Environments February 23rd, 2004 Class Meeting 6 Shell Characteristics Command-line interface between the user and the system Automatically starts when you log in, waits for user to type in
More informationUNIX Essentials Featuring Solaris 10 Op System
A Active Window... 7:11 Application Development Tools... 7:7 Application Manager... 7:4 Architectures - Supported - UNIX... 1:13 Arithmetic Expansion... 9:10 B Background Processing... 3:14 Background
More informationMore Raspian. An editor Configuration files Shell scripts Shell variables System admin
More Raspian An editor Configuration files Shell scripts Shell variables System admin Nano, a simple editor Nano does not require the mouse. You must use your keyboard to move around the file and make
More informationUNIX Shell Scripts. What Is a Shell? The Bourne Shell. Executable Files. Executable Files: Example. Executable Files (cont.) CSE 2031 Fall 2012
What Is a Shell? UNIX Shell Scripts CSE 2031 Fall 2012 A program that interprets your requests to run other programs Most common Unix shells: Bourne shell (sh) C shell (csh - tcsh) Korn shell (ksh) Bourne-again
More informationINTRODUCTION TO UNIX
WEEK 1.3 INTRODUCTION TO UNIX Unix is a key operating system in the history of communications. Here, you will gain experience in using Unix both in command line and with a graphical interface. Most importantly,
More informationCS1101: Lecture 9 The Shell as a Programming Language
CS1101: Lecture 9 The Shell as a Programming Language Dr. Barry O Sullivan b.osullivan@cs.ucc.ie Counting Arguments Using read Lecture Outline Arithmetic using expr Course Homepage http://www.cs.ucc.ie/
More informationsottotitolo A.A. 2016/17 Federico Reghenzani, Alessandro Barenghi
Titolo presentazione Piattaforme Software per la Rete sottotitolo BASH Scripting Milano, XX mese 20XX A.A. 2016/17, Alessandro Barenghi Outline 1) Introduction to BASH 2) Helper commands 3) Control Flow
More informationCST Algonquin College 2
The Shell Kernel (briefly) Shell What happens when you hit [ENTER]? Output redirection and pipes Noclobber (not a typo) Shell prompts Aliases Filespecs History Displaying file contents CST8207 - Algonquin
More informationUnix Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : December, More documents are freely available at PythonDSP
Unix Guide Meher Krishna Patel Created on : Octorber, 2017 Last updated : December, 2017 More documents are freely available at PythonDSP Table of contents Table of contents i 1 Unix commands 1 1.1 Unix
More informationCOMS 6100 Class Notes 3
COMS 6100 Class Notes 3 Daniel Solus September 1, 2016 1 General Remarks The class was split into two main sections. We finished our introduction to Linux commands by reviewing Linux commands I and II
More informationCSC 2500: Unix Lab Fall 2016
CSC 2500: Unix Lab Fall 2016 Control Statements in Shell Scripts: Decision Mohammad Ashiqur Rahman Department of Computer Science College of Engineering Tennessee Tech University Agenda User Input Special
More informationLecture # 2 Introduction to UNIX (Part 2)
CS390 UNIX Programming Spring 2009 Page 1 Lecture # 2 Introduction to UNIX (Part 2) UNIX is case sensitive (lowercase, lowercase, lowercase) Logging in (Terminal Method) Two basic techniques: 1. Network
More information