I have created a Perl script that tries to open connections to various systems on different ports in order to see if the machines are reachable, the ports are open, etc.
There appears to be a difference between Solaris (10) and Linux (RH/Oracle and Ubuntu) in the status or error it throws. On Solaris I get expected results when I check $! after opening and connecting a socket, and I have a simple routine to catch messages like 'Connection timed out', 'Connection refused', etc.
On Linux, however, both the creation of the socket and the connect statements deliver an 'Illegal seek' status via $! for servers/ports that respond.
The question first revolves around whether I have taken an incorrect approach in order to retrieve and use the status of the connection, but secondly also about error handling.
The many examples available on the internet almost always use the 'die' statement when creating or connecting a socket - not a very neat way to handle exceptions. I haven't seen many alternative means of catching exceptions and dealing with them effectively.
The code:
You can see I have created an 'elsif' statement for the 'Illegal seek' message, which wasn't necessary on Solaris.
Any help or advice on how to 1. change the script to act accordingly, and 2. how to generally implement these types of exception handling, are very very much welcome.
Hi,
I am reading and file and writting each word to other file.
where I have used array to store the data.
I am getting below error as
"Use of uninitialized value in concatenation (.) or string at customize_split_raw.pl line 51, <IN_FILE> "
Where my line 51 code is
50 foreach... (8 Replies)
Hi
Am making connection to oracle using ISQL as shown in the code.
This code is just a minor part of a big code.
I want to capture the error if the password/login is wrong or if connection is not made.
I need to capture the error code also.
Also, If such an error occurs, i need to exit out... (4 Replies)
I have a PERL command line embedded in a UNIX script. The script doesn't handle errors coming out of this command. I'm processing large files and occassionally I run out of disk space and end up with half a file.
perl -p -e 's/\n/\r\n/g' < TR_TMP_$4 > $4
How do I handle errors coming out... (1 Reply)
$# some text
$$ some text
$@ some text
$$. some text
Mg1 some text
Mg2 some text
.
.
.
Mg10 some text
The above 10 lines are to be extracted except the lines starting from $#,$$.,... (4 Replies)
I can get this working, but if something is down I get an error and the script does not move on. I can not get the "else" function working. What might I be doing wrong?
use SNMP::Simple
my %ios = ();
$list="list.list";
open(DAT, $list) || die("Can't Open List");
@raw_data=<DAT>;... (4 Replies)
Hi All,
I'm pretty new to the forum and also to UNIX. I have a requirement for which I need some help. I have a script (example.script) where I get user inputs using the read command. I would need to pass the read-fetched input to a perl command (explained below) in my script. The part which... (3 Replies)
Hi,
Here is my piece of code--
sub per_user_qna_detail
{
for($index=0;$index<@records;$index++)
{
if($records =~ m/^(.*)\s*Morocco.*Entering\s*Module::authenticate/)
{
printf "INSIDE per_user_qna_detail on LINE NO $index\n";
$Time_Stamp = $1;... (0 Replies)
Hi there,
I'm newby in perl and XML. I can read and parse Xml with XML-Node upper XML::Parser, but how can I create XML tags and pack my individual data in it then send through socket. PLZ lead me :)
Thanks in Advance. (1 Reply)
Guys,
I'm doing signal handling in Perl. I'm trying to catch ^C signal inside the script.
There two scripts : one shell script and one perl script.
The shell script calls the perl script.
For e.g. shell script a.sh and perl scipt sig.pl.
Shell script a.sh looks something like this :... (6 Replies)
Hi,
I am opening a file......then i am wrting some data into it......and i am reopening the file again but ......i get a error cannot open file.......
$::file= "\adder\testfile.txt"
open(TEST1,$::file);
some write operation
close(TEST1)
open(TEST1,$::file) 'I GET A ERROR CAN OPEN... (2 Replies)