Solved

How to write this shell script

Posted on 2009-04-03
2
200 Views
Last Modified: 2013-12-26
Hi experts,

I have many files in following format

22  cpv 88  99  cpithisis
33  cpi 90  22  hecpvto
11  cpi ee  pp  timecpi
10  cpv 3e  79  shecpvcomes


The 2nd column is either "cpv" or "cpi". Each line has 5 columns and columns are "\t" seperated. Now I want to use shell script to split those lines of "cpv" to one file and "cpi" to another file.

I use following script but it is not correct. Can anybody help me to correct it?

Thanks so much.

cat *cpv_cpi*.txt | awk '{if ($2=="cpv") print $0}' | gzip > aa.txt

Open in new window

0
Comment
Question by:davidw88
2 Comments
 
LVL 10

Accepted Solution

by:
cyberstalker earned 125 total points
ID: 24060926
The command you posted should work to put all the lines with cpv as second argument in a zipped file.


# put all lines with cpv in a gzipped file called aa.txt.gz and cpi into bb.txt.gz
cat *cpv_cpi*.txt | awk '{if ($2=="cpv") print $0}' | gzip > aa.txt.gz
cat *cpv_cpi*.txt | awk '{if ($2=="cpi") print $0}' | gzip > bb.txt.gz
 
# do the same, but now uncompressed
cat *cpv_cpi*.txt | awk '{if ($2=="cpv") print $0}' > aa.txt
cat *cpv_cpi*.txt | awk '{if ($2=="cpi") print $0}' > bb.txt

Open in new window

0
 

Author Comment

by:davidw88
ID: 24060972
Great. Thanks cyberstalker!
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction: Hints for the grid button.  Nested classes, templated collections.  Squash that darned bug! Continuing from the sixth article about sudoku.   Open the project in visual studio. First we will finish with the SUD_SETVALUE messa…
Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.

785 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question