You're doing a bit more work than is needed by using sed and wc; Kshell can do that easily and more efficiently than invoking external processes. Here's an example which does pretty much what you are looking for:
Code:
#!/usr/bin/env ksh
id="${1//\"/}" # no need to pipe it through sed to strip quotes
option="${2//\"/}"
shift 2
typeset -a server=( $* ) # capture remaining parms into the server list
total_server=${#server[*]} # no need to pipe it through wc to count; this generates size of the array
for (( i = 0; i < $total_server; i++ ))
do
typeset -u server_upper[$i]=${server[$i]}
done
typeset -u option_upper="$option"
typeset -u id_upper="$id"
echo "$option $option_upper"
echo "$id $id_upper"
echo "$total_server"
echo "${server[0]}"
echo "${server_upper[0]}"
exit
If you are stripping the quotes because someone might enter the command like this:
Code:
command "parm1" "parm2" "server1 server2 server3"
Then you don't need to worry about the quotes -- Kshell will do the right thing and the quotes will be removed by the shell. The example above handles the server list as shown or as
Code:
command p1 p2 server1 server2 server3
(as single tokens, or one quoted token list). It should also handle n servers.
Last edited by agama; 09-17-2012 at 09:02 PM..
Reason: code tag boo-boo
hi,
I have one environment variable like path in my system.But in my program i need to change that path .suppose it has a value "config" now i need to chage it as "config1" or something else.i need to use that variable for complete project.It means at first it will use the old path but after... (4 Replies)
Hello guys,
Look what im doing:
I need to run a process from a SERVER1 to SERVER2, SERVER3 and SERVER4.
The shell of the process is in each SERVER (2 to 4)
So from SERVER1 i do:
for i in SERVER2 SERVER3 SERVER4
do
rsh $i '
./process.sh
'
done
The problem is: each process.sh... (2 Replies)
Hi,
My code is as below:
integer i=7
while ((i <= 5 ));
do
# test_out is a variable which contains data separated by "^".
a= `echo $test_out | cut -d"^" -f$i`
echo "$a"
(( i = i + 1));
done
From the above code, i kept $i after f so that i can capture all the data which is... (1 Reply)
Hi,
I would like to ask if someone knows or accomplished this task in the terminal multiplexer in a single window with multiple splitted pane:
In the script run multiple command at the same time in diff splitted pane or simulatneously.
As an example: I would like to run iptraf, iotop, htop,... (2 Replies)
Hi,
I have two scripts that use the same variable. Say suppose I export that variable in script 1 and try to use it in script 2 where I have declared it locally, what will be the effective value of the variable? Will it take the exported value or the locally declared?
example:
Script1... (4 Replies)
HI,
I have to write a unix script and need your help.
in my application where I have to invoke this script a varialble is there where the value comes in a variable . for example variable can be var=ABC
like this there will be any type of value in the vcariable.
there is a unix directory... (2 Replies)
the scenario is -
If I pass 3 three arguments( run time) , it should list all .txt files from a path to temp file
if I pass 2 arguments ( run time) , it should list all .csv files from the same path to another temp file
the above scenario should be handled in single code and also I dont know ... (2 Replies)
Hello I need to alter a script to check for a flag file but there are now more than one type of flag file in my directory. Basically if any of these flg files exist then the MASK value should be set? Flag files to be included in assignment to variable
e2e_scheduled*.flg
COLL_STOP*.flg... (1 Reply)
Hi,
I am writing a shell script which will check the status of a resource in a cluster and then display nicely to a user running the script at command line.
Basically the script runs a status command and then pulls certain keywords from the return and then should display a concise status.
... (5 Replies)
Hello everybody,
I am trying to assign multiple values from text into a single variable in bash.
Source TXT:
1 THIS IS THE ENTITY1 NAME1
2 THIS IS THE ENTITY2 NAME2
3 THIS IS THE ENTITY3 NAME3
while read id entity name
do
printf "$id" "$entity" "$name"
done <... (2 Replies)
Discussion started by: mrcrowley
2 Replies
LEARN ABOUT XFREE86
times
times(1) User Commands times(1)NAME
times - shell built-in function to report time usages of the current shell
SYNOPSIS
sh
times
ksh
times
DESCRIPTION
sh
Print the accumulated user and system times for processes run from the shell.
ksh
Print the accumulated user and system times for the shell and for processes run from the shell.
On this man page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a vari-
able assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not
performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO ksh(1), sh(1), time(1), attributes(5)SunOS 5.10 15 Apr 1994 times(1)