Use of "CUT" command.


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Use of "CUT" command.
# 8  
Ok, my previous reply was a bit early - didn't get to see your sample output. Try this:
Code:
awk -F, '{print $1}' test
awk -F, '{print $2}' test
awk -F, '{print $3}' test

Code:
# cat test
1,abc,24
2,def,25
3,pqr,40

# 9  
Quote:
Originally Posted by blowtorch
Ok, my previous reply was a bit early - didn't get to see your sample output. Try this:
Code:
awk -F, '{print $1}' test
awk -F, '{print $2}' test
awk -F, '{print $3}' test

Code:
# cat test
1,abc,24
2,def,25
3,pqr,40

in this case file needs to be read and parsed three times,

just a single read and single parse would do,

Code:
# !/usr/bin/ksh

first=""
second=""
third=""

while read line
do
first=$first`echo $line | cut -f1 -d","`","
second=$second`echo $line | cut -f2 -d","`","
third=$third`echo $line | cut -f3 -d","`","
done < test

echo $first | tr ',' '\n'
echo $second | tr ',' '\n'
echo $third | tr ',' '\n'

exit 0

# 10  
How to get the last filed by awk ???

$ p4 users | grep tkdas
tkdas <tkdas@myemail.com> (Tusar Kanti Das) accessed 2005/12/09

$ p4 users | grep tkdas | awk '{ print $1 }'
tkdas
.
.
.
and so on ...
And now I want to get the last filed but I dont want to get it like this

$ p4 users | grep tkdas | awk '{ print $7 }'
2005/12/09

Because intermediate fields are not constant always and thats why it may be $6 or $7 or $8 sometime.

But one thing I am sure is that the date filed is the last filed. Any idea how to catch the filed?

Thanks a lot to all in advance
C Saha
# 11  
if u are sure of the last field and assuming ur last field is delimited by the previous field by a space

Code:
p4 users | grep tkdas | sed 's/^.* //g'

# 12  
Code:
p4 users | grep tkdas | awk '{ printf $NF }'

or better yet with just sed

Code:
p4 users | sed -n -e 's_^tkdas.* __p'


Last edited by vino; 02-08-2006 at 03:16 AM..
# 13  
Thanks once again

matrixmadhan & vino - both of you are great !!! Thanks a lot

BTW - What does $NF stands for?

======================================

I am very much interested to learn sed & awk deeply. I always found myself weak in awk & sed. Can you guys refer some good books (available in net in doc/pdf version)? That will be really helpful...

Thanks once again
C Saha
# 14  
UNIX Forums maintains a site where tutorial links are hosted.

Some Sites Recommended by Our Users

And yet another tutorial is the O'Reilly's bookshelf
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 #27
Difficulty: Medium
Linux was the first fully supported 64-bit operating system for consumers.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Using "mailx" command to read "to" and "cc" email addreses from input file

How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing To e-mail address and column 3 contains cc e-mail address to include with same email. Sample input file, email.txt Below is an sample code where... (2 Replies)
Discussion started by: asjaiswal
2 Replies

2. Shell Programming and Scripting

how to use "cut" or "awk" or "sed" to remove a string

logs: "/home/abc/public_html/index.php" "/home/abc/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" how to use "cut" or "awk" or "sed" to get the following result: abc abc xyz xyz xyz (8 Replies)
Discussion started by: timmywong
8 Replies

3. Shell Programming and Scripting

Strange "cut" command's behaviour

Hi, Suppose if I have a file having data like this: $ cat file.txt A B C D And, if I do a cut operation like this: $ cut -d" " -f2 file.txt The output is A C D This is the same for even if we try to get the field 3 with -f3 (assume line 2 has 3 fields : C E F). The above... (1 Reply)
Discussion started by: royalibrahim
1 Replies

4. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

5. Shell Programming and Scripting

Help with "cut" command in Unix

Hi! Just a basic question: I want to use the "cut" command to get some columns from a file, like this: cat myfile | cut -f 5,3,2,1 The problem is that the output contains the columns I want, but in increasing order: 1,2,3,5, and not in the order I set before. I know I could also use awk,... (2 Replies)
Discussion started by: lpb
2 Replies

6. Shell Programming and Scripting

Command Character size limit in the "sh" and "bourne" shell

Hi!!.. I would like to know what is maximum character size for a command in the "sh" or "bourne" shell? Thanks in advance.. Roshan. (1 Reply)
Discussion started by: Roshan1286
1 Replies

7. UNIX for Dummies Questions & Answers

Command Character size limit in the "sh" and "bourne" shell

Hi!!.. I would like to know what is maximum character size for a command in the "sh" or "bourne" shell? Thanks in advance.. Roshan. (1 Reply)
Discussion started by: Roshan1286
1 Replies

8. Shell Programming and Scripting

help for saving vertical datas to horizontal with "awk" or "cut"

hi, i have a file having datas like that ./a.txt 12344 12345 12346 12347 ..... ..... ... i want to save this datas to another file like that ./b.txt 12344 12345 12346 12347 ... ... ... i think awk can make this but how? :) waiting for ur help. (3 Replies)
Discussion started by: mercury
3 Replies

9. Shell Programming and Scripting

How to cut a file using " ", but fields can be separated with more than one " "

Hello, let's say I have a text file: word11 word12 word13 word21 word22 word23 word31 word32 word33 and I want to put the second field of each line into a list: set list = `cut -d" " -f2 ${1}` and I use space (" ") as a delimiter, only that there's a catch: there can be more than... (12 Replies)
Discussion started by: shira
12 Replies

10. Windows & DOS: Issues & Discussions

Unix "cut' and "awk" in Windows XP?

Hi, How can I execute Unix's ksh equivalent of "cut' and "awk" in Windows XP? For example, I want to execute ksh commands from Windows command prompt. Is there a place I can download "cut.exe" and "awk.exe" ? Thanks in advance (4 Replies)
Discussion started by: ihot
4 Replies

Featured Tech Videos