Sponsored Content
Top Forums Shell Programming and Scripting running egrep in perl script ? Post 302355935 by rethink on Thursday 24th of September 2009 06:01:47 AM
Old 09-24-2009
running egrep in perl script ?

Hi there

if i run this from the BASH command line, i get a good result

Code:
# FS="my-box23/account"
# zfs list -t filesystem -H | cut -f1 |egrep "^ZP[01]pool1/$FS$"
ZP0pool1/my-box23/account

which is great, however if I try to run in a perl script populating an array with the result/s, i get problems

Code:
#!/bin/perl -w
my $FS="my-box23/account";
my @zfs_get = `zfs list -t filesystem -H | cut -f1 | egrep "^ZP[01]pool1/$FS$"`;
print "zfs get equals $zfs_get[0]\n";


# ./test.pl 
Use of uninitialized value in concatenation (.) or string at ./test.pl line 4.
zfs get equals
#


It seems as though it is having problems with my egrep/regex and quotes because if i run a similar statement using standard grep within a perl script, it returns just fine



Code:
#!/bin/perl -w
my $FS="my-box23/account";
my @zfs_get = `zfs list -t filesystem -H | grep $FS | cut -f1 `;
print "zfs get equals $zfs_get[0]\n";


# ./test.pl 
Use of uninitialized value in concatenation (.) or string at ./test.pl line 4.
zfs get equals ZP0pool1/my-box23/account
#

Ive tried running this command within perl's system() function as well to no avail

Is there something i can do to stop perl trying to interpret the egrep/regex quotes and just run the command as it is? i take it `` and system() are finicky about what is put inside them ?

any help would be great

Last edited by rethink; 09-24-2009 at 07:25 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Running a remote Server through perl script

Hello people, I am want to run a server on remote machine through perl scripting using telnet api. Now when I try to do so, the server gets started perfectly, but as soon as I close the telnet connection in the script, the server started on the remote machine suddenly goes down. I also... (0 Replies)
Discussion started by: chandrak
0 Replies

2. UNIX for Dummies Questions & Answers

running a Perl script on HPUX platform

Hi, I wish to execute a simple perl script to pass unix commands on a HPUX platform, retrieve the result and filter through the text to determine outcomes x,y and z. I am developing the code on my windows system. I initially wrote the code to issue UNIX commands line by line, however i soon... (1 Reply)
Discussion started by: mmetcalfe
1 Replies

3. Shell Programming and Scripting

Problems in running a Perl script via cronjob

I have a very basic perl script that attempts to find if a process is running. If the process is not running then the script is supposed to start the process. If I execute the script from command line it works fine as expected. However if the script is executed via cronjob, the script cannot find... (1 Reply)
Discussion started by: ypant
1 Replies

4. Shell Programming and Scripting

running perl script problem

While executing perl scriptit gives some compling issue, please help out $inputFilename="c:\allways.pl"; open (FILEH,$inputFilename) or die "Could not open log file"; Error : Could not open log file at c:\allways.pl line 4 learner in Perl (1 Reply)
Discussion started by: allways4u21
1 Replies

5. Shell Programming and Scripting

running shell command in Perl script

Does not work. #!/usr/bin/perl $etcdir = 'ls -l /etc'; print $etcdir; #END ------------result-------- #perl -w abc123.pl ls -l /etc # This method works. #!/usr/bin/perl $etcdir = system("ls -l /etc"); print $etcdir; #END (2 Replies)
Discussion started by: dplinux
2 Replies

6. Shell Programming and Scripting

Running unix commands in a perl script

Executing two unix commads via perl script one after another e.g: make clean bsub -i -q short make have tried using exec but the second command doesnt executes (1 Reply)
Discussion started by: rajroshan
1 Replies

7. UNIX for Advanced & Expert Users

What script is running by Perl?

Dear fellow unixoids! I need a little help (just a link would be fine) how can I investigate what specific perl script is eating 100% of cpu of my ubuntu server: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND ... (2 Replies)
Discussion started by: ulrith
2 Replies

8. Shell Programming and Scripting

Running one Perl script from another

Hi, I have one small question - what is the best way to run one perl script from another? Thanks in advance. (1 Reply)
Discussion started by: xqwzts
1 Replies

9. Windows & DOS: Issues & Discussions

PERL: Running script from Notepad++

I'm not sure if this forum covers PERL issues but here I go: I'm trying to run a PERL script from Notepadd++. I've entered the path of the script from the run command but it is only opening a blank window. Is there anything else that needs to be done when using the 'RUN' feature of Notepad++? (2 Replies)
Discussion started by: millsy5
2 Replies

10. Shell Programming and Scripting

Perl script running multiple commands at once

Hi All, I have put a perl script together to go and collect some information from multiple nodes/endpoints. The script works absolutly fine however I want to make it quicker. You will see in the below that my script calls an expect script called ssh_run_cmd2.exp followed by the IP of... (7 Replies)
Discussion started by: mutley2202
7 Replies
uudemon(4)						     Kernel Interfaces Manual							uudemon(4)

NAME
uudemon.admin, uudemon.cleanu, uudemon.hour, uudemon.poll - Administrative shell scripts for polling remote systems, cleaning up spool directories, reporting status to the system administrator, and routine invocations of the uuxqt and uusched daemons SYNOPSIS
These shell scripts reside in the following directory: /usr/lib/uucp DESCRIPTION
All the scripts can be run from the command line or can be run automatically by the cron daemon. To automatically run the scripts, remove the comment character (#) from the beginning of the relevant line in the /var/spool/cron/crontabs/uucp file. This script reports status to the system administrator. It issues the uustat command to find out the status of uucp jobs. It mails the results to the uucp login ID. The script may be modified to send mail to any login ID such as the uucp administrative login ID (uucpa) or root. This script cleans up the /var/spool/uucp and /var/spool/uucppublic directories by running the uucleanup command. The uucleanup com- mand is run with the following parameters: -C7, -D7, X2, -o2, -W1. This script runs the uusched and uuxqt daemons in the background. This script polls the systems listed in the /usr/lib/uucp/Poll file. The uudemon.poll script should be scheduled before the uudemon.hour script. This allows uudemon.poll to create any command files before cron runs the uudemon.hour script. FILES
Contains the uudemon.admin, uudemon.cleanu, uudemon.hour and uudemon.poll files. Contains the uucp file. RELATED INFORMATION
Commands: cron(8), uucleanup(8), uusched(8), uuxqt(1) Files: /usr/lib/uucp delim off uudemon(4)
All times are GMT -4. The time now is 10:42 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy