dwww Home | Manual pages | Find package

PERLSH(1p)            User Contributed Perl Documentation           PERLSH(1p)

NAME
       perlsh - one-line perl evaluator with line editing function and
                variable name completion function

SYNOPSIS
         perlsh

DESCRIPTION
       This program reads input a line, and evaluates it by perl interpreter,
       and prints the result.  If the result is a list value then each value
       of the list is printed line by line.  This program can be used as a
       very strong calculator which has whole perl functions.

       This is a sample program Term::ReadLine::Gnu module.  When you input a
       line, the line editing function of GNU Readline Library is available.
       Perl symbol name completion function is also available.

       Before invoking, this program reads ~/.perlshrc and evaluates the
       content of the file.

       When this program is terminated, the content of the history buffer is
       saved in a file ~/.perlsh_history, and it is read at next invoking.

VARIABLES
       You can customize the behavior of "perlsh" by setting following
       variables in ~/.perlshrc;

       $PerlSh::PS1
           The primary prompt string.  The following backslash-escaped special
           characters can be used.

                   \h: host name
                   \u: user name
                   \w: package name
                   \!: history number

           The default value is `"\w[\!]$ "'.

       $PerlSh::PS2
           The secondary prompt string.  The default value is `"> "'.

       $PerlSh::HISTFILE
           The name of the file to which the command history is saved.  The
           default value is "~/.perlsh_history".

       $PerlSh::HISTSIZE
           If not "undef", this is the maximum number of commands to remember
           in the history.  The default value is 256.

       $PerlSh::STRICT
           If true, restrict unsafe constructs.  See "use strict" in perl man
           page.  The default value is 0;

FILES
       ~/.perlshrc
           This file is eval-ed at initialization.  If a subroutine
           "afterinit" is defined in this file, it will be eval-ed after
           initialization.  Here is a sample.

                   # -*- mode: perl -*-
                   # decimal to hexa
                   sub h { map { sprintf("0x%x", $_ ) } @_;}

                   sub tk {
                       $t->tkRunning(1);
                       use Tk;
                       $mw = MainWindow->new();
                   }

                   # for debugging Term::ReadLine::Gnu
                   sub afterinit {
                       *t = \$PerlSh::term;
                       *a = \$PerlSh::attribs;
                   }

       ~/.perlsh_history
       ~/.inputrc
           A initialization file for the GNU Readline Library.  Refer its
           manual for details.

SEE ALSO
       Term::ReadLine::Gnu <http://search.cpan.org/dist/Term-ReadLine-Gnu/>

       GNU Readline Library
       <https://tiswww.cwru.edu/php/chet/readline/rltop.html>

AUTHOR
       Hiroo Hayashi <hiroo.hayashi@computer.org>

perl v5.36.0                      2022-12-03                        PERLSH(1p)

Generated by dwww version 1.15 on Sun Aug 31 21:36:44 CEST 2025.