Perl Tutorial. Diana Inkpen. School of Information Technology and Engineering University of Ottawa. CSI 5180, Fall 2004
|
|
- Cornelia Rice
- 6 years ago
- Views:
Transcription
1 Perl Tutorial Diana Inkpen School of Information Technology and Engineering University of Ottawa CSI 5180, Fall What is Perl Practical Extraction and Report Language. Created, implemented, maintained by Larry Wall. Interpreted language that is optimized for string manipulation, I/O, and system tasks. Syntax elements from the C, Bourne shell, csh, awk, sed, grep. (Unlike other interpreted languages, Perl compiles and optimizes the code before running.) 2
2 Some of Perl s many strengths Speed of development edit a text file and just run it. No separate compiler needed. Short pieces of code that do a lot (magic operators). Power Perl s regular expressions, easy file handling and data manipulation. Flexibility freedom of expression. Portability Perl compilers for all platforms. Extensibility modules available on CPAN. Price free. Extra: it is fun!! 3 The Hello, world program! #"$% % '&( )*+-, How to run the program written in the file myfile : chmod u+x myfile or myfile perl -w myfile 4
3 Basic syntax Perl is free form whitespace doesn t matter (but better use indentation for readability). All Perl statements end in a ; (semicolon), like C. Comments begin with # (pound sign) and last until the end of line (no multi-line comments). Variable names start with $ (or, %). 5 More programs (!! ' -, - #, -,! " )*+-, (!! '! *, -, -, - #, -,! " )*+-, 6
4 Variables Don t need to declare variables, but better to declare them (, -#, ). Cannot declare type (clear from context). Scalars Numbers Strings Arrays of scalars Hashes (associative arrays of scalars) 7 Strings Single-quoted strings.! ) ) )! & Double-quoted strings.! )!! & Interpolation takes places only in double-quoted strings. 8
5 Scalar variables Hold a single scalar value (number, string, or reference). Begin with $, followed by letter, then possibly other letters, digits, or underscores.! *, &'% -, *! *, -, 9 Numerical operators! *,,,, *- ' *, #, " - & -! #,! " ", # " " " 10
6 Comparison operators (1) - -!! * *! *! '% * '% *! %! 11 Comparison operators (2)! *,,,, '%, '%, '%! -, & -, &, '% &, '%! -, '% 12
7 String operators Concatenation ( Hi. there ;)! *, ' #,! ', # #! * ' -, - - % )+, * &! *!' % )+-, 13 Variable interpolation -,, * & )*+-, * % * & * & )*, * &! ) Interpolation only in double-quoted strings 14
8 Print: A list operator Accepts a list of things to print, separated by commas. & - '!& * -"! " ' *!!& " " * & ' )+, & - '!& * % ' % %*- & % & - )*+-, %! -, #, % )! )*+-, % )! " " )+, ) )+, 15 Arrays An array is an ordered list of scalar variables. - +, - -" + " -" + "!,!-* ) -!!)*+-, %*!- - ) -, &!- - ) -,!! "! - "! *!) -,, )*+-, - --,! * -* - ) -, 16
9 Functions for arrays! *, #" (", " ", ", " " " *, " " ", " " #", #" " * % -, - ", "$ % "$ " --",!)*+-, % * 17 Hashes,,, " &,,, A hash is an associative array. A hash is a list of keys that have values. * * -"! *+ & % & *-, &! & & &! & % &! & % 18
10 Control structures IF (1), - *, - *!& &- - *,! -, 19 IF (2). Boolean values,, -, -, * -, -!! Boolean values False is 0,, 0, or undef. True is anything else. 20
11 Control structures WHILE!!, * %!! #,!!,, last; and next; 21 Control structures FOR!,,, *!! &!!,, * ), -!,, * )*+, 22
12 Control structures FOREACH!,,! )+-,! )+, 23 Basic I/O,!& -! %!! %&! * &!!,,!!- )+,,!&,!& %! ' %&! & ) -" " ", 24
13 Defaults is the name of the default scalar variable! % )+,!! #,!!, 25 Regular expressions (R.E.) (1) A regular expression describes a set of possible strings. - * -,!! * #,,!! * #, 26
14 R.E. (2) Single-character matching *, " "!, * & ) &, * &, * '!, " *! * * ) " ) & & " * % )* % &! " %! )! "!! ) )%)*) ) ) ) ' * - 27 R.E. (3) Grouping patterns Sequence ( *! ) Alternation (!, ) Multiplication *! +, " " *%! +, " "! -!! -!! *! -' & *! -!!! -'- " % * *& 28
15 Pattern-matching operators (4) not match operator *,! - -'- ' * - -- * & - ) ' * %! & ) " - ) %* &!!! * & -* *-! *! interpolation!, 29 R. E. (5) Anchoring patterns &) ' & ' &! -'! %!& ' ' *&!& ) ' %! & & ) ' * %! & & ) ' ) ' *& - % '& - - % '& -'- 30
16 R. E. (6) Returning matches &, " * *&, * &,,, ",, ', ' &, 31 Substitutions ' % - *' % - ' %! *' *-! * -!& * *+,, + ' +-,!!,! +-,! )*, *! *! * ' -, 32
17 Translations % - % *- * % & -,, *!,, ** #, **, #" *!, 33 Subroutines (1) '! ) -, & & ' %,!, ', & &, ",, ', 34
18 Subroutines (2),! ',! & & % ", & & " #" ", & & #, ', & & ' % ', 35 Filehandles STDIN, STDOUT, STDERR, ** " & & & * & &, ** " %! & * ' *!! -,!!,,,!!, 36
19 6 Formats (1)! " " #%$&&"&&&&&&&&&"&&&&&&&&&&&&& # '( )* #%$&&"&&&&&&&&&"&&&&&&&&&&&&& # ' +"+ #%$&&"&&&&&&&&&"&&&&!$&$&&&&,# ' -.0/1' + 2/3'4 5 " " 7( ( 8 :9<;; =>?7@ Ä BB!+C* EDF>=:9G H "( I9KJL9NM=>>O P P B +F :9NQ=Q=RA -FS! ( :9G -FSL9KJ"T:9NMMMU- 37 Formats (2) (5 WVK " "0/FXFY"B(U) B +XZ[#"#\ EX^] ( )_- `B(U B +R':abX*c (5 WVK0/dXF exzf##\ gx^] (?(5 _!':abx*c h B" ivj&ÿ Z k`- 5Wc!B Vj'( * 2/3' +"+l/3' -.0/3' + m/3'4 ^5eZn!+5)B!o09Komc h pvn "*Zqcr HS R R ( s - B + 2VK "*Zect- B + 2VN*Zec "" #u7f 8 # #\;; =">v7@ ABBv+C _D(>= # #w H ( J(?M=>>O,# "" 38
20 6 Z 6 Z Context considerations 5 ++ ( r] ( HB(C) + V V ' +- B +- B RHB(C n B r _' +-B $. B + vb +! HB(C + ^ _ )Z B _?$. $. +- B RBd C U! ` B" F* +`?$. + * v +R'. ED"Z '. N' r+- B v'r B F*? `$. '. +- B!+CU+- 5? vb +` B" F* r?$. XF' +- BeX X$.eX +- B0V 5 +- B0V 5 `+ ^ 8_- F 8`?- (!?' +"- B `+ ^ 8_- F 8` v B" * + `$.0/ + 5) U.r+5)- + ) + B + B +(? `B ) 8 S.+R( H B(C + ) + '() +)k's +- B B" F* v ) + h! S.!!' 39 Command line arguments, &,,,,,,! *! * '! % * * '% *!!! -"!! ) -, *!& &! *!& & " * " * 40
21 Optimization for speed Perl procedure calls are expensive, especially if you re passing in arrays or hashes. So feel free to inline subroutines called within a tight loop. It s not as nice a programming style, but the performance gain is worth it. You should put comments in the code, however, indicating where you re doing this and that speed gain is the reason for it. Use hashes instead of arrays when possible. 41 Perl hints to be used in A1 to A3 Write readable code! Perl will let you write cryptic code, but Perl code does not have to be cryptic. Use the -w flag. It will give you many warnings that almost always point out errors in your code. (but slower) Use use strict; at the beginning of your code. It forces you to declare your variables and gives you error messages which, once fixed, make your code easier to read. Read Ch.8 of Programming Perl, Common Goofs for Novices, Efficiency and Programming with Style. 42
22 References Schwartz, Randal L. and Christiansen, Tom, Learning Perl, second edition, O Reilly, Wall, Larry; Christiansen, Tom; and Schwartz, Randal L., Programming Perl, third edition, O Reilly, Perl Tutorial Introduction to Perl things/instruction/perl/perlcourse.html Picking Up Perl, a Freely Redistributable Perl Tutorial Book 43
CSCI 4152/6509 Natural Language Processing. Perl Tutorial CSCI 4152/6509. CSCI 4152/6509, Perl Tutorial 1
CSCI 4152/6509 Natural Language Processing Perl Tutorial CSCI 4152/6509 Vlado Kešelj CSCI 4152/6509, Perl Tutorial 1 created in 1987 by Larry Wall About Perl interpreted language, with just-in-time semi-compilation
More informationPerl. Perl. Perl. Which Perl
Perl Perl Perl = Practical Extraction and Report Language Developed by Larry Wall (late 80 s) as a replacement for awk. Has grown to become a replacement for awk, sed, grep, other filters, shell scripts,
More informationPerl. Many of these conflict with design principles of languages for teaching.
Perl Perl = Practical Extraction and Report Language Developed by Larry Wall (late 80 s) as a replacement for awk. Has grown to become a replacement for awk, sed, grep, other filters, shell scripts, C
More informationPathologically Eclectic Rubbish Lister
Pathologically Eclectic Rubbish Lister 1 Perl Design Philosophy Author: Reuben Francis Cornel perl is an acronym for Practical Extraction and Report Language. But I guess the title is a rough translation
More informationCSCI 4152/6509 Natural Language Processing Lecture 6: Regular Expressions; Text Processing in Perl
Lecture 6 p.1 Faculty of Computer Science, Dalhousie University CSCI 4152/6509 Natural Language Processing Lecture 6: Regular Expressions; Text Processing in Perl 18-Jan-2019 Location: LSC Psychology P5260
More information1. Introduction. 2. Scalar Data
1. Introduction What Does Perl Stand For? Why Did Larry Create Perl? Why Didn t Larry Just Use Some Other Language? Is Perl Easy or Hard? How Did Perl Get to Be So Popular? What s Happening with Perl Now?
More informationCOMP284 Scripting Languages Lecture 2: Perl (Part 1) Handouts
COMP284 Scripting Languages Lecture 2: Perl (Part 1) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool
More informationThe e switch allows Perl to execute Perl statements at the command line instead of from a script.
CH02.DOC Page 5 Friday, January 26, 2001 2:35 PM 2 Perl Scripts 2.1 Perl at the Command Line Although most of your work with Perl will be done in scripts, Perl can also be executed at the command line
More informationOutline. Introduction to Perl. Why use scripting languages? What is expressiveness. Why use Java over C
Outline Introduction to Perl Grégory Mounié Scripting Languages Perl 2012-10-11 jeu. Basics Advanced 1 / 30 2 / 30 Why use scripting languages? What is expressiveness Why use Java over C Memory management
More informationPerl and Python ESA 2007/2008. Eelco Schatborn 27 September 2007
Perl and Python ESA 2007/2008 Eelco Schatborn eelco@os3.nl 27 September 2007 ESA: Perl Vandaag: 1. Perl introduction 2. Basic Perl: types, variables, statements,... 3. Object Oriented Perl 4. Documentation
More informationIntroduc)on to Unix and Perl programming
CENTER FOR BIOLOGICAL SEQUENCE ANALYSIS Department of Systems Biology Technical University of Denmark Introduc)on to Unix and Perl programming EDITA KAROSIENE PhD student edita@cbs.dtu.dk www.cbs.dtu.dk
More informationIntroductory Perl. What is Perl?
Introductory Perl Boston University Office of Information Technology Course Number: 4080 Course Coordinator: Timothy Kohl Last Modified: 08/29/05 What is Perl? Perl stands for Practical Extraction and
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 informationBeginning Perl. Mark Senn. September 11, 2007
GoBack Beginning Perl Mark Senn September 11, 2007 Overview Perl is a popular programming language used to write systen software, text processing tools, World Wide Web CGI programs, etc. It was written
More informationIntroduc)on to Unix and Perl programming
CENTER FOR BIOLOGICAL SEQUENCE ANALYSIS Department of Systems Biology Technical University of Denmark Introduc)on to Unix and Perl programming EDITA KAROSIENE PhD student edita@cbs.dtu.dk www.cbs.dtu.dk
More informationCSCI-GA Scripting Languages
CSCI-GA.3033.003 Scripting Languages 9/11/2013 Textual data processing (Perl) 1 Announcements If you did not get a PIN to enroll, contact Stephanie Meik 2 Outline Perl Basics (continued) Regular Expressions
More informationCOMS 3101 Programming Languages: Perl. Lecture 1
COMS 3101 Programming Languages: Perl Lecture 1 Fall 2013 Instructor: Ilia Vovsha http://www.cs.columbia.edu/~vovsha/coms3101/perl What is Perl? Perl is a high level language initially developed as a scripting
More informationCOMS 3101 Programming Languages: Perl. Lecture 2
COMS 3101 Programming Languages: Perl Lecture 2 Fall 2013 Instructor: Ilia Vovsha http://www.cs.columbia.edu/~vovsha/coms3101/perl Lecture Outline Control Flow (continued) Input / Output Subroutines Concepts:
More informationThe current topic: Python. Announcements. Python. Python
The current topic: Python Announcements! Introduction! reasons for studying languages! language classifications! simple syntax specification Object-oriented programming: Python Types and values Syntax
More informationOutline. CS3157: Advanced Programming. Feedback from last class. Last plug
Outline CS3157: Advanced Programming Lecture #2 Jan 23 Shlomo Hershkop shlomo@cs.columbia.edu Feedback Introduction to Perl review and continued Intro to Regular expressions Reading Programming Perl pg
More informationThe Beauty of Perl. 1 Introduction. 2 The Perl Interpreter
The Beauty of Perl Jordan Marshall Matthew Ghigliotti 1 Introduction Perl is an amazing programming language. Perl is amazing because it is both simple and expressive. You can open a file and search through
More informationPerl. Interview Questions and Answers
and Answers Prepared by Abhisek Vyas Document Version 1.0 Team, www.sybaseblog.com 1 of 13 Q. How do you separate executable statements in perl? semi-colons separate executable statements Example: my(
More informationIntroduction to Perl. c Sanjiv K. Bhatia. Department of Mathematics & Computer Science University of Missouri St. Louis St.
Introduction to Perl c Sanjiv K. Bhatia Department of Mathematics & Computer Science University of Missouri St. Louis St. Louis, MO 63121 Contents 1 Introduction 1 2 Getting started 1 3 Writing Perl scripts
More informationCSCI-GA Scripting Languages
CSCI-GA.3033.003 Scripting Languages 6/7/2012 Textual data processing (Perl) CS 5142 Cornell University 9/7/13 1 Administrative Announcements Homework 2 due Friday at 6pm. First prelim 9/27, Review on
More informationIntroduction to Perl. Perl Background. Sept 24, 2007 Class Meeting 6
Introduction to Perl Sept 24, 2007 Class Meeting 6 * Notes on Perl by Lenwood Heath, Virginia Tech 2004 Perl Background Practical Extraction and Report Language (Perl) Created by Larry Wall, mid-1980's
More informationScripting Languages. Diana Trandabăț
Scripting Languages Diana Trandabăț Master in Computational Linguistics - 1 st year 2017-2018 Today s lecture What is Perl? How to install Perl? How to write Perl progams? How to run a Perl program? perl
More informationRegular expressions and case insensitivity
Regular expressions and case insensitivity As previously mentioned, you can make matching case insensitive with the i flag: /\b[uu][nn][ii][xx]\b/; /\bunix\b/i; # explicitly giving case folding # using
More informationCMSC 331 Final Exam Fall 2013
CMSC 331 Final Exam Fall 2013 Name: UMBC username: You have two hours to complete this closed book exam. Use the backs of these pages if you need more room for your answers. Describe any assumptions you
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 informationUNIX II:grep, awk, sed. October 30, 2017
UNIX II:grep, awk, sed October 30, 2017 File searching and manipulation In many cases, you might have a file in which you need to find specific entries (want to find each case of NaN in your datafile for
More informationOverview. - General Data Types - Categories of Words. - Define Before Use. - The Three S s. - End of Statement - My First Program
Overview - General Data Types - Categories of Words - The Three S s - Define Before Use - End of Statement - My First Program a description of data, defining a set of valid values and operations List of
More informationWeb Scripting using PHP
Web Scripting using PHP Server side scripting No Scripting example - how it works... User on a machine somewhere Server machine So what is a Server Side Scripting Language? Programming language code embedded
More informationCS 177 Recitation. Week 1 Intro to Java
CS 177 Recitation Week 1 Intro to Java Questions? Computers Computers can do really complex stuff. How? By manipulating data according to lists of instructions. Fundamentally, this is all that a computer
More informationClassnote for COMS6100
Classnote for COMS6100 Yiting Wang 3 November, 2016 Today we learn about subroutines, references, anonymous and file I/O in Perl. 1 Subroutines in Perl First of all, we review the subroutines that we had
More informationThese are notes for the third lecture; if statements and loops.
These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern
More informationScripting Languages Perl Basics. Course: Hebrew University
Scripting Languages Perl Basics Course: 67557 Hebrew University אליוט יפה Jaffe Lecturer: Elliot FMTEYEWTK Far More Than Everything You've Ever Wanted to Know Perl Pathologically Eclectic Rubbish Lister
More informationProgramming Perl By Randal L. Schwartz, Tom Christiansen
Programming Perl By Randal L. Schwartz, Tom Christiansen Perl is a powerful programming language that has grown In my last post, Tim O'Reilly, Programming Perl, and EconTalk, I didn't mention the other
More informationPython for Non-programmers
Python for Non-programmers A Gentle Introduction 1 Yann Tambouret Scientific Computing and Visualization Information Services & Technology Boston University 111 Cummington St. yannpaul@bu.edu Winter 2013
More informationA Crash Course in Perl5
z e e g e e s o f t w a r e A Crash Course in Perl5 Part 1: Basics Zeegee Software Inc. http://www.zeegee.com/ Terms and Conditions These slides are Copyright 2008 by Zeegee Software Inc. They have been
More informationPerl Library Functions
Perl Library Functions Perl has literally hundreds of functions for all kinds of purposes: file manipulation, database access, network programming, etc. etc. It has an especially rich collection of functions
More informationIntroduction to CFX. Appendix A. Scripting and Automation A-1. ANSYS, Inc. Proprietary 2009 ANSYS, Inc. All rights reserved.
Appendix A Scripting and Automation Introduction to CFX A-1 Overview Introduction CFX User Environment (CUE) architecture State and Session Files Introduction to Perl CCL and Perl Power Syntax Perl subroutines
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 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 informationRegular expressions and case insensitivity
Regular expressions and case insensitivity As previously mentioned, you can make matching case insensitive with the i flag: /\b[uu][nn][ii][xx]\b/; # explicitly giving case folding /\bunix\b/i; # using
More informationProgramming Concepts. Perl. Adapted from Practical Unix and Programming Hunter College
Programming Concepts Perl Adapted from Practical Unix and Programming Hunter College Copyright 2006 2009 Stewart Weiss About Perl Perl was written by Larry Wall, and stands for either Practical Extraction
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 informationSTATS Data Analysis using Python. Lecture 15: Advanced Command Line
STATS 700-002 Data Analysis using Python Lecture 15: Advanced Command Line Why UNIX/Linux? As a data scientist, you will spend most of your time dealing with data Data sets never arrive ready to analyze
More informationLearning Perl 6. brian d foy, Version 0.6, Nordic Perl Workshop 2007
Learning Perl 6 brian d foy, Version 0.6, Nordic Perl Workshop 2007 for the purposes of this tutorial Perl 5 never existed Don t really do this $ ln -s /usr/local/bin/pugs /usr/bin/perl
More information(Refer Slide Time: 01:12)
Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #22 PERL Part II We continue with our discussion on the Perl
More informationWeb Scripting using PHP
Web Scripting using PHP Server side scripting So what is a Server Side Scripting Language? Programming language code embedded into a web page PERL PHP PYTHON ASP Different ways of scripting the Web Programming
More informationShell Scripting. Jeremy Sanders. October 2011
Shell Scripting Jeremy Sanders October 2011 1 Introduction If you use your computer for repetitive tasks you will find scripting invaluable (one of the advantages of a command-line interface). Basically
More informationCS 230 Programming Languages
CS 230 Programming Languages 09 / 16 / 2013 Instructor: Michael Eckmann Today s Topics Questions/comments? Continue Syntax & Semantics Mini-pascal Attribute Grammars More Perl A more complex grammar Let's
More informationCS 105 Perl: Completing the Toolbox
CS 105 Perl: Completing the Toolbox March 4, 2013 Agenda autodie with open Inspecting scalars perl -c Unary coercion Topicalization ~~ Unique list idiom Schwartzian Transform Using // for defaults and
More informationWelcome to Research Computing Services training week! November 14-17, 2011
Welcome to Research Computing Services training week! November 14-17, 2011 Monday intro to Perl, Python and R Tuesday learn to use Titan Wednesday GPU, MPI and profiling Thursday about RCS and services
More informationCSCI-GA Scripting Languages
CSCI-GA.3033.003 Scripting Languages 9/20/2013 Context and Modules (Perl) Scripting as Glue 1 Outline Programming in the large Scripting as glue 2 Modules Module = file p/q.pm that starts with declaration
More informationS206E Lecture 19, 5/24/2016, Python an overview
S206E057 Spring 2016 Copyright 2016, Chiu-Shui Chan. All Rights Reserved. Global and local variables: differences between the two Global variable is usually declared at the start of the program, their
More informationProgramming introduction part I:
Programming introduction part I: Perl, Unix/Linux and using the BlueHive cluster Bio472- Spring 2014 Amanda Larracuente Text editor Syntax coloring Recognize several languages Line numbers Free! Mac/Windows
More informationMATLAB provides several built-in statements that allow for conditional behavior if/elseif/else switch menu
Chapter 3 What we have done so far: Scripts/Functions have executed all commands in order, not matter what What we often need: A piece of code that executes a series of commands, if and only if some condition
More informationProgramming Perls* Objective: To introduce students to the perl language.
Programming Perls* Objective: To introduce students to the perl language. Perl is a language for getting your job done. Making Easy Things Easy & Hard Things Possible Perl is a language for easily manipulating
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 informationPERL AND CGI SYLLABUS AND PROJECT OVERVIEW. Copyright 1998 The President and Fellows of Harvard College All rights reserved
PERL AND CGI SYLLABUS AND PROJECT OVERVIEW Copyright 1998 The President and Fellows of Harvard College All rights reserved The Pathologically Eclectic Rubbish Lister Languages were first invented by humans,
More informationmy $full_path = can_run('wget') or warn 'wget is not installed!';
NAME IPC::Cmd - finding and running system commands made easy SYNOPSIS use IPC::Cmd qw[can_run run]; my $full_path = can_run('wget') or warn 'wget is not installed!'; ### commands can be arrayrefs or strings
More informationmy $full_path = can_run('wget') or warn 'wget is not installed!';
NAME IPC::Cmd - finding and running system commands made easy SYNOPSIS use IPC::Cmd qw[can_run run run_forked]; my $full_path = can_run('wget') or warn 'wget is not installed!'; ### commands can be arrayrefs
More informationCSC105, Introduction to Computer Science I. Introduction. Perl Directions NOTE : It is also a good idea to
CSC105, Introduction to Computer Science Lab03: Introducing Perl I. Introduction. [NOTE: This material assumes that you have reviewed Chapters 1, First Steps in Perl and 2, Working With Simple Values in
More informationCOMP284 Scripting Languages Lecture 6: Perl (Part 5) Handouts
COMP284 Scripting Languages Lecture 6: Perl (Part 5) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool
More informationAssignment 1: Communicating with Programs
Assignment 1: Communicating with Programs EC602 Design by Software Fall 2018 Contents 1 Introduction 2 1.1 Assignment Goals........................... 2 1.2 Group Size.............................. 2 1.3
More informationIndian Institute of Technology Kharagpur. PERL Part II. Prof. Indranil Sen Gupta Dept. of Computer Science & Engg. I.I.T.
Indian Institute of Technology Kharagpur PERL Part II Prof. Indranil Sen Gupta Dept. of Computer Science & Engg. I.I.T. Kharagpur, INDIA Lecture 22: PERL Part II On completion, the student will be able
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 informationsed Stream Editor Checks for address match, one line at a time, and performs instruction if address matched
Week11 sed & awk sed Stream Editor Checks for address match, one line at a time, and performs instruction if address matched Prints all lines to standard output by default (suppressed by -n option) Syntax:
More informationPERL Scripting - Course Contents
PERL Scripting - Course Contents Day - 1 Introduction to PERL Comments Reading from Standard Input Writing to Standard Output Scalar Variables Numbers and Strings Use of Single Quotes and Double Quotes
More informationCSE 490c Autumn 2004 Midterm 1
CSE 490c Autumn 2004 Midterm 1 Please do not read beyond this cover page until told to start. Name: There are 10 questions. Questions are worth varying numbers of points. The number of points roughly reflects
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 informationIntro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming
Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals
More informationgcc hello.c a.out Hello, world gcc -o hello hello.c hello Hello, world
alun@debian:~$ gcc hello.c alun@debian:~$ a.out Hello, world alun@debian:~$ gcc -o hello hello.c alun@debian:~$ hello Hello, world alun@debian:~$ 1 A Quick guide to C for Networks and Operating Systems
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 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 informationperl -MO=Deparse[,-d][,-fFILE][,-p][,-q][,-l] [,-sletters][,-xlevel] prog.pl
NAME SYNOPSIS DESCRIPTION OPTIONS B::Deparse - Perl compiler backend to produce perl code perl -MO=Deparse[,-d][,-fFILE][,-p][,-q][,-l] [,-sletters][,-xlevel] prog.pl B::Deparse is a backend module for
More informationA control expression must evaluate to a value that can be interpreted as true or false.
Control Statements Control Expressions A control expression must evaluate to a value that can be interpreted as true or false. How a control statement behaves depends on the value of its control expression.
More informationUNIX Shell Programming
$!... 5:13 $$ and $!... 5:13.profile File... 7:4 /etc/bashrc... 10:13 /etc/profile... 10:12 /etc/profile File... 7:5 ~/.bash_login... 10:15 ~/.bash_logout... 10:18 ~/.bash_profile... 10:14 ~/.bashrc...
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 informationWhat is PERL?
Perl For Beginners What is PERL? Practical Extraction Reporting Language General-purpose programming language Creation of Larry Wall 1987 Maintained by a community of developers Free/Open Source www.cpan.org
More informationPHP Syntax. PHP is a great example of a commonly-used modern programming language.
PHP is a great example of a commonly-used modern programming language. C was first released in 1972, PHP in 1995. PHP is an excellent language choice for software that requires an easy way to do things
More informationPerl Basics 7 Mar 2009 #fedora-classroom. Doran Barton
Perl Basics 7 Mar 2009 #fedora-classroom Doran Barton 1 LEARNING RESOURCES Books Learning Perl (Llama book) Programming Perl (Camel book) A whole bunch of other O'Reilly books Perl
More informationCOMS 3101 Programming Languages: Perl. Lecture 5
COMS 3101 Programming Languages: Perl Lecture 5 Fall 2013 Instructor: Ilia Vovsha http://www.cs.columbia.edu/~vovsha/coms3101/perl Lecture Outline Packages & Modules Concepts: Subroutine references Symbolic
More informationCS 220: Introduction to Parallel Computing. Beginning C. Lecture 2
CS 220: Introduction to Parallel Computing Beginning C Lecture 2 Today s Schedule More C Background Differences: C vs Java/Python The C Compiler HW0 8/25/17 CS 220: Parallel Computing 2 Today s Schedule
More informationPHP and MySQL for Dynamic Web Sites. Intro Ed Crowley
PHP and MySQL for Dynamic Web Sites Intro Ed Crowley Class Preparation If you haven t already, download the sample scripts from: http://www.larryullman.com/books/phpand-mysql-for-dynamic-web-sitesvisual-quickpro-guide-4thedition/#downloads
More informationGeneral Coding Standards
Rick Cox rick@rescomp.berkeley.edu A description of general standards for all code generated by ResComp employees (including non-programmers), intended to make maintaince, reuse, upgrades, and trainig
More informationLecture 10: Potpourri: Enum / struct / union Advanced Unix #include function pointers
....... \ \ \ / / / / \ \ \ \ / \ / \ \ \ V /,----' / ^ \ \.--..--. / ^ \ `--- ----` / ^ \. ` > < / /_\ \. ` / /_\ \ / /_\ \ `--' \ /. \ `----. / \ \ '--' '--' / \ / \ \ / \ / / \ \ (_ ) \ (_ ) / / \ \
More informationObjectives. Chapter 2: Basic Elements of C++ Introduction. Objectives (cont d.) A C++ Program (cont d.) A C++ Program
Objectives Chapter 2: Basic Elements of C++ In this chapter, you will: Become familiar with functions, special symbols, and identifiers in C++ Explore simple data types Discover how a program evaluates
More informationOutline. Computer programming. Debugging. What is it. Debugging. Hints. Debugging
Outline Computer programming Debugging Hints Gathering evidence Common C errors "Education is a progressive discovery of our own ignorance." Will Durant T.U. Cluj-Napoca - Computer Programming - lecture
More informationChapter 2: Basic Elements of C++
Chapter 2: Basic Elements of C++ Objectives In this chapter, you will: Become familiar with functions, special symbols, and identifiers in C++ Explore simple data types Discover how a program evaluates
More informationTcl/Tk for XSPECT a Michael Flynn
Tcl/Tk for XSPECT a Michael Flynn Tcl: Tcl (i.e. Tool Command Language) is an open source scripting language similar to other modern script languages such as Perl or Python. It is substantially more powerful
More informationT-( )-MALV, Natural Language Processing The programming language Perl
T-(538 725)-MALV, Natural Language Processing The programming language Perl Hrafn Loftsson 1 Hannes Högni Vilhjálmsson 1 1 School of Computer Science, Reykjavik University September 2010 Outline 1 Perl
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 information# or you can even do this if your shell supports your native encoding
NAME SYNOPSIS encoding - allows you to write your script in non-ascii or non-utf8 use encoding "greek"; # Perl like Greek to you? use encoding "euc-jp"; # Jperl! # or you can even do this if your shell
More informationPerl One-Liners by Peteris Krumins
1 Introduction to Perl one-liners are small and awesome Perl programs that fit in a single line of code. They do one thing really well like changing line spacing, numbering lines, performing calculations,
More informationChapter 2: Basic Elements of C++ Objectives. Objectives (cont d.) A C++ Program. Introduction
Chapter 2: Basic Elements of C++ C++ Programming: From Problem Analysis to Program Design, Fifth Edition 1 Objectives In this chapter, you will: Become familiar with functions, special symbols, and identifiers
More informationC++ Data Types. 1 Simple C++ Data Types 2. 3 Numeric Types Integers (whole numbers) Decimal Numbers... 5
C++ Data Types Contents 1 Simple C++ Data Types 2 2 Quick Note About Representations 3 3 Numeric Types 4 3.1 Integers (whole numbers)............................................ 4 3.2 Decimal Numbers.................................................
More informationSome material adapted from Upenn cmpe391 slides and other sources
Some material adapted from Upenn cmpe391 slides and other sources History Installing & Running Python Names & Assignment Sequences types: Lists, Tuples, and Strings Mutability Understanding Reference Semantics
More informationIntroductory Perl. Boston University Information Services & Technology. Course Coordinator: Timothy Kohl. What is Perl?
Introductory Perl Boston University Information Services & Technology Course Coordinator: Timothy Kohl Last Modified: 5/12/15 What is Perl? General purpose scripting language developed by Larry Wall in
More information