first off :
change the shebang to be on the FIRST line of the perl script, in the first lefthand column.
Second: If that does not work, then
The which command tells you where perl lives. Change the first line to point to that:
I am making up something here, use what your system says:
I am trying to run the following code from a script file but it complains that syntax of (both instances of) grep is wrong.
When I copy and paste it to the terminal, it is OK. Any idea what the problem might be?
set i = `grep -c #define flags.h`
while ($i>20)
@ i--
my func (`cat... (4 Replies)
without using ls, just using echo so purely pattern matching
I can say echo */ <-- lists directories
but how would I match files? surely something like *!/ or * but neither work ?
it seems like there isn't much that I can put in but surely i should be able to put any ascii... (1 Reply)
completion-ignore-case option doesn't work in my version:
/home/user $ echo $BASH_VERSION
3.2.48(1)-release
/home/user $ ls -l *
-rw-r--r-- 1 user user 0 2009-10-18 00:09 somefile
-rw-r--r-- 1 user user 0 2009-10-18 00:09 Somefile
/home/user $ set completion-ignore-case on
But when I... (2 Replies)
I am writing perl script to configure Cisco device but Variables inside Net::Telnet::Cisco Module doesn't work and passed to device without resolving.
Please advise.
here is a sample of script:
use Net::Telnet::Cisco;
$device = "10.14.199.1";
($o1, $o2, $o3, $o4) = split(/\./,$device);... (5 Replies)
Hi,
I'm trying to write a script that checks gvfs to see if a mount exists so I can run it from network-manager's status hooks. I thought I'd pipe the output of gvfs-mount -l to grep for the particular mounts I care about. When I do this in a bash script:
cmnd="gvfs-mount -l | grep -i... (4 Replies)
Hello Friends,
My bash script is like this
#!/bin/bash
# request Bourne shell as shell for job
#$ -S /bin/bash
# assume current working directory as paths
#$ -cwd
#$ -N rsync-copy
#
# print date and time
date
rsync -rltD --progress "ssh -i /home/myname/.ssh/id_rsa"... (4 Replies)
Hi everyone,
I've an issue trying to soustracte two dates, e.g:
d1=$(date -d "Nov 18, 2017" +%s)
d2=$(date +%s) # Today we are 2017-11-16
echo "$(( (d1 - d2) / 86400 ))"
Output:
1
I don't understand why it doesn't work. for me, it should give "18 - 16 = 2".
Much appreciated... (1 Reply)
Bash version 4.4.20 / Ubuntu 16.0.4
Hello,
I tried to write a script that gathers some data and passes them to an executable.
The executed application answers with an error. The echo output in the script returns correct values.
If I copy/paste the last echo command, it get's executed... (2 Replies)
I have the following code:
#!/bin/csh
clear
set cloud_file="/home/labs/koren/davidsr/general_scripts/MFP_10_PP_Parmas.txt" # to fill
set mie_tables_dir='/home/labs/koren/davidsr/SHDOM_MAIN/MIE_TABLES/non_polo_wave_0.7_water_50R_s0.5_e25_max_70.mie' # to fill
set prp_dir='${pp_dir}/pp_prp/'... (2 Replies)
Discussion started by: student_wiz
2 Replies
LEARN ABOUT OSX
tap::parser::source::perl
TAP::Parser::Source::Perl(3pm) Perl Programmers Reference Guide TAP::Parser::Source::Perl(3pm)NAME
TAP::Parser::Source::Perl - Stream Perl output
VERSION
Version 3.17
SYNOPSIS
use TAP::Parser::Source::Perl;
my $perl = TAP::Parser::Source::Perl->new;
my $stream = $perl->source( [ $filename, @args ] )->get_stream;
DESCRIPTION
Takes a filename and hopefully returns a stream from it. The filename should be the name of a Perl program.
Note that this is a subclass of TAP::Parser::Source. See that module for more methods.
METHODS
Class Methods
"new"
my $perl = TAP::Parser::Source::Perl->new;
Returns a new "TAP::Parser::Source::Perl" object.
Instance Methods
"source"
Getter/setter the name of the test program and any arguments it requires.
my ($filename, @args) = @{ $perl->source };
$perl->source( [ $filename, @args ] );
"croak"s if $filename could not be found.
"switches"
my $switches = $perl->switches;
my @switches = $perl->switches;
$perl->switches( @switches );
Getter/setter for the additional switches to pass to the perl executable. One common switch would be to set an include directory:
$perl->switches( ['-Ilib'] );
"get_stream"
my $stream = $source->get_stream($parser);
Returns a stream of the output generated by executing "source". Must be passed an object that implements a "make_iterator" method.
Typically this is a TAP::Parser instance.
"shebang"
Get the shebang line for a script file.
my $shebang = TAP::Parser::Source::Perl->shebang( $some_script );
May be called as a class method
"get_taint"
Decode any taint switches from a Perl shebang line.
# $taint will be 't'
my $taint = TAP::Parser::Source::Perl->get_taint( '#!/usr/bin/perl -t' );
# $untaint will be undefined
my $untaint = TAP::Parser::Source::Perl->get_taint( '#!/usr/bin/perl' );
SUBCLASSING
Please see "SUBCLASSING" in TAP::Parser for a subclassing overview.
Example
package MyPerlSource;
use strict;
use vars '@ISA';
use Carp qw( croak );
use TAP::Parser::Source::Perl;
@ISA = qw( TAP::Parser::Source::Perl );
sub source {
my ($self, $args) = @_;
if ($args) {
$self->{file} = $args->[0];
return $self->SUPER::source($args);
}
return $self->SUPER::source;
}
# use the version of perl from the shebang line in the test file
sub _get_perl {
my $self = shift;
if (my $shebang = $self->shebang( $self->{file} )) {
$shebang =~ /^#!(.*perl.*?)(?:(?:s)|(?:$))/;
return $1 if $1;
}
return $self->SUPER::_get_perl(@_);
}
SEE ALSO
TAP::Object, TAP::Parser, TAP::Parser::Source,
perl v5.12.5 2012-11-03 TAP::Parser::Source::Perl(3pm)