我只是想知道如何将设置为bash脚本的变量发送到Perl脚本。例如
bash脚本
#!/bin/bash
var="bob"
perl perlscript.pl
return 0
所以当perlscript启动时我希望在Perl脚本中有bob
#!/usr/bi/perl -w
print ""
答案 0 :(得分:3)
好好看了一些我读过的书后,我想
#!/bin/bash
var="bob"
export var
perl perlscript.pl
和perlscript.pl
#!/usr/bi/perl -w
my $var1 = $ENV{"var"};
print "\ $var1\n";
知道书的人实际上比互联网更有用
答案 1 :(得分:2)
由于您想要访问环境,因此可以使用%ENV
全局哈希
print $ENV{var};
答案 2 :(得分:0)
可能更容易做到以下几点......
外壳脚本
#!/bin/bash
var="bob"
perl perlscript.pl $var
Perl脚本
#!/usr/bin/perl
use strict;
my $var = shift; # reads first arg passed on command line
print "$var \n";
我建议这样做,因为从环境中读取是可以的,但总有可能从/向现有变量读/写。
至少如果你将它保存到本地shell脚本变量,那么你可以控制传递给Perl脚本的内容。