sed to check two condition need solution


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting sed to check two condition need solution
# 1  
Old 07-20-2012
sed to check two condition need solution

Hi,

I am having a file in below format
HTML Code:
server-1 Win2008:server-1-1700,1774,290104720,290104987:server-1
server-2 AIX:server-2-:server-2 server-2
I want the output like this

HTML Code:
Win2008:server-1-1700,1774,290104720,290104987:standalon-server
AIX:server-2-:VIO-Sever
I used the cat script but i am not able to check to conduction
server-1 ---> Replace to standalon-server
server-2 server-2---> VIO server

Code:
cat all.txt |grep server-2|sed -e "s/server-2 //"| sed -e "s/server-2//"|sed -e "s/server-2/standalon-server/" "s/server-2 server-2/VIO/"

# 2  
Old 07-20-2012
Code:
awk 'NR==FNR { A[$1]=$2; next } { print $2":"A[$1] }' listfile inputfile

With listfile like
Code:
server-1 standalon-server
server-2 VIO-server

# 3  
Old 07-20-2012
But i also need the all other colume also
Code:
Win2008:server-1-1700,1774,290104720,290104987:standalon-server
AIX:server-2-:VIO-Sever


Last edited by Scrutinizer; 07-22-2012 at 03:20 AM.. Reason: code tags instead of quote tags
# 4  
Old 07-20-2012
Hi,
check this solution :

listfile content:
Code:
server-1:standalon-server
server-2 server-2:VIO-server

Code:
awk -F: 'NR==FNR { T[$1]=$2; next } {OFS=":"; sub(/^server-. /,""); sub($NF,T[$NF],$NF); print}' listfile your-input-file-name

# 5  
Old 07-21-2012
Bug

Hope this helps you. I have kept it simple:
Code:
awk '{print $2}' input_file | awk -F ":" '{if($1=="Win2008") $3=standalon-server;else $3=VIO-server; print $0;}

or
Code:
awk '{print $2}' input_file | awk -F ":" 'NR==1{$3=standalon-server;} NR==2{ $3=VIO-server;} {print $0};}

# 6  
Old 07-22-2012
Quote:
Originally Posted by ranjancom2000
But i also need the all other colume also
Code:
Win2008:server-1-1700,1774,290104720,290104987:standalon-server
AIX:server-2-:VIO-Sever

Did you try Corona688's suggestion?
# 7  
Old 07-23-2012
I tried but iam getting error
Code:

$ awk 'NR==FNR { A[$1]=$2; next } { print $2":"A[$1] }' listfile all.csv
awk: fatal: cannot open file `listfile' for reading (No such file or directory)

So I make this report simple by doing manual work from excel filter.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Check two condition in while loop

Hi, I Have to check two condition in while loop every 2 minutes. while loop is accompanied with number of times it will check.Please help in putting the two condition in while loop as appropriate. z= input value, A=1 while do 1.check the file output,if the file output is N then keep on... (2 Replies)
Discussion started by: netdbaind
2 Replies

2. Shell Programming and Scripting

sed or awk Solution

Hi I am having a csv file like this ahsh,90.82,add,32424,ahha hhdh,98.89,hdhdh,92728,neha hshs,you,97.7,hdhdhd,are,a jsjsj,wonderful,9788,79.9,aheh ahdh,95.5,girl, 2737,jolllI need to add width="100" to the value which is greater than 90 like decimal points but less than 100 Output... (5 Replies)
Discussion started by: kshitij
5 Replies

3. UNIX for Dummies Questions & Answers

Condition check using awk

Hi, I have a file in the following format "SYLVESTER,WILLARD G"|"S00633600"|"221052958A"|"H2256"|"015"|""|"00000042BASJ"|"665303"|"N"|"20100211"|"380.4"|""|""|""|"5400"|"20110218"|""|"20110218"|"FEESC"|"D"|"F"|"P" "PURINGTON-KELLEY,C"|"S00808783"|"029424717A"|"H2256"|"024"|"MEMBER JOINED... (3 Replies)
Discussion started by: nua7
3 Replies

4. Shell Programming and Scripting

AWK or SED solution

Hello. I have big file data like this(part of file): .... 18210102021010000110 47401000000 021001 5166891.16 021011 5166891.16 18210602010020000110 47401000000 020701 8995421.00 021001 8995421.00 021011 8995421.00 030801 .08 18210604011020000110 47401000000 020701 9048.00 021001... (3 Replies)
Discussion started by: maxoff
3 Replies

5. Shell Programming and Scripting

WHILE LOOP CONDITION CHECK

Hello I want to compare values of two variables as CHECK condition in a while loop. eg: var1=0 var2=10 while do echo " $var1 " var1=`expr $var1 + 1` done However this is giving error.How to do it in a proper manner? Thanks. (3 Replies)
Discussion started by: dashing201
3 Replies

6. Shell Programming and Scripting

Urgent solution for simple sed

Hi Im running this command on AIX in ksh. My input file samp1 contains 1 2 123 12345 When I execute the following sed i dont get a matching pattern sed -n '/{1}/p' samp1 Can anyone help me with this simple thing (3 Replies)
Discussion started by: raghav288
3 Replies

7. Shell Programming and Scripting

sed solution for condition checking

Hi all , Recently i came across this in FAQ's. I have a file cat rem.txt sreedhar 20 sreedhar 10 sreedhar 15 sreedhar 18 sreedhar 16 sreedhar 30 I have to replace sreedhar with "Sridhar" if the second parameter is > 18. I need to do it in "sed" only. I am wondering how this... (4 Replies)
Discussion started by: panyam
4 Replies

8. UNIX for Advanced & Expert Users

Need solution concatenate and display 2 lines as 1 with a condition for 2 line ?

I have 2 pattern of lines (SQL query and Time taken)in a log i need to capture all SQL queries with time taken >20 sec and need to display as one line. 2 lines from log: 2007-10-23 11:39:17,061 DEBUG - SQL Query : SELECT A.GROUP_CD , C.FN_CD FROM UP_GROUP A , PRD_GROUP_TO_FN B , PRD_FN... (1 Reply)
Discussion started by: vithala
1 Replies

9. Shell Programming and Scripting

Is There a Sed Solution for This?

Hi All, I'm trying to use sed to extract data within a String, but I'm having problems with sed command: Text: STATUS OSRC_R6_0_MENT_R1H_CU M_901662 R1H_LV1_20080313 Based from the Text above, I just need to extract this data R6_0 R1H_CU LV1 Is there a solution for this in... (1 Reply)
Discussion started by: racbern
1 Replies
Login or Register to Ask a Question

Featured Tech Videos