Sponsored Content
Full Discussion: If Condition in awk
Top Forums Shell Programming and Scripting If Condition in awk Post 302972245 by am24 on Tuesday 3rd of May 2016 09:29:14 AM
Old 05-03-2016
If Condition in awk

Hi All,

I have the below Input:

Code:
1  700 1200  400      1300
2 2000 1000 2000 1500  600
3 1400  200 1000 1000 1200
4 1300  500  600       200


I want to modify the field 5 and field 4 as below.
If value in field 5 is null then value of field 4 should be in field 5. and then the value of field 4 should change to field 2 - field 5.

My output should look like this:

Code:
1  700 1200  300  400 1300
2 2000 1000  500 1500  600
3 1400  200  400 1000 1200
4 1300  500  700  600  200

I have tried the below code but could not bale to get results.

Code:
nawk '{
 if($5 == "") then '$5=$4';
  else
  '$5=$5';
   $4=$2-$5;
   }' sample

Could any one help me on this ?

Thanks in advance.
am24
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk and condition help

Hi... i just want to write a script for the follwing command "display status" and the normal output is... AN100> display status 12.13.2006 12:03:25 AN-2000-1 CC NOT PRESENT 16.50.80.49 status: Status for PACKET GLI A in the TOP / LEFT shelf of frame 0: status: The current active LAN is... (5 Replies)
Discussion started by: gini
5 Replies

2. Shell Programming and Scripting

Problem with IF condition in awk

Hi all; I'm stuck with this simple awk script,i need to group the lines which the position of 28 length 3 that contains "688" into 1 group and other than "688" into another group. My problem is the script only read other than "688" and ignores the lines which contains "688". The file look... (2 Replies)
Discussion started by: ashikin_8119
2 Replies

3. Shell Programming and Scripting

awk with multiple condition

Hi Guys, I just wanted to print all the lines execpt 1st and 3rd line. For that i wrote a awk command, awk 'NR != 1 || NR != 3 {print $0}' c.out the command is working if i give an equal to instead of not equal to. In the case of not equal to, it gives me the entire file. Can you... (18 Replies)
Discussion started by: mac4rfree
18 Replies

4. Shell Programming and Scripting

awk if condition help

Hi, I need little help with awk's if condition statement. I have following code: $ ssh myRemotehost 'ps ww -fu tomcat ' | awk ' { if ($1 == "tomcat") print "tomcat (pid " $2 ") is running... "; else print "tomcat stopped or dead" }' Prints: tomcat stopped or dead tomcat (pid 12345) is... (6 Replies)
Discussion started by: davidtd
6 Replies

5. Shell Programming and Scripting

HELP with AWK one-liner. Need to employ an If condition inside AWK to check for array variable ?

Hello experts, I'm stuck with this script for three days now. Here's what i need. I need to split a large delimited (,) file into 2 files based on the value present in the last field. Samp: Something.csv bca,adc,asdf,123,12C bca,adc,asdf,123,13C def,adc,asdf,123,12A I need this split... (6 Replies)
Discussion started by: shell_boy23
6 Replies

6. Shell Programming and Scripting

awk - Division with condition

Hi Friends, I have an input file like this cat input chr1 100 200 1 2 chr1 120 130 na 1 chr1 140 160 1 na chr1 170 180 na na chr1 190 220 0 0 chr1 220 230 nd 1 chr2 330 400 1 nd chr2 410 450 nd nd chr3 500 700 1 1 I want to calculate the division of 4th and 5th columns. But, if... (3 Replies)
Discussion started by: jacobs.smith
3 Replies

7. UNIX for Dummies Questions & Answers

awk - if else condition

Need help in awk command. Need to check 4th column of a file, if it is CAR then awk should print as is and if 4th column is not present, awk should print BIKE Input File content : 1,abc,55,CAR 3,bb,dd,CAR 5,ddd,tttt 8,ee,55 --------------------- Out put will look like: 1,abc,55,CAR... (6 Replies)
Discussion started by: vegasluxor
6 Replies

8. Shell Programming and Scripting

awk condition

Hi Gurus, one of my current script, there is awk statement as below: awk '{a=a?a" "$3:$3}END{for (i in a) print i,a}' I don't understand what's "{a=a?a" "$3:$3}" mean? can anybody give me a brief explaination. thanks in advance. (3 Replies)
Discussion started by: ken6503
3 Replies

9. Shell Programming and Scripting

Using like operator in awk if condition

Hello All, I have developed a script which selects a particular filed from a file ,trims it,searches for a particular pattern and then mail it when found. cat test_file.txt |sed -n '5,$p'|sed -e 's/ //g'|awk -F'|' '{if ($4 !="Alive") print $1,$2,$3,$4}' >> proc_not_alive.txt It is... (4 Replies)
Discussion started by: karthik adiga
4 Replies

10. UNIX for Beginners Questions & Answers

If condition on awk

Hi All, Would you guys help me? I have a file that consists of several unstructured fields. in this file I will take the code field and count_berry field. but the position of the count_berry field is always changing.the column for code is always structured, which is found in column 6 I have... (4 Replies)
Discussion started by: kivale
4 Replies
Date::Manip::DM5abbrevs(3)				User Contributed Perl Documentation				Date::Manip::DM5abbrevs(3)

NAME
Date::Manip::DM5abbrevs - A list of all timezone abbreviations SYNPOSIS
This module is not intended to be used directly. Date::Manip 5.xx will load it as needed. This module contains all of the time zone abbrevations from Date::Manip 6.xx copied backwards to 5.xx to provide slightly better support for time zones. Note that this is only a bandaid fix, and does not add proper time zone handling to version 5.xx . TIMEZONES
The following timezones are defined: A -0100 ACDT +1030 ACST -0400 ACT -0500 ADDT -0200 ADT -0300 AEDT +1100 AEST +1000 AFT +0430 AHDT -0900 AHST -1000 AKDT -0800 AKST -0900 AKTST +0600 AKTT +0500 ALMST +0700 ALMT +0600 AMST -0300 AMT -0400 ANAST +1200 ANAT +1200 ANT -0430 APT -0300 AQTST +0500 AQTT +0500 ARST -0200 ART -0300 ASHST +0500 ASHT +0400 AST -0400 AT -0200 AWST +0800 AWT -0300 AZOMT +0000 AZOST +0000 AZOT -0100 AZST +0500 AZT +0400 B -0200 BAKST +0400 BAKT +0400 BDST +0700 BDT +0600 BEAT +0230 BEAUT +0245 BNT +0800 BORT +0800 BORTST +0820 BOT -0400 BRST -0200 BRT -0300 BST +0100 BT +0300 BTT +0600 BURT +0630 C -0300 CADT +1030 CANT -0100 CAPT -0900 CAST +1100 CAT +0200 CAWT -0900 CCT +0630 CDDT -0400 CDT -0500 CEMT +0300 CEST +0200 CET +0100 CGST -0100 CGT -0200 CHADT +1345 CHAST +1245 CHAT +0830 CHDT -0530 CHOST +1000 CHOT +0800 CHST +1000 CHUT +1000 CIT +0800 CJT +0900 CKHST -0930 CKT -1000 CLDT -0300 CLST -0300 CLT -0400 CMT +0155 COST -0400 COT -0500 CPT -0500 CST -0600 CUT +0220 CVST -0100 CVT -0100 CWST +0845 CWT -0500 CXT +0700 D -0400 DACT +0600 DAVT +0700 DDUT +1000 DUSST +0600 DUST +0600 E -0500 EADT +1100 EASST -0500 EAST -0600 EAT +0300 ECT -0500 EDDT -0300 EDT -0400 EEST +0300 EET +0200 EETDST +0300 EETEDT +0300 EGST +0000 EGT -0100 EHDT -0430 EIT +0900 EPT -0400 EST -0500 EWT -0400 F -0600 FET +0300 FJST +1300 FJT +1200 FKST -0300 FKT -0400 FMT -0053 FNST -0100 FNT -0200 FORT +0500 FRUST +0600 FRUT +0600 FST +0200 FWT +0100 G -0700 GALT -0600 GAMT -0900 GB +0100 GBGT -0345 GEST +0400 GET +0400 GFT -0300 GHST +0020 GILT +1200 GMT +0000 GMT+1 +0100 GMT+10 +1000 GMT+11 +1100 GMT+12 +1200 GMT+2 +0200 GMT+3 +0300 GMT+4 +0400 GMT+5 +0500 GMT+6 +0600 GMT+7 +0700 GMT+8 +0800 GMT+9 +0900 GMT-1 -0100 GMT-10 -1000 GMT-11 -1100 GMT-12 -1200 GMT-13 -1300 GMT-14 -1400 GMT-2 -0200 GMT-3 -0300 GMT-4 -0400 GMT-5 -0500 GMT-6 -0600 GMT-7 -0700 GMT-8 -0800 GMT-9 -0900 GST -0200 GYT -0400 H -0800 HADT -0900 HAST -1000 HDT -0930 HKST +0900 HKT +0800 HOVST +0800 HOVT +0700 HST -1000 I -0900 ICT +0700 IDDT +0400 IDLE +1200 IDLW -1200 IDT +0300 IHST +0600 IOT +0600 IRDT +0430 IRKST +0900 IRKT +0900 IRST +0330 ISST +0000 IST +0200 IT +0330 JAVT +0720 JDT +1000 JST +0900 K -1000 KART +0500 KAST +0500 KDT +1000 KGST +0600 KGT +0600 KIZST +0600 KIZT +0500 KOST +1100 KRAST +0800 KRAT +0800 KST +0900 KUYST +0300 KUYT +0300 KWAT -1200 L -1100 LHST +1100 LINT +1400 LKT +0600 LONT +0700 M -1200 MADMT +0100 MADST +0000 MADT -0100 MAGST +1200 MAGT +1200 MALST +0720 MALT +0730 MART -0930 MAWT +0500 MDDT -0500 MDT -0600 MEST -0800 MESZ +0200 MET +0100 METDST +0200 MEWT +0100 MEZ +0100 MHT +1200 MIST +1100 MMT +0630 MOST +0900 MOT +0800 MPT +1000 MSD +0400 MSK +0400 MST -0700 MUST +0500 MUT +0400 MVT +0500 MWT -0600 MYT +0800 N +0100 NCST +1200 NCT +1100 NDDT -0130 NDT -0230 NEGT -0330 NEST +0120 NET +0020 NFT +1130 NMT +1112 NOVST +0700 NOVT +0700 NPT +0545 NRT +1200 NST -0330 NT -1100 NUT -1100 NWT -1000 NZDT +1300 NZMT +1130 NZST +1200 NZT +1200 O +0200 OMSST +0700 OMST +0700 ORAST +0500 ORAT +0500 P +0300 PDDT -0600 PDT -0700 PEST -0400 PET -0500 PETST +1200 PETT +1200 PGT +1000 PHOT +1300 PHST +0900 PHT +0800 PKST +0600 PKT +0500 PMDT -0200 PMST -0300 PMT +1000 PNT -0830 PONT +1100 PPMT -0449 PPT -0700 PST -0800 PWT +0900 PYST -0300 PYT -0400 Q +0400 QMT -0514 QYZST +0700 QYZT +0600 R +0500 RET +0400 ROK +0900 ROTT -0300 S +0600 SAKST +1100 SAKT +1100 SAMST +0400 SAMT +0400 SAST +0200 SAT -0400 SBT +1100 SCT +0400 SDMT -0440 SGT +0800 SHEST +0600 SHET +0500 SLST +0100 SMT +0216 SRT -0300 SST -1100 STAT +0400 SVEST +0500 SVET +0400 SWAT +0130 SWT +0100 SYOT +0300 T +0700 TAHT -1000 TASST +0600 TAST +0600 TBIST +0400 TBIT +0400 TFT +0500 TJT +0500 TKT +1300 TLT +0900 TMT +0500 TOST +1400 TOT +1300 TRST +0400 TRT +0300 TSAT +0300 TVT +1200 U +0800 ULAST +0900 ULAT +0800 URAST +0500 URAT +0400 URUT +0600 UT +0000 UTC +0000 UYHST -0230 UYST -0200 UYT -0300 UZST +0600 UZT +0500 V +0900 VET -0430 VLASST +1000 VLAST +1100 VLAT +1100 VOLST +0400 VOLT +0400 VOST +0600 VUST +1200 VUT +1100 W +1000 WAKT +1200 WARST -0300 WART -0400 WAST +0200 WAT +0100 WEMT +0200 WEST +0100 WET +0000 WFT +1200 WGST -0200 WGT -0300 WIT +0700 WMT +0124 WSDT +1400 WST +0800 X +1100 Y +1200 YAKST +1000 YAKT +1000 YDDT -0700 YDT -0800 YEKST +0600 YEKT +0600 YERST +0400 YERT +0400 YPT -0800 YST -0900 YWT -0800 Z +0000 ZP4 +0400 ZP5 +0500 ZP6 +0600 LICENSE
This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself. AUTHOR
Sullivan Beck (sbeck@cpan.org) perl v5.16.3 2014-06-09 Date::Manip::DM5abbrevs(3)
All times are GMT -4. The time now is 10:06 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy