Sponsored Content
Full Discussion: Mixing Perl with Bash
Top Forums Shell Programming and Scripting Mixing Perl with Bash Post 302273290 by kermit on Saturday 3rd of January 2009 07:59:01 PM
Old 01-03-2009
Mixing Perl with Bash

I am fiddling with a little script that will issue a shutdown command if the temperature on the CPU goes above a certain level. I started writing the script in Bash, and then thought I would like to use Perl to extract the detailed bits, but I am not sure if this is really practical. Basically I want to parse the input a little better, but I am a bit of a novice at both Bash and Perl. I know how to extract what I want with Perl, but not so much with Bash. I know how to get the raw data with Bash, but I don't know how best to get that data to Perl, and then back as a variable to Bash so it can decide whether to leave the machine running, or issue a shutdown command. I wrote the first bit of the Bash script, which was relatively simple, but now I am at a standstill as I don't know how to bring Perl into the picture. Would my best bet be to write the 'raw data' to a file, and then call a separate Perl script, have it alter the file data as necessary, then read in the newly parsed data (in Bash) and act on that? Here is what I have gotten so far:

Code:
#!/bin/bash

cur_tmp= sensors | grep 'CPU Temp:' \
        | awk '{ print $3 }' \

 

7 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

passing variable from bash to perl from bash script

Hi All, I need to pass a variable to perl script from bash script, where in perl i am using if condition. Here is the cmd what i am using in perl FROM_DATE="06/05/2008" TO_DATE="07/05/2008" "perl -ne ' print if ( $_ >="$FROM_DATE" && $_ <= "$TO_DATE" ) ' filename" filename has... (10 Replies)
Discussion started by: arsidh
10 Replies

2. UNIX for Dummies Questions & Answers

Need help with changing bash to perl

Hi guys, I am converting a bash script to perl. I need lots of help and pointers on how to make the script work. Any help would be greatly appreciated. Here is what I have: #!/usr/bin/perl #Decrypt Files $dir = "/usr/bin/gpg; opendir(PGP_DIR, $dir) || die "can't opendir $dir: $!";... (3 Replies)
Discussion started by: freak
3 Replies

3. Shell Programming and Scripting

***convert from perl to bash***

can any body translate the follwing script into one that works in bash? #!/usr/bin/perl # classify_books.pl my $csv_file = shift; my %categories = ( 'childrens' => 'childrens_books.txt', 'horror' => 'horror_books.txt', 'sports ' =>... (3 Replies)
Discussion started by: ferrycorsten73
3 Replies

4. Programming

Mixing code in C and Perl

Hi there, if you want to write an application partly in C and partly in Perl and have a final executable binary is it possible to do so. If yes, how ? My motivation for asking this question is that there are certain tasks that are so tedious to write in C while it can be taken care of in Perl... (2 Replies)
Discussion started by: jad
2 Replies

5. Shell Programming and Scripting

perl limitations vs. bash?

I've building a bunch of bash scripts, and am thinking about "converting" to perl, and have a couple questions first: 1. Is there anything bash will do that perl won't? 2. How steep is the learning curve? 3. If perl's more powerful, why? 4. I've built a small app in python, which seemed nice,... (18 Replies)
Discussion started by: unclecameron
18 Replies

6. Shell Programming and Scripting

Perl command in bash

I have the below perl script that runs (I think): 'C:\Users\cmccabe\Desktop\annovar\matrix.pl' < "${id}".txt.hg19_multianno.txt > "L:\NGS\3_BUSINESS\Matrix\Torrent\matrix_${id}.txt" The problem is I get an error that the ${id}.txt does not exist. I have tried "${id}.txt as well. ... (42 Replies)
Discussion started by: cmccabe
42 Replies

7. Programming

New to bash and perl scripting

How can we do submenu and show on the bottom how i can send back to main menu (1 Reply)
Discussion started by: ramindia
1 Replies
Alien::Package::Rpm(3pm)				User Contributed Perl Documentation				  Alien::Package::Rpm(3pm)

NAME
Alien::Package::Rpm - an object that represents a rpm package DESCRIPTION
This is an object class that represents a rpm package. It is derived from Alien::Package. FIELDS
prefixes Relocatable rpm packages have a prefixes field. METHODS
checkfile Detect rpm files by their extention. install Install a rpm. If RPMINSTALLOPT is set in the environement, the options in it are passed to rpm on its command line. scan Implement the scan method to read a rpm file. unpack Implement the unpack method to unpack a rpm file. This is a little nasty because it has to handle relocatable rpms and has to do a bit of permissions fixing as well. prep Prepare for package building by generating the spec file. cleantree Delete the spec file. build Build a rpm. If RPMBUILDOPT is set in the environement, the options in it are passed to rpm on its command line. An optional parameter, if passed, can be used to specify the program to use to build the rpm. It defaults to rpmbuild. version Set/get version. When retreiving the version, remove any dashes in it. postinst postrm preinst prerm Set/get script fields. When retrieving a value, we have to do some truely sick mangling. Since debian/slackware scripts can be anything -- perl programs or binary files -- and rpm is limited to only shell scripts, we need to encode the files and add a scrap of shell script to make it unextract and run on the fly. When setting a value, we do some mangling too. Rpm maintainer scripts are typically shell scripts, but often lack the leading shebang line. This can confuse dpkg, so add the shebang if it looks like there is no shebang magic already in place. Additionally, it's not uncommon for rpm maintainer scripts to contain bashisms, which can be triggered when they are ran on systems where /bin/sh is not bash. To work around this, the shebang line of the scripts is changed to use bash. Also, if the rpm is relocatable, the script could refer to RPM_INSTALL_PREFIX, which is set by rpm at run time. Deal with this by adding code to the script to set RPM_INSTALL_PREFIX. arch Set/get arch field. When the arch field is set, some sanitizing is done first to convert it to the debian format used internally. When it's retreived it's converted back to rpm form from the internal form. AUTHOR
Joey Hess <joey@kitenet.net> perl v5.12.3 2011-06-11 Alien::Package::Rpm(3pm)
All times are GMT -4. The time now is 10:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy