I wouldn't have expected this to cause your error here (as you are specifying the interpreter to use on the commandline), but you are selecting ksh as your interpreter in the first line which will override the request to use perl on the next line.
The error message itself suggests that ksh, rather than perl is being run...
Thanks for the reply!!
My bad...
now i ran the same script in bash (removing the /usr/bin/env ksh)..and its running fine...
In the same script i have used "Spreadsheet::ParseExcel;" and now its again giving the compliation error...
Following is the code:
HTML Code:
#!/usr/bin/perl
$path_to_excel_file = "/home/test/Book1.xls";
$path_to_output_file = "/home/test/Book1.csv";
use Spreadsheet::ParseExcel;
do_main();
sub do_main
{
my ($oBook, $iR, $iC, $oWkS, $oWkC);
$oBook = Spreadsheet::ParseExcel::Workbook->Parse($path_to_excel_file);
open(FILE_OUT, "> $path_to_output_file");
foreach my $oWkS (@{$oBook->{Worksheet}})
{
for (my $iR = $oWkS->{MinRow}; defined $oWkS->{MaxRow} && $iR <= $oWkS->{MaxRow} ; $iR++)
{
print FILE_OUT " [[" . $oWkS->{Cells}[$iR][1]->Value . "]]: " . $oWkS->{Cells}[$iR][2]->Value . "\n";
}
}
close(FILE_OUT);
And the error message is :
HTML Code:
Can't locate Spreadsheet/ParseExcel.pm in @INC (@INC contains: /usr/lib/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 /usr/lib/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl .) at perl_scr1.pl line 19.
BEGIN failed--compilation aborted at perl_scr1.pl line 19.
Its showing problem with "Spreadsheet::ParseExcel"
Can anybody help me out ??
Perl can't find the module in any of it's search paths. Since Spreadsheet::ParseExcel isn't part of the core distribution, you'll have to install it by yourself. If it's available through your Linux distribution, install that, otherwise you'll have to use CPAN:
---------- Post updated at 02:51 AM ---------- Previous update was at 02:32 AM ----------
Quote:
Originally Posted by pludi
Perl can't find the module in any of it's search paths. Since Spreadsheet::ParseExcel isn't part of the core distribution, you'll have to install it by yourself. If it's available through your Linux distribution, install that, otherwise you'll have to use CPAN:
Thanks for the quick reply!!
Will talk to our Unix admin..and install the Spreadsheet::ParseExcel.
Again thanks for the help!!
---------- Post updated at 05:13 AM ---------- Previous update was at 02:51 AM ----------
Hi,
We tried to install the CPAN,but while automatic installation,we are facing the problem ... The error is
Please check, if the URLs I found in your configuration file
(ftp://ftp-mirror.internap.com/pub/CPAN/) are valid. The urllist can be
edited. E.g. with 'o conf urllist push ftp://myurl/'
Could not fetch authors/01mailrc.txt.gz
LWP not available
Fetching with Net::FTP:
ftp://ftp-mirror.internap.com/pub/CPAN/modules/02packages.details.txt.gz
Issuing "/usr/bin/ftp -n"
ftp-mirror.internap.com: unknown host or invalid literal address
Not connected.
Local directory now /home/dsadm/.cpan/sources/modules
That message rather seems to indicate a name resolution problem. Maybe you need to set the http_proxy and/or ftp_proxy options correctly, or choose an alternative server.
Linux System having all Perl, Python, PHP (and Ruby) installed
From a Shell script, can call a Perl, Python, PHP (or Ruby ?) file
eg
eg
a Shell script run in a case statement call to run a php file, also Perl or/and Python file???
Like
#!/usr/bin/bash
....
....
case $INPUT_STRING... (1 Reply)
To cut a long story short I need to implement a CEC server in order to allow my Samsung TV to interact with other peripherals. I plan on using a RPi for this purpose.
I have installed CEC-untils and can run the tvservice monitor to look for HDMI events. I now need a simple script that will run... (3 Replies)
Hello all!
This is my first post and I'm very new to programming. I would like help creating a simple perl or bash script that I will be using in my work as a junior bioinformatician.
Essentially, I would like to take a tab-delimted or .csv text with 3 columns and write them to a "3D" matrix:
... (16 Replies)
I'm attempting to parse a file whose contents follow this format;
4:/eula.1028.txt:
8:/eula.1031.txt:
19:/eula.1033.txt:
23:/eula.1036.txt:
27:/eula.1040.txt:
31:/eula.1041.txt:
35:/eula.1042.txt:
39:/eula.2052.txt:
43:/eula.3082.txt:
The number of lines of the file... (4 Replies)
I have the following problem, which I need done in Perl/ or Python using Unix/linux filters...
1. You have a very large file, named 'ColCheckMe', tab-delmited, that you are asked to process. You are told that each line in 'ColCheckMe' has 7 columns, and that the values... (1 Reply)
I have the following problem, which I need done in Perl/ or Python using Unix/linux filters...
1. You have a very large file, named 'ColCheckMe', tab-delmited, that you are asked to process. You are told that each line in 'ColCheckMe' has 7 columns, and that the values in the... (1 Reply)
I ran into this issue and thanks to various postings in various forums, was
able to figure out the solution but didn't see one posting that laid the
whole issue out cleanly. So thought the following might help others ...
------------------------------------------------------------------------... (2 Replies)
why won't below work?
I am trying to see
a)sipfile has username of the system.
b)it will read the sipfile and do a grep function against the /etc/passwd
c)it will save that output to /tmp/result..
but my script is just hanging...
#!/usr/bin/perl -w
open(SIPFILE, "</tmp/sipfile")
... (4 Replies)
I have a question regarding running perl in the current process.
I shall demonstrate with an example.
Look at this.
sh-2.05b$ pwd
/tmp
sh-2.05b$ cat test.sh
#! /bin/sh
cd /etc
sh-2.05b$ ./test.sh
sh-2.05b$ pwd
/tmp
sh-2.05b$ . ./test.sh
sh-2.05b$ pwd
/etc
sh-2.05b$
So... (10 Replies)
$number_clients++;
print("Creating client $number_clients\r");
I have been using the above to increment on the screen as the script increments throughout a while loop. What I would like to know is what is the trick to keep the last one on the screen without printing it again?
Ie
... (1 Reply)