Any idea how to get it to display the number line it's on? I thought of adding a counting integer variable to the code which would increment "++" if it finds a match, but not sure if that would work right? I also would like to swap the case switch for an if loop so I can keep the shell sort function in the same shell (and not have to call a second shell), unless you know how I can put multiple lines of code in a case switch (not just one thing; I've tried to put multiple lines in a case but cannot get that to work right)?
You already put the content lines of the file into an array, so you can use the array index to display the line number. Using an extra counter is not necessary. Please see the comments in the code below.
Code:
#!/usr/bin/perl -w
# Why need this line?
#use 5.010;
my $look = shift;
print "Enter a word to search for\n";
my $find = <STDIN>;
chomp($find); # Remove the newline at the end. Otherwise, pattern matching will fail
print "Lines that matched $find\n";
open(FILE, "<$look");
my @file_array = <FILE>;
my $found = 0; # Use a flag to indicate the word can be matched or not
# Use for loop and (i + 1) will be the line number
for (my $i = 0; $i < @file_array; $i++)
{
my $line = $file_array[$i];
chomp($line); # Remove the newline at the end before matching
if ($line =~ m/$find/i)
{
print "The word $find is found on line ".($i + 1).": $line\n"; # Display the matched line with (i + 1) as line number
$found = 1;
}
}
# Put this out of the loop since it should display only once
print "Not found\n" if (!$found);
close FILE;
Last edited by MacMonster; 10-25-2011 at 12:18 AM..
Reason: Add some comments
This User Gave Thanks to MacMonster For This Post:
i have a function defined in one ksh (ksh 1)
i want to use that function in another ksh (ksh 2)
i am using
. $<directoryname>/<ksh name>
i am calling the function defined in ksh 1 in ksh 2
i want the returnstatus from the above operation
but it is not executing the function
what i... (1 Reply)
Hi,
I have searched the forum for the query, But i didnt find an exact answer.
I have a script(1.sh) and a c program(sample.c)
sample.c contains many function definitions.( run(), find(), add() etc).
I want to call functions in sample.c from 1.sh and use the return value in 1.sh... (3 Replies)
Some Code
After Some code part is executed the control doesnt go to rvin_doxx_scrt.. and the script exits
rvin_doxx_scrt()
{
Some Code
}
if (som code)
... (4 Replies)
This is my function which is creating three variables based on counter & writing these variable to database by calling another function writeRecord
but only one record is getting wrote in DB.... Please advise ASAP...:confused:
function InsertFtg
{
FTGSTR=""
echo "Saurabh is GREAT $#"
let... (2 Replies)
Hello all,
I know this is Unix forum, but i also know that there are some experts here who can help me out with this situation;
I am loading a data file into oracle table using Perl script by calling sqlldr script.
It does not do anything, and no data is getting loaded.
Any help,... (2 Replies)
I need to
1.Open a csv
2.Process the csv i.e. Modify 2 column in the csv.
To modify the column the value needs to be passed to a pl/sql function and the return value should be updated
For eg:
If column 2 E,then E will be passed in database function
which will return Employee.
3. Write a... (5 Replies)
I have a function which does awk proceessing
sub mergeDescription {
system (q@awk -F'~' '
NR == FNR {
A = $1
B = $2
C = $0
next
}
{
n = split ( C, V, "~" )
if... (3 Replies)
Hi,
I am new to shell scripting and i need to write a automation script to execute sql files. I need to check the table if it is there in system tables and need to write a function to call the .sql files.
For ex. I have a.sql,b.sql,c.sql files, where the sql file contains DELETE and INSERT... (1 Reply)
Discussion started by: Samah
1 Replies
LEARN ABOUT ULTRIX
lmfsetup
lmfsetup(8) System Manager's Manual lmfsetup(8)Name
lmfsetup - License Management Facility PAK registration script
Syntax
/etc/lmfsetup [ template ]
Description
The script allows you to register data supplied by a Product Authorization Key (PAK). The script prompts you for the data associated with
each of the fields on a PAK. When all the data has been entered, the License Management Facility (LMF) ensures there are entries against
all the mandatory fields, and that the Checksum validates all the license data. If the data has been entered correctly, the PAK is regis-
tered in the License Database. If the data has been entered incorrectly, the appropriate error message is displayed and you are given the
opportunity to re-enter the data.
The template option allows you to register license data from templates in A template containing a partially complete PAK is created by some
products as part of their installation process. The script only prompts you for data on the fields that are empty in the template. If the
script cannot find the specified template in it searches the current directory.
The script is provided as an alternative to the command. This displays a template, which includes the fields on the PAK, and invokes an
editor so that you can add the license data to the appropriate field. The command also allows errors to be corrected without having to re-
enter all the data.
See Alsolmf(8)
Guide to Software Licensing
lmfsetup(8)