retreiving and assigning values and manipulating string in a for loop


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting retreiving and assigning values and manipulating string in a for loop
# 8  
Old 06-15-2009
Try something like this:

Code:
n=0
psg proc_s | awk '/tY/{split($5,a,":");print a[2]}'| while read s
do
  Sam[$n]="$s"
  n=$(( $n + 1))
  # other code
  # ....
done
echo $Sam[1]

# 9  
Old 06-15-2009
Code:
psg proc_s | awk '/tY/{
m=split($5,a,":")
sam[FNR]=a[2]
}
END{
    for(i in sam){
     print i
    }
}    '

# 10  
Old 06-15-2009
Quote:
Originally Posted by Franklin52
Try something like this:

Code:
n=0
psg proc_s | awk '/tY/{split($5,a,":");print a[2]}'| while read s
do
  Sam[$n]="$s"
  n=$(( $n + 1))
  # other code
  # ....
done
echo $Sam[1]


Hi Franklin ..thanks

tried but its not working...echo $Sam[1] is just giving [1].

i also tried to echo the value on n inside the while loop but it is also not printing..

how can i make this run????

-----Post Update-----

Quote:
Originally Posted by ghostdog74
Code:
psg proc_s | awk '/tY/{
m=split($5,a,":")
sam[FNR]=a[2]
}
END{
    for(i in sam){
     print i
    }
}    '

Hi

the following code
for(i in sam){
print i
}
for(i in sam){
echo $i
}

both are not showing any output

-----Post Update-----

Quote:
Originally Posted by Anteus
Hi Franklin ..thanks

tried but its not working...echo $Sam[1] is just giving [1].

i also tried to echo the value on n inside the while loop but it is also not printing..

how can i make this run????

-----Post Update-----



Hi

the following code
for(i in sam){
print i
}
for(i in sam){
echo $i
}

both are not showing any output

--------------------------------

Please help...what i want..
1)is to get the time in minutes for a particular process
2)from the list of process generated i have to get its command name and arguments
3)and if it is running for more than 50 mins and has more than 2 argument i have to kill it..

but im unable to complete the no.1 also...please help
thanks.


------------

hi ghostdog74

why have u used
sam[FNR]=a[2]

is it pre declaration of the array Size..as we do in c..
i donno things im asking are silly or not..but im entirely new to shell script and any help from u guys is apreciated..
thanks
# 11  
Old 06-15-2009
Quote:
Originally Posted by Anteus
Hi Franklin ..thanks

tried but its not working...echo $Sam[1] is just giving [1].
I apologize, the variable is only available outside the loop in some shells:

Code:
n=0
psg proc_s | awk '/tY/{split($5,a,":");print a[2]}'| while read s
do
  Sam[$n]="$s"
  n=$(( $n + 1))
  echo ${Sam[$n]}
  # other code
  # ....
done


Last edited by Franklin52; 06-15-2009 at 02:45 PM..
# 12  
Old 06-16-2009
Quote:
Originally Posted by Franklin52
I apologize, the variable is only available outside the loop in some shells:

Code:
n=0
psg proc_s | awk '/tY/{split($5,a,":");print a[2]}'| while read s
do
  Sam[$n]="$s"
  n=$(( $n + 1))
  echo ${Sam[$n]}
  # other code
  # ....
done


Its still not echoing..
# 13  
Old 06-16-2009
Post the output of the command psg proc_s within code tags (select the text and click on the # above the edit box).
# 14  
Old 06-16-2009
Quote:
Originally Posted by Franklin52
Post the output of the command psg proc_s within code tags (select the text and click on the # above the edit box).
Code:
n=0
event=`psg proc_s | grep de0`
for line in $event
do
  echo $line
done
 
#...............

n=0
psg proc_s | grep  de0 | awk '/tY/{split($5,a,":");print a[2]}'| while read s
do
  Sam[$n]="$s"
  n=$(( $n + 1))
  echo ${Sam[$n]}
  # other code
  # ....
done


Output
s04:11:/u/Script>Test
crmcint 15326 1 0 14:16:27 ? 0:01 proc_s de08.c
crmcint 16428 1 0 14:35:49 ? 0:00 proc_s de01.cl
crmcint 10272 1 0 13:12:48 ? 0:06 proc_s de03.c
s04:11:/u/Script>
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Assigning values to 2 variables within for loop

Hi All, Is it possible to grep for two files and assign their names to two separate variables with for loop? I am doing the below currently: if then for fname in $( cd $dirA ; ls -tr | grep "^Ucountry_file$") do InFile=$dirA/$fname ... (4 Replies)
Discussion started by: swasid
4 Replies

2. Shell Programming and Scripting

[Solved] Assigning a value to a variable name then running a loop on these values

Hi, I was wondering if anyone could assist me for (what is probably) a very straightforward answer. I have input files containing something like File 1 Apples Apples Apples Apples File 2 Bananas Bananas Bananas Bananas (4 Replies)
Discussion started by: hubleo
4 Replies

3. UNIX Desktop Questions & Answers

Manipulating a list of numbers based on values

Hi, I have a single column of numbers from in tabulated text format ranging from 0 to 1. I want to manipulate the list of numbers so that if the number is greater than 0.5 (> 0.5), I get 1 - number. If the number is less than 0.5, the number is taken as it is and not altered. For example: ... (1 Reply)
Discussion started by: evelibertine
1 Replies

4. Shell Programming and Scripting

Help in assigning values to variables from the file

Hi! This might be a simple thing, but I'm struggling to assign values to variables from the file. I've the following values stored in the file.. It consists of only two rows.. 10 20 I want to assign the first row value to variable "n1" and the second row value to variable "n2".. That is ... (3 Replies)
Discussion started by: abk07
3 Replies

5. Shell Programming and Scripting

Need help in manipulating string variable

I have written a shell script to do some processing and have to manipulate a variable. Basically, the variable is like this -- var=set policy:set cli My purpose is to split it into two variables based on the position of ":". To get the right end, I am doing this -- vaa1=${vaa#*:} ... (1 Reply)
Discussion started by: Dev_Sharma987
1 Replies

6. Shell Programming and Scripting

Assigning values to an array via for/while loop

I need to do something like this: for i in 1 2 3 4 5; do arr=$(awk 'NR="$i" { print $2 }' file_with_5_records) done That is, parse a file and assign values to an array in an ascending order relative to the number of record in the file that is being processed on each loop. Is my... (2 Replies)
Discussion started by: fiori_musicali
2 Replies

7. Shell Programming and Scripting

Assigning the values to an Array

hi every body, i donot know how to assign a array varible with a file see i having file more file property1 Name property2 Address the above two line are tab Space seperated between the property and its value i want to seperate it and assign to... (1 Reply)
Discussion started by: kkraja
1 Replies

8. UNIX for Dummies Questions & Answers

string manipulating

I have a file like this: Tue Apr 15 10:41:47 MDT 2008 FINAL RESULT; 6 Tue Apr 15 10:41:47 MDT 2008 FINAL RESULT; 2 Tue Apr 15 10:41:47 MDT 2008 FINAL RESULT; 5 With this command seira=`cut -f 2 -d ';' tes.txt` i take all the results (6,2,5 etc) and i store them in variable seira When i do... (9 Replies)
Discussion started by: psalas
9 Replies

9. UNIX for Dummies Questions & Answers

assigning values to a variable

i try to get the year and month values using the below shell script when i enter the script like this #!/usr/bin/ksh dd=`DATE +%Y%M` echo $dd it is showing the error as shown below abc.ksh: DATE: not found any suggestions please (3 Replies)
Discussion started by: trichyselva
3 Replies

10. UNIX for Dummies Questions & Answers

Assigning values to an array

The way I've been using arrays currently have been: #!/bin/ksh set -A myArray myArray=value1 myArray=value2 myArray=value3 myArray=value4 Is there a way I can assign values to an array that will automatically place the value into the next element in the array like: myArray=value1... (4 Replies)
Discussion started by: yongho
4 Replies
Login or Register to Ask a Question