Perl-Teaching

From Research Computing Center Wiki
Jump to navigation Jump to search

Category

Programming

Program On

Teaching

Version

5.34.0, 5.34.1, 5.36.0, 5.36.1, 5.38.0, 5.38.2, 5.40.0, 5.40.2

Author / Distributor

Perl

Description

Larry Wall's Practical Extraction and Report Language. More information is at Perl

Running Program

Use the command

ml spider Perl

to see all the Perl versions installed on the cluster. For example:

Version 5.38.2

It is installed in /apps/eb/Perl/5.38.2-GCCcore-13.3.0

To use this version, please load the module with

ml Perl/5.38.2-GCCcore-13.3.0


Here is an example of a shell script, sub.sh, to run on the batch queue:

#!/bin/bash
#SBATCH --job-name=j_Perl
#SBATCH --partition=batch
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
#SBATCH --ntasks=1
#SBATCH --mem=10gb
#SBATCH --time=08:00:00
#SBATCH --output=Perl.%j.out
#SBATCH --error=Perl.%j.err

cd $SLURM_SUBMIT_DIR
ml Perl/5.38.2-GCCcore-13.3.0
perl [options]

In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values.

Please refer to Running_Jobs_on_the_teaching_cluster, Run X window Jobs and Run interactive Jobs for more details of running jobs at Teaching cluster.


Here is an example of job submission command:

sbatch ./sub.sh 

Documentation

ml Perl/5.38.2-GCCcore-13.3.0
perl -h

Usage: perl [switches] [--] [programfile] [arguments]
  -0[octal/hexadecimal] specify record separator (\0, if no argument)
  -a                    autosplit mode with -n or -p (splits $_ into @F)
  -C[number/list]       enables the listed Unicode features
  -c                    check syntax only (runs BEGIN and CHECK blocks)
  -d[t][:MOD]           run program under debugger or module Devel::MOD
  -D[number/letters]    set debugging flags (argument is a bit mask or alphabets)
  -e commandline        one line of program (several -e's allowed, omit programfile)
  -E commandline        like -e, but enables all optional features
  -f                    don't do $sitelib/sitecustomize.pl at startup
  -F/pattern/           split() pattern for -a switch (//'s are optional)
  -i[extension]         edit <> files in place (makes backup if extension supplied)
  -Idirectory           specify @INC/#include directory (several -I's allowed)
  -l[octnum]            enable line ending processing, specifies line terminator
  -[mM][-]module        execute "use/no module..." before executing program
  -n                    assume "while (<>) { ... }" loop around program
  -p                    assume loop like -n but print line also, like sed
  -s                    enable rudimentary parsing for switches after programfile
  -S                    look for programfile using PATH environment variable
  -t                    enable tainting warnings
  -T                    enable tainting checks
  -u                    dump core after parsing program
  -U                    allow unsafe operations
  -v                    print version, patchlevel and license
  -V[:configvar]        print configuration summary (or a single Config.pm variable)
  -w                    enable many useful warnings
  -W                    enable all warnings
  -x[directory]         ignore text before #!perl line (optionally cd to directory)
  -X                    disable all warnings
  
Run 'perldoc perl' for more help with Perl.

Back to Top

Installation

Source code is obtained from Perl

System

64-bit Linux