03-02-2009
'vars' has been considered deprecated for years now. 'our' should be used unless your using an old version of perl or legacy perl programs.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
What is the difference between a shell variable that is exported and the one that is not exported? (1 Reply)
Discussion started by: JosephGerard
1 Replies
2. Shell Programming and Scripting
Hi
I have a file which has start time as my first line and End time in last line
start time: 23 May 2008 03:30:33
End time : 23 May 2008 04:30:00
I have to extract these two lines and find the time of execution for the script in PERl.
Any help appreciated
Thanks (1 Reply)
Discussion started by: usshell
1 Replies
3. Shell Programming and Scripting
I am using two shell scripts a.ksh and b.ksh
a.ksh
1. Sets the value
+++++++++++++++++
export USER1=abcd1
export PASSWORD=xyz
+++++++++++++++++
b.ksh
2. Second scripts calls sctipt a.ksh and uses the values set in a.ksh and pass to an executable demo... (2 Replies)
Discussion started by: kunalseth
2 Replies
4. Shell Programming and Scripting
Hi,
Is there any way I can get the difference between two dates in terms of days?
I have used this method so far, but I cant format it in terms of days.
@a=&DateCalc($date1,$date2,0);
The o/p that I am getting is sort of like this:
+0:0:0:4:0:0:0
I just want to get 4 days as an o/p.... (1 Reply)
Discussion started by: King Nothing
1 Replies
5. Shell Programming and Scripting
I having probelm in time difference output using Delta_YMDHMS, using below start date and enddate I get -30days. Any idea how to fix this issue.
output : 0,1,-30, 0,0,0
Thanks,
Bataf
use POSIX qw/strftime/;
use Date::Calc qw(Delta_YMDHMS);
use Time::Local;
$start_date =... (1 Reply)
Discussion started by: bataf
1 Replies
6. Shell Programming and Scripting
Hi,
I have 2 arrays:
@a=qw(19190289 18381856 12780546 10626296 9337410 8850557 7740161 8101063);
@b=qw(18309897 17612870 10626296 16871843 7740161 19947571 18062861);
$len=@a;
print "<br> length of array1: $len<br>";
$len1=@b;
print "<br> length of array2: $len1<br>";
The output... (3 Replies)
Discussion started by: vanitham
3 Replies
7. Shell Programming and Scripting
I have a shell script I want to run that will set environment variables based on the value of an input variable submitted when the shell script is called. For example:
$ mgenv.sh prod
This would set environment variables for prod
$ mgenv.sh test
This would set environment variables... (1 Reply)
Discussion started by: brtaylor73
1 Replies
8. Shell Programming and Scripting
I need to process a file line-by-line using some value from a shell variable
Something like:perl -p -e 's/$shell_srch/$shell_replace/g' input.txt
I can't make the '-s' work in the '-p' or '-n' input loop (or couldn't find a syntaxis.)
I have searched and found... (4 Replies)
Discussion started by: alex_5161
4 Replies
9. Shell Programming and Scripting
Hi I have the following issue.
the headeer in the file contains as follows
IMAHDR tsmdsl01 EMBS_DAT 20120911 20120911
233656S000000000000000 001
So the fifth field in the header is a string that represents the file arrival date.(20120911) yyyyMMDD
I just need to compare... (1 Reply)
Discussion started by: ptappeta
1 Replies
10. Shell Programming and Scripting
Hi All,
I am using the below code to get the days difference between 2 dates
ddate="05/31/2018"
bdate="06/10/2018"
diff=$(perl -e 'use Time::Local;
my ($month1,$day1,$year1)=split /\W+/, $ENV{'ddate'};
my ($month2,$day2,$year2)=split /\W+/, $ENV{'bdate'};
my $time1 =... (5 Replies)
Discussion started by: jayadanabalan
5 Replies
LEARN ABOUT DEBIAN
perl::critic::policy::variables::prohibitpackagevars
Perl::Critic::Policy::Variables::ProhibitPackageVars(3pmUser Contributed Perl DocumentatiPerl::Critic::Policy::Variables::ProhibitPackageVars(3pm)
NAME
Perl::Critic::Policy::Variables::ProhibitPackageVars - Eliminate globals declared with "our" or "use vars".
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
Conway suggests avoiding package variables completely, because they expose your internals to other packages. Never use a package variable
when a lexical variable will suffice. If your package needs to keep some dynamic state, consider using an object or closures to keep the
state private.
This policy assumes that you're using "strict vars" so that naked variable declarations are not package variables by default. Thus, it
complains you declare a variable with "our" or "use vars", or if you make reference to variable with a fully-qualified package name.
$Some::Package::foo = 1; # not ok
our $foo = 1; # not ok
use vars '$foo'; # not ok
$foo = 1; # not allowed by 'strict'
local $foo = 1; # bad taste, but technically ok.
use vars '$FOO'; # ok, because it's ALL CAPS
my $foo = 1; # ok
In practice though, its not really practical to prohibit all package variables. Common variables like $VERSION and @EXPORT need to be
global, as do any variables that you want to Export. To work around this, the Policy overlooks any variables that are in ALL_CAPS. This
forces you to put all your exported variables in ALL_CAPS too, which seems to be the usual practice anyway.
CONFIGURATION
There is room for exceptions. Some modules, like the core File::Find module, use package variables as their only interface, and others
like Data::Dumper use package variables as their most common interface. These module can be specified from your .perlcriticrc file, and
the policy will ignore them.
[Variables::ProhibitPackageVars]
packages = Data::Dumper File::Find FindBin Log::Log4perl
This is the default setting. Using "packages =" will override these defaults.
You can also add packages to the defaults like so:
[Variables::ProhibitPackageVars]
add_packages = My::Package
You can add package "main" to the list of packages, but that will only OK variables explicitly in the "main" package.
SEE ALSO
Perl::Critic::Policy::Variables::ProhibitPunctuationVars
Perl::Critic::Policy::Variables::ProhibitLocalVars
AUTHOR
Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>
COPYRIGHT
Copyright (c) 2005-2011 Imaginative Software Systems. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license
can be found in the LICENSE file included with this module.
perl v5.14.2 2012-06-07 Perl::Critic::Policy::Variables::ProhibitPackageVars(3pm)