print to more than one outfile AWK


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
# 1  
print to more than one outfile AWK

I'd like to do an if / else if condition and print to different files.

Something like:

Code:
awk '{ 
      if ($1 == "yes")  print $2, $4 < infile > outfile1 ;
else if ($1 == "No")   print $2, $4 < infile > outfile2  

}'

Obviously I don't know the syntax.

Thanks so much.

Last edited by zaxxon; 12-18-2009 at 06:52 AM.. Reason: use code tags please, thank you
# 2  
Code:
awk '$1=="yes"{print $2, $4 > outfile1} $1=="no"{print $2, $4 > outfile2}' infile

-or-
Code:
awk '{if ($1=="yes"){print $2, $4 > "outfile1"} 
      if($1=="no"){print $2, $4 > "outfile2"}
     }' infile

-or-
Code:
awk '{p=($1=="yes")?1:2; print $2, $4 > "outfile"p}' infile


Last edited by Scrutinizer; 12-17-2009 at 06:39 PM..
# 3  
Code:
awk '
  $1 == "yes" { print $2, $4 > "outfile1" }
  $1 == "no" { print $2, $4 > "outfile2" }
' infile

# 4  
Thanks so much. That worked.

Smilie
# 5  
Code:
gawk '$1~/^(yes|no)$/{ print $2,$4 > "outfile."$1}' inputfile


Last edited by Scott; 12-17-2009 at 10:29 PM..
# 6  
Quote:
Originally Posted by ichigo
Code:
gawk '$1~/^(yes|no)$/{ print $2,$4 > "outfile."$1}' inputfile

No-where in the OP's question did I see where the output files should be called output.yes or output.no...

I don't have gawk, and your code doesn't work with awk.
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #156
Difficulty: Easy
The first two-network TCP/IP communications test was performed between Stanford and University College London, in 1975.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

INTO OUTFILE Error 2

Good day, I am trying to run the following command but it does not seem to work. # mysql -pPassword asteriskcdrdb -s -b -e "select 'Account ID','Destination','Operator','Provider','Date','BillSec','Rate id','Cost' UNION select accountcode,dst,'PBX',route_name,date_format(calldate,'%Y/%c/%e... (8 Replies)
Discussion started by: esgaroth32
8 Replies

2. UNIX for Dummies Questions & Answers

xls2csv.py won't print to outfile

Hi, I'm trying to use pyExcelerator's module "xls2csv" converter in ubuntu. The following works great, except the standard out is in the terminal. sudo python xls2csv.py test.xls I want the csv delimited output to be redirected to a file. When I enter.... sudo python xls2csv.py test.xls... (5 Replies)
Discussion started by: jdilts
5 Replies

3. UNIX for Dummies Questions & Answers

Outfile

Hi guys! So I have a program that allows the user to enter a file, change some characters (for example, a changes to t, etc.) and then save the new file under a new name. However, I need to press carriage return twice for the program to end. I was just wondering if anyone knew of a way for the... (2 Replies)
Discussion started by: PerlNutt
2 Replies

4. Shell Programming and Scripting

Copying the Header & footer Information to the Outfile.

Hi I am writing a perl script which checks for the specific column values from a file and writes to the OUT file. So the feed file has a header information and footer information. I header information isaround107 lines i.e. Starts with START-OF-FILE ....... so on .... ... (11 Replies)
Discussion started by: filter
11 Replies

5. Shell Programming and Scripting

Difference of two data files & writing to an outfile.

Hi Everyone, I have two files i.e. one file2 contains today's data and the other file1 contains Yesterday's data. The data in the files contains 226 columns and the data for the coulums separated by a Pipe "|" delimiter. Now, I have 4 Primary keys (coulumns) by which I have to compare file2 and... (10 Replies)
Discussion started by: filter
10 Replies

6. UNIX for Dummies Questions & Answers

How to outfile contant as an input for a command

I`m having output file which contain following no which changes every time i run script.The number given below are there in file and i have to fatch them from file. 12 15 56 158 365 165 598 568 265 256 258 now i want to use above number from output to input as $j r=`/omp/bin/ICIC... (1 Reply)
Discussion started by: nitin_aaa27
1 Replies

7. Shell Programming and Scripting

Awk problem: How to express the single quote(') by using awk print function

Actually I got a list of file end with *.txt I want to use the same command apply to all the *.txt Thus I try to find out the fastest way to write those same command in a script and then want to let them run automatics. For example: I got the file below: file1.txt file2.txt file3.txt... (4 Replies)
Discussion started by: patrick87
4 Replies

8. Shell Programming and Scripting

How to extract some parts of a file to create some outfile

Hi All, I am very new in programming. I need some help. I have one input file like: Number of disabled taxa: 9 Loading mapping file: ncbi.map Load mapping: taxId2TaxLevel: 469951 --- Subsample reads (20%): 66680 of 334386 Processing: tree-from-summary Running tree-from-summary... (21 Replies)
Discussion started by: iammitra
21 Replies

9. Shell Programming and Scripting

Setting outfile with (brackets)

I have a file that comes in as 20081002_invoices.txt and needs to go out as invoices(20081002).xls When ran this file should have three seperate fields as follows: column1 column2 column3 data1 data2 data3 when i run the script it produces the invoices(20081002).xls but moves... (1 Reply)
Discussion started by: Pablo_beezo
1 Replies

10. Shell Programming and Scripting

How do I get awk to print a " in it's print part?

The line is simple, use " '{ print $1"]"$2"\"$3THE " NEEDS TO GO HERE$4 }' I've tried \", "\, ^" and '"" but none of it works. What am I missing? Putting in the [ between $1 and $2 works fine, I just need to do the same with a ". Thanks. (2 Replies)
Discussion started by: LordJezo
2 Replies

Featured Tech Videos