09-30-2011
.profile is a shell script, shell scripts don't run in perl.
Creating a shell inside perl to run .profile in is pointless, environment variables don't work that way. The script and anything the script runs would get the vars, but perl wouldn't. Children get copies of your environment, parents don't get environment variables from children.
You should source .profile in a shell, and have that shell run the perl script. The perl script will inherit the vars from it.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
How can i execute .profile from a perl script
I need this - i am trying to run perl script from crontab
and it looses the environment variables
Please provide help
Your help is greatly appreciated
Thanks (1 Reply)
Discussion started by: prekida
1 Replies
2. UNIX for Dummies Questions & Answers
Hello
say i have written some perl scripts , now i like to call them in my unix shell
as unix command like "more" , "ls" , "grep" so that my say perl script called "foo.pl"
will be called from every where as "foo" or "foo arg1 arg2"?
Thanks (1 Reply)
Discussion started by: umen
1 Replies
3. Shell Programming and Scripting
Hi
I am not sure how to call a perl script from a tcsh shell. do i need to set any environment variables? your help is appreciated
Thanks (1 Reply)
Discussion started by: megastar
1 Replies
4. Shell Programming and Scripting
Hello all,
I want to call my users .profile in cron?
I understand that i have to do it explicitly in crontab entry.
How can we do it ? How can i write a simple script calling it?
Thanks & Regards
Abhijeet (15 Replies)
Discussion started by: abhijeetkul
15 Replies
5. Shell Programming and Scripting
hi,,
i have perl scipt with line :
system('./try.sh $t $d $m');
in shell scipt try.sh i have the line:
echo $1
its not printing value of $t that i hav passed..y is it so..i am running it from apache web server (2 Replies)
Discussion started by: raksha.s
2 Replies
6. Shell Programming and Scripting
Hi
I m new to perl. I m trying to write a perl script that calls a bash script; does anyone have a script already that they can provide or help me out? Thanks a lot. (2 Replies)
Discussion started by: adnan786
2 Replies
7. UNIX for Advanced & Expert Users
Hi All,
I have a doubt that can we call under whatever scripts we mention in crontab -e into .profile .
Because every weekend my server is going to restart so, my doubt whether crontab -e will automatically run my scripts or manually we have to save the crontab -e again?
If that crontab... (3 Replies)
Discussion started by: ksrivani
3 Replies
8. Shell Programming and Scripting
I'm attempting to write a bash script that will create a network between virtual machines. It accepts three arguments: an RSpec that describes the network topology, and two list of machines (servers and clients).
I have a (working) Perl script that I want to call. This Perl script takes an RSpec... (6 Replies)
Discussion started by: mecaka
6 Replies
9. Shell Programming and Scripting
Hello all,
Please my shell is ksh. I created .profile such that users can pick environments they want to use:
echo Select your Environment!!
echo " 1. Nigeria DEV"
echo " 2. UEMOA DEV"
echo " 3. CEMOA DEV"
echo "Make your choice : \c"
read choice
if
then
...
fi
if
then (6 Replies)
Discussion started by: mofaloks
6 Replies
10. Shell Programming and Scripting
i have this line of code on my script
#!/bin/sh
#enable the environment variable thru profile
. .profile
when i run the script it was unable to find the .profile
sh ChgPwd.sh
ChgPwd.sh: line 4: .: .profile: file not found
the file .profile exists
ls -altr .profile... (2 Replies)
Discussion started by: wtolentino
2 Replies
PPERL(1p) User Contributed Perl Documentation PPERL(1p)
NAME
PPerl - Make perl scripts persistent in memory
SYNOPSIS
$ pperl foo.pl
DESCRIPTION
This program turns ordinary perl scripts into long running daemons, making subsequent executions extremely fast. It forks several processes
for each script, allowing many processes to call the script at once.
It works a lot like SpeedyCGI, but is written a little differently. I didn't use the SpeedyCGI codebase, because I couldn't get it to
compile, and needed something ASAP.
The easiest way to use this is to change your shebang line from:
#!/usr/bin/perl -w
To use pperl instead:
#!/usr/bin/pperl -w
WARNINGS
Like other persistent environments, this one has problems with things like BEGIN blocks, global variables, etc. So beware, and try checking
the mod_perl guide at http://perl.apache.org/guide/ for lots of information that applies to many persistent perl environments.
Parameters
$ pperl <perl params> -- <pperl params> scriptname <script params>
The perl params are sent to the perl binary the first time it is started up. See perlrun for details.
The pperl params control how pperl works. Try -h for an overview.
The script params are passed to the script on every invocation. The script also gets any current environment variables, the current working
directory, and everything on STDIN.
Killing
In order to kill a currently running PPerl process, use:
pperl -- -k <scriptname>
You need to make sure the path to the script is the same as when it was invoked.
Alternatively look for a .pid file for the script in your tmp directory, and kill (with SIGINT) the process with that PID.
ENVIRONMENT
pperl uses the PPERL_TMP_PATH environment variable to determine the directory where to store the files used for inter-process
communication. By default, the subdirectory .pperl of the user's home directory is used.
BUGS
The process does not reload when the script or modules change.
$^S is not represented identically with respect to perl, since your script will be run within an eval block
AUTHOR
Matt Sergeant, matt@sergeant.org. Copyright 2001 MessageLabs Ltd.
SEE ALSO
perl. perlrun.
perl v5.14.2 2011-11-15 PPERL(1p)