Perl-Teaching: Difference between revisions

From Research Computing Center Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
(12 intermediate revisions by 2 users not shown)
Line 9: Line 9:


=== Version ===
=== Version ===
5.26.1
5.34.1
   
   
=== Author / Distributor ===
=== Author / Distributor ===
   
   
[https://www.perl.org/ Perl]
[http://www.perl.org/ Perl]
   
   
=== Description ===
=== Description ===
"Larry Wall"
Larry Wall's Practical Extraction and Report Language. More information is at [http://www.perl.org/ Perl]
More details are at [https://www.perl.org/ Perl]


=== Running Program ===
=== Running Program ===


The last version of this application is at /usr/local/apps/eb/Perl/5.26.1-foss-2018a
'''Version 5.34.1'''
 
It is installed in /apps/eb/Perl/5.34.1-GCCcore-11.3.0


To use this version, please load the module with
To use this version, please load the module with
<pre class="gscript">
<pre class="gscript">
ml Perl/5.26.1-foss-2018a
ml Perl/5.34.1-GCCcore-11.3.0
</pre>  
</pre>  


Here is an example of a shell script, sub.sh, to run on the batch queue:  
Here is an example of a shell script, sub.sh, to run on the batch queue:  
Line 40: Line 42:
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br>   
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br>   
<nowiki>#</nowiki>SBATCH --output=Perl.%j.out<br>
<nowiki>#</nowiki>SBATCH --output=Perl.%j.out<br>
<nowiki>#</nowiki>SBATCH --error=Perl.%j.err<br>
   
   
cd $SLURM_SUBMIT_DIR<br>
cd $SLURM_SUBMIT_DIR<br>
ml Perl/5.26.1-foss-2018a<br>     
ml Perl/5.34.1-GCCcore-11.3.0<br>     
perl <u>[options]</u><br>   
perl <u>[options]</u><br>   
</div>
</div>
Line 58: Line 61:
   
   
<pre  class="gcommand">
<pre  class="gcommand">
ml Perl/5.26.1-foss-2018a
ml Perl/5.34.1-GCCcore-11.3.0
perl perl -h
perl -h


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


</pre>
</pre>
Line 99: Line 101:
=== Installation ===
=== Installation ===
   
   
Source code is obtained from [https://www.perl.org/ Perl]
Source code is obtained from [http://www.perl.org/ Perl]
   
   
=== System ===
=== System ===
64-bit Linux
64-bit Linux

Revision as of 13:45, 5 September 2023

Category

Programming

Program On

Teaching

Version

5.34.1

Author / Distributor

Perl

Description

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

Running Program

Version 5.34.1

It is installed in /apps/eb/Perl/5.34.1-GCCcore-11.3.0

To use this version, please load the module with

ml Perl/5.34.1-GCCcore-11.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.34.1-GCCcore-11.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.34.1-GCCcore-11.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