Sponsored Content
Full Discussion: perl linenum script
Top Forums Shell Programming and Scripting perl linenum script Post 302425815 by livewire06 on Sunday 30th of May 2010 02:15:27 PM
Old 05-30-2010
ok i got it working this far and error reporting for if its a directory and if theres not enough arguments are working but im still getting an error when it should work such as

./linenum.pl FILENAME

and im getting this error

Name "main::MY_FILE" used only once: possible typo at ./linenum.pl line 34.
Use of uninitialized value in string at ./linenum.pl line 11.
Undefined subroutine &main::Open called at ./linenum.pl line 11.

any advice?

Code:
#!/usr/bin/perl -w
unless (scalar(@ARGV) == 1){
   print "error: incorrect number of arguments",
   "\n",
   "usage: linenum.pl [filename]",
   "\n";
      exit 1;
}

# Open function used with  filehandle and input file.
Open(MY_FILE, "$ARGV[0]") or die
   "error: argument must be a file\n",
   "usage: linenum.pl [filename]\n$!\n";

# Check if file is a directory
if (-d "$ARGV[0]"){
   print "error: argument must be a file",
   "\n",
   "usage: linenum.pl [filename]\n";
   exit 1;
}

$COUNTER=1;  # Used for printing line numbers









# Loop and write lines from file
while ($LINE=<MY_FILE>){
   # Adds leading zeros for numbers 1 digit long
   if ($COUNTER<10){
      print "000";
   }
   # Adds leading zeros for numbers 2 digits long
   if (($COUNTER>9) && ($COUNTER<100)){
      print "00";
   }
   # Adds leading zeros for numbers 3 digits long
   if (($COUNTER>99) && ($COUNTER<1000)){
   print "0";
   }
   # Prints line number and line
   print "$COUNTER: $LINE";
   $COUNTER+=1;
}
exit 0;


Last edited by livewire06; 05-30-2010 at 03:23 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

[Perl] Accessing array elements within a sed command in Perl script

I am trying to use a script to replace the header of each file, whose filename are stored within the array $test, using the sed command within a Perl script as follows: $count = 0; while ( $count < $#test ) { `sed -e 's/BIOGRF 321/BIOGRF 332/g' ${test} > 0`; `cat 0 >... (2 Replies)
Discussion started by: userix
2 Replies

2. Shell Programming and Scripting

perl/unix: script in command line works but not in perl

so in unix this command works works and shows me a list of directories find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt but when i try running a perl script to run this command my $query = 'find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt';... (2 Replies)
Discussion started by: kpddong
2 Replies

3. Shell Programming and Scripting

Perl :How to print the o/p of a Perl script on console and redirecting same in log file @ same time.

How can i print the output of a perl script on a unix console and redirect the same in a log file under same directory simultaneously ? Like in Shell script, we use tee, is there anything in Perl or any other option ? (2 Replies)
Discussion started by: butterfly20
2 Replies

4. Shell Programming and Scripting

HELP on Perl array / sorting - trying to convert Korn Shell Script to Perl

Hi all, Not sure if this should be in the programming forum, but I believe it will get more response under the Shell Programming and Scripting FORUM. Am trying to write a customized df script in Perl and need some help with regards to using arrays and file handlers. At the moment am... (3 Replies)
Discussion started by: newbie_01
3 Replies

5. Shell Programming and Scripting

calling a perl script with arguments from a parent perl script

I am trying to run a perl script which needs input arguments from a parent perl script, but doesn't seem to work. Appreciate your help in this regard. From parent.pl $input1=123; $input2=abc; I tried calling it with system("/usr/bin/perl child.pl $input1 $input2"); and `perl... (1 Reply)
Discussion started by: grajp002
1 Replies

6. Shell Programming and Scripting

Using sed '${linenum}d' $filename in shell

Hi Experts, Please let me know how to below situation: Looking for: sed "${linenum}d" $filename > $filename _Without_7C Working Command: sed "${linenum}d" A020820122200.tis2webGMNA001_GDS_DIDOut.txt > A020820122200.tis2webGMNA001_GDS_DIDOut.txt_Without_7C appriciate if you can... (7 Replies)
Discussion started by: rajubollas
7 Replies

7. Shell Programming and Scripting

executing perl script from another perl script : NOT WORKING

Hi Folks, I have 2 perl scripts and I need to execute 2nd perl script from the 1st perl script in WINDOWS. In the 1st perl script that I had, I am calling the 2nd script main.pl =========== print "This is my main script\n"; `perl C:\\Users\\sripathg\\Desktop\\scripts\\hi.pl`; ... (3 Replies)
Discussion started by: giridhar276
3 Replies

8. Shell Programming and Scripting

Perl : embedding java script with cgi perl script

Hi All, I am aware that html tags can be embedded in cgi script as below.. In the same way is it possible to embed the below javascript in perl cgi script ?? print("<form action="action.htm" method="post" onSubmit="return submitForm(this.Submitbutton)">"); print("<input type = "text"... (1 Reply)
Discussion started by: scriptscript
1 Replies

9. Shell Programming and Scripting

Excuting perl script from within a perl script with variables.

Not sure what I am doing wrong here, but I can print the list with no issue. Just a blank screen with the 'do'. #!/usr/bin/perl open FILE, "upslist.txt"; while ($line=<FILE>){ if ($line=~/^(.*?),(.*?)$/){ #print "ups:$1 string:$2\n"; do 'check_snmp_mgeups-0.1.pl -H $1 -C $2'; } ... (1 Reply)
Discussion started by: mrlayance
1 Replies

10. Programming

PERL: In a perl-scripttTrying to execute another perl-script that SETS SOME VARIABLES !

I have reviewed many examples on-line about running another process (either PERL or shell command or a program), but do not find any usefull for my needs way. (Reviewed and not useful the system(), 'back ticks', exec() and open()) I would like to run another PERL-script from first one, not... (1 Reply)
Discussion started by: alex_5161
1 Replies
ldlread(3x)															       ldlread(3x)

Name
       ldlread, ldlinit, ldlitem - manipulate line number entries of a common object file function

Syntax
       #include <stdio.h>
       #include <filehdr.h>
       #include <syms.h>
       #include <ldfcn.h>

       int ldlread (ldptr, fcnindx, linenum, linent)
       LDFILE *ldptr;
       long fcnindx;
       unsigned short linenum;
       LINER linent;

       int ldlinit (ldptr, fcnindx)
       LDFILE *ldptr;
       long fcnindx;

       int ldlitem (ldptr, linenum, linent)
       LDFILE *ldptr;
       unsigned short linenum;
       LINER linent;

Description
       The  function  searches	the line number entries of the common object file currently associated with ldptr.  The function begins its search
       with the line number entry for the beginning of a function and confines its search to the line numbers associated with a  single  function.
       The  function  is identified by fcnindx, which is the index of its local symbols entry in the object file symbol table.	The function reads
       the entry with the smallest line number equal to or greater than linenum into linent.

       The and functions provide the same behavior as After an initial call to or can be used to retrieve a series of line number entries  associ-
       ated with a single function.  The function simply finds the line number entries for the function identified by fcnindx.	The function finds
       and reads the entry with the smallest line number equal to or greater than linenum into linent.

       The functions and each return either success or failure.  The function fails if one of the following occurs:

       o    If line number entries do not exist in the object file.

       o    If fcnindx does not index a function entry in the symbol table.

       o    If it does not find a line number equal to or greater than linenum.

       The fails if it does not find a line number equal to or greater than linenum.

See Also
       ldclose(3x), ldopen(3x), ldtbindex(3x), ldfcn(5)

								       RISC							       ldlread(3x)
All times are GMT -4. The time now is 12:28 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy