![]() |
|
|
google unix.com
|
|||||||
| Forums | Register | Forum Rules | Links | Albums | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts and shell scripting languages here. |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Pass perl variable to sed | hi_ryo | Shell Programming and Scripting | 4 | 07-14-2008 11:16 AM |
| How do I pass a variable to awk? | eja | UNIX for Dummies Questions & Answers | 12 | 04-03-2007 06:46 PM |
| How to pass a variable to Awk ? | Raynon | Shell Programming and Scripting | 24 | 02-26-2007 09:25 AM |
| pass variable to awk | inquirer | UNIX for Dummies Questions & Answers | 4 | 02-11-2004 03:23 AM |
| Pass variable to sed? | kristy | Shell Programming and Scripting | 2 | 04-04-2002 04:14 PM |
![]() |
|
|
LinkBack | Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Pass csh variable to Perl
Hi All, I am trying to put the csh variable into a perl. In the below case, i am trying to put the csh variable "var" into my perl code. I tried to use '"$var"' but i don;t think it works. Can anybody help me pls? Code:
#!/bin/csh set var = `echo "xxx"` perl myperlcode.pl file where the perl code is Code:
#!/usr/local/bin/perl
$[ = 1; # set array base to 1
$, = ' '; # set output field separator
$\ = "\n"; # set output record separator
line: while (<>) {
chomp; # strip record separator
@Fld = split(' ', $_, 9999);
if ($Fld[1] eq '**' && $Fld[8] eq '2007' && $Fld[2] =~ /'"$var"'/) {
print $_;
}
Input File: ddddd ppp ** xxx qqqqq qqq qq qq qq 2007 jjjj kkkk lll ppp Expected Output: ** xxx qqqqq qqq qq qq qq 2007 |
|
||||
|
Quote:
apparently "setenv" does the trick. |
|
||||
|
Hi cbkihong, Do you mean the below? I encounter some error though. I do not know how to export. Can you give me some guidance or show me an example ? Code:
#!/usr/local/bin/perl
$[ = 1; # set array base to 1
$, = ' '; # set output field separator
$\ = "\n"; # set output record separator
$ENV('var')
line: while (<>) {
chomp; # strip record separator
@Fld = split(' ', $_, 9999);
if ($Fld[1] eq '**' && $Fld[8] eq '2007' && $Fld[2] =~ /'"$var"'/) {
print $_;
}
}
|
![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|