Use of "CUT" command.


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Use of "CUT" command.
# 1  
Old 02-06-2006
Use of "CUT" command.

Hi,

I have 3 fields in a file. For example I have them like this:
1,Santosh, 24

I want to have these 3 values in 3 different variables. How can I do it.

Thanks in advance
# 2  
Old 02-06-2006
Using awk:

first=awk -F "," '{print $1}'
second=awk -F "," '{print $2}'
third=awk -F "," '{print $3}'
# 3  
Old 02-06-2006
Using shell:
Code:
#!/usr/bin/ksh

oldIFS=$IFS
IFS=$IFS,
while read first second third; do
        echo $first $second $third
done < test
IFS=$oldIFS

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

# 4  
Old 02-06-2006
Regarding AWK

Hi,

Since my file that has got input values in the format "1,Mani,23" and I dont know how many such inputs are going to be there.I wrote the following script to print How many however values were there in the file:

while read line
do
count=1
more values | awk '{print $count}'
count=`expr $count + 1`
done < values

It gives me an error as following:
awk: Field $() is not correct.

How can print all the values in the file field by field ie...

if inputs are like this
1,Mani,23
2,San,24,
3,Tom,25
..
..
and so on. How can I print the first field,2nd field and the third field seperately using awk in a loop

Thanx in advance
# 5  
Old 02-06-2006
can u give a sample output as well
# 6  
Old 02-06-2006
Output

Hi,
The format of the output should be:
1
2
3

Mani
San
Tom

23
24
25
# 7  
Old 02-06-2006
You cannot use shell variables inside an awk command directly. Read up on awk programming to know how to do this. And since you are so keen on using awk to read the variables, try this:
Code:
#!/usr/bin/ksh

awk -F',' '{print $1," ",$2," ",$3}' test|while read first second third; do
   echo $first $second $third
done

Login or Register to Ask a Question

Previous Thread | Next Thread

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
Login or Register to Ask a Question