Sponsored Content
Top Forums Shell Programming and Scripting need help to pass arguments in script Post 302320924 by namishtiwari on Friday 29th of May 2009 10:15:19 AM
Old 05-29-2009
need help to pass arguments in script

Hi,

I have a my script here--

Code:
print "The Perl Script does the User health check and system health check...\n";
print "---------------------------------------------------------------------\n";
# use strict;
my($OS);
$OS = $^O;
# need to test @ARGV before GetOptions shifts it
if (@ARGV == 0) {
   print "\nNo options provided, using defaults (use -h to view options)\n";
}

#GetOptions( 'h|help' => \$_help
        #   ,'u|userdata' => \$_userdata
        #   ,'s|systemdata' => \$_systemdata
		 #  ,'a|authresponsecode' => \$_authresponsecode
		 #  ,'o|outpur_dir' => \$_output_dir);
	  
#if( $_help ) {
  # printUsage(); # automatically exits the program
#}
use Getopt::Std;


##############################################################################
# Print the usage info and automatically exit
##############################################################################
sub printUsage() {
   print "\n\nUsage:";
   print "\n  perl MSLogStat.pl [options] [logfile1] [logfile2] ... [logfile(n)]";
   print "\n\nOptions:";
   print "\n  -h            * display usage help";
   print "\n  -o            * redirect the output to a directory";
   print "\n  -u            * display user related data";
   print "\n  -a            * display auth response codes";
   print "\n  -s            * output only system related data";
   print "\n";
   exit;
}
##############################################################################
# Print the authresponsecode
##############################################################################
sub authResponseCode () {
	print "AAFW_AUTH_SUCCESS				= 0";
	print "AAFW_AUTH_MORESTEPS				= 1";
	print "AAFW_AUTH_ID_NOT_FOUND			= 2";
	print "AAFW_AUTH_INVALID_CREDENTIAL	    = 3";
	print "AAFW_AUTH_ACCOUNT_EXPIRED		= 4";
	print "AAFW_AUTH_ACCOUNT_INACTIVE		= 5";
	print "AAFW_AUTH_ATTEMPTS_EXHAUSTED	    = 6";
	print "AAFW_AUTH_TOKEN_EXPIRED			= 7";
	print "AAFW_AUTH_CHALLENGE_EXPIRED		= 8";
	print "AAFW_AUTH_INVALID_REQUEST		= 9";
	print "AAFW_AUTH_CRED_REISSUED			= 10";
	print "AAFW_AUTH_INTERNAL_ERROR		    = 11";
	print "AAFW_AUTH_UNSUPPORTED_MECH		= 12";
    print "AAFW_AUTH_LAST					= 13";
}
# redirect output to a directory:
if( $_output_dir ) {	
   # does this directory already exist?
   if (! -e $_output_dir) {
      if( $OS =~ "Win32" ) {
      	`mkdir $_output_dir`;
      }
      else
      {
      	`mkdir -p $_output_dir`;      	
      }
   }
   if (! -e $_output_dir) {
      die "Failed to create output directory $_output_dir\n";
   }
}

if( $_authresponsecode ) {
	print "Printing the Auth Response Codes";
	authresponsecode();
}

sub userData() {
   #$LOG = $_logfile_name;
   $username=$2;
   open($LOG,"logfile.txt") or die "\nUnable to open log file:\n";
   @stock = <$LOG>; 
   @matches = (grep(/$username/, @stock));
   print @matches;
}
my $opt = "hu:sao";
my %options;
getopts( $opt , \%options );
printUsage() if  defined  $options{h} ;
authResponseCode() if defined  $options{a} ;
userData() if defined  $options{u} ;

in function userData() i want to make changes so that my script take username as command line arguement and logfile name also to be entered from command line,it can be multiple log files.
Please advice me how can i do that. Please do suggest me if you find something to be changed here to work it more efficiently.

Thanks
NT
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to pass arguments to a function in a shell script?

Hi, I have two shell variables $t1 and $t2 which I need to pass to a function in a shell script. The function will do some computation with those two variables and echo the resultant. But I do not know how to pass teh arguments. The function written is f1() {...... ........ } What should... (3 Replies)
Discussion started by: preetikate
3 Replies

2. Shell Programming and Scripting

Need help to pass arguments to shell script

Hi, I have a shell script called ftp.sh which is running continously in background. I tried passing arguments to this script but it did not worked out. Below is ftp.sh script. Please help me case $param in start) sleep_func "300" echo "!ksh $scr_ddir/ftp.sh... (1 Reply)
Discussion started by: bhargav20
1 Replies

3. UNIX for Advanced & Expert Users

How to pass arguments to an interactive script

Hey guys, I have an interactive script that is quite critical to our production environmentl thus updating it to run non-interactively is not an option. The script takes a varying number of arguments, which it ques untill user confirm end of data entry e.g of user input : 1 2 y ... (3 Replies)
Discussion started by: geek.ksa
3 Replies

4. Shell Programming and Scripting

To pass arguments to makefile using script

Hi, I want to run a target of makfile using script by passing different arguments to it again n again. I i need to grep certain things from the log file. eg make abc KAB=8 BAC=8 >& KAB_BAC.log grep "timeA" KAB_BAC.log grep "timeB" KAB_BAC.log (i want to store the difference of the two time... (0 Replies)
Discussion started by: vdhingra123
0 Replies

5. Shell Programming and Scripting

How to pass arguments to an sftp script??

hi, Is it possible to pass arguments to a sftp script and use those arguments in the program? for example sftp_script FILENAME=$1 #!/usr/bin/expect spawn /usr/bin/sftp abc@ftp.abc.com expect "abc@ftp.abc.com's password:" send "pass\r" expect "sftp>" send "mput $FILENAME\r"... (9 Replies)
Discussion started by: Little
9 Replies

6. Shell Programming and Scripting

Pass arguments to bash script

myscript.sh #!/bin/bash ARGA=$1 if ; then echo "${ARGA}:Confirmed" else echo "${ARGA}:Unconfirmed" fi when I run the above script from the command line, i run it as: ./myscript.sh jsmith now some times, i need to runn it this way: (8 Replies)
Discussion started by: SkySmart
8 Replies

7. Shell Programming and Scripting

How to pass arguments to an interactive script?

I've tried to find a solution to this, but I"m stumped. OS - RH Linux 5.9 I have a bash script <myProgram.sh> that gets executed manually and creates a small response file. I'm trying to automate the running of this script. When myProgram.sh runs, it prompts the user to enter 2 pieces of... (13 Replies)
Discussion started by: progkcp
13 Replies

8. Shell Programming and Scripting

Pass Arguments to Command from Shell Script

Hi all, I am working on a project, in which I have to connect to Bluetooth low energy device. I am able to connect and do data transfer from command line. But I want to do from script Here is my script #!/bin/bash #sudo hcitool -i hci0 lescan sleep 1 sudo hcitool -i hci0 lecc --random... (8 Replies)
Discussion started by: nithin@embdes
8 Replies

9. Shell Programming and Scripting

Need to pass arguments while running a Shell Script

Shell Script Gurus, I am writing a shell script which needs User ID's to pass as an Arguments in command line while executing. Can this be doable? I've never done this, If you give a sample script that would be helpful, Thanks. (1 Reply)
Discussion started by: shekar777
1 Replies

10. Shell Programming and Scripting

Cat a script, pipe it, then pass arguments to it?

suppose i have a perl script that is normally run this way: ./checkdisk.pl -H hostname -w 40 -c 80 but, for whatever reason, i cannot run the script directly as it should. But i can cat it through pipe. How can i pass the arguments "-H hostname -w 40 -c 80"? so this is what i'm doing,... (6 Replies)
Discussion started by: SkySmart
6 Replies
UNAME(1)						    BSD General Commands Manual 						  UNAME(1)

NAME
uname -- Print operating system name SYNOPSIS
uname [-amnprsv] DESCRIPTION
The uname utility writes symbols representing one or more system characteristics to the standard output. The following options are available: -a Behave as though all of the options -mnrsv were specified. -m print the machine hardware name. -n print the nodename (the nodename may be a name that the system is known by to a communications network). -p print the machine processor architecture name. -r print the operating system release. -s print the operating system name. -v print the operating system version. If no options are specified, uname prints the operating system name as if the -s option had been specified. SEE ALSO
hostname(1), machine(1), sw_vers(1), uname(3) STANDARDS
The uname utility conforms to IEEE Std 1003.2-1992 (``POSIX.2''). The -p option is an extension to the standard. BSD
November 9, 1998 BSD
All times are GMT -4. The time now is 07:07 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy