pulling a column from a file in ksh


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting pulling a column from a file in ksh
# 1  
Old 01-08-2003
pulling a column from a file in ksh

I would like to pull a column from a file and place it in a variable:

The file would look like this:

N.Korea gibberish garbage
S.Korea gibberish garbage
USA gibberish garbage
Iraq gibberish garbage
Canada gibberish garbage



and items in the first column would be one word only. I would like to place the whole column in a variable. I think sed would be good for this, but I'm not sure of the syntax.
Thanks
# 2  
Old 01-08-2003
How about:
Code:
x=$(cut -d ' ' -f 1 < file)

# 3  
Old 01-08-2003
The file was actually tab-delimited so I ended up using this:

x=$(cut -f1 < file)

which achieved the results I was looking for. Thanks!
# 4  
Old 01-08-2003
Error Re: pulling a column from a file in ksh

x=$(cut -d ' ' -f 1 < file)

What shell is syntax from? Is this a form of command grouping used in csh?

or

If this is Korn Shell, why dont you have to use back quotes ( ` ) to execute the commands inside the parens? Are there limitations to this sort of syntax?

Last edited by google; 01-09-2003 at 02:39 PM..
# 5  
Old 01-09-2003
This is not csh syntax, it is ksh syntax. Note that the title of this thread explicitly mentions ksh. In ksh, the $(command) is preferred, while the `command` syntax is currently supported for backward compatibility.

The advantage is nesting:
gcos=$(grep $(whoami) /etc/passwd | cut -d: -f5)
is easy to code and easy to read. Depending on the contents of the gcos field:
eval gcos=\`grep `whoami` /etc/passwd \| cut -d: -f5 \'
may or may not work.
# 6  
Old 01-09-2003
Well, here's where it gets tricky:

It turns out that I do need to use the second column. The file would now look like this:

N.Korea NUCLEAR garbage
S.Korea NON-NUCLEAR garbage
USA NUCLEAR garbage
Iraq UNKNOWN garbage
Canada HORSEBACK garbage


(By the way, the second column is a joke, for those who don't get my sense of humor)

But what I need to do is pull out the second column and place it in a separate variable, but in a way that I can still associate it with the first column.
# 7  
Old 01-09-2003
How about:
Code:
y=$(cut -f 2 < file)

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Partial file pulling

I am connecting to another server through sftp. I am running one batch script to pull file from another server. sometimes i am receiving partial files. I am using below commands in batch script. ls -ltr new.txt mget new.txt bye The file is of 1 MB only.In most of the cases , i received... (6 Replies)
Discussion started by: srinath01
6 Replies

2. UNIX for Dummies Questions & Answers

Pulling Parms from Config File

Hello all, I'm working on a general script for something at work. I'm an up-and-comer backup for a Shell Scripter this company has had for 35 years lol. Anyway, I have a config file I'm trying to pull Variables from as the Config File is used for multiple scripts. Does the below make sense and... (7 Replies)
Discussion started by: phunk
7 Replies

3. Shell Programming and Scripting

KSH Script to Execute command from specific column in file

Hi Unix Experts,Team I have a file (say comand_file.prm), The file has a command specified in column 6 (say "./execute_script.sh"). I want to execute this command in my script. I am writing a KSH script to achieve this. Could you please assist me with this. (6 Replies)
Discussion started by: Jeevanm
6 Replies

4. Shell Programming and Scripting

pulling different fields from a csv file

Hi, I have a requirment where I need to pull different columns from a .csv file. Here is the sample of the csv file. account,item,flag1,flag2,flag3,flag4,flag5,......feed,tran I will be have a config.txt file which will have the following information. item,flag5,flag10,feed,tran... (2 Replies)
Discussion started by: akdevula
2 Replies

5. Shell Programming and Scripting

Pulling Ip's from log and redirecting to a file

Hi all, I am fairly new to scripting, but I do try and script as much as possible but the more advanced stuff does tend to boggle my mind a bit. I am at a bit of a loss with this one. I get entries in my DNS logs, like the below: I want to extract only the IP address, without the hashes... (5 Replies)
Discussion started by: codenjanod
5 Replies

6. UNIX for Dummies Questions & Answers

Pulling a file off a backup tape

I have AIX 5.1 This may sound like a really dumb question but I have never done this before. I would like to pull a file off a backup tape and put back on the AIX is this as simple as as doing a mount /dev/rmt1 then the file name that is on the tape /dump/rpt/xxxxxx Do I just copy it... (14 Replies)
Discussion started by: rocker40
14 Replies

7. Shell Programming and Scripting

Pulling data and following lines from file

I saw a few posts close to what i want to do, but they didn't look like they would work exactly.. or I need to think out of the box on this. I have a file that I keep server stats in for my own performance analysis. this file has the output from many commands in it (uptime, vmstats, ps, swap... (2 Replies)
Discussion started by: MizzGail
2 Replies

8. Shell Programming and Scripting

to add new column for all reocrds in a file in KSH please

i want to add a new column at the end for all the reocrds in a file for ex: file name is abc.wlg.x.y.z records like 1,2,3,4,5,6,8,y,u,8,1,2,3,4,5,6,8,y,u,8 2,3,4,5,6,8,y,u,8,1,2,3,4,5,6,8,y,u,8,k 3,4,5,6,8,y,u,8,1,2,3,4,5,6,8,y,u,8,k,l 4,5,6,8,y,u,8,1,2,3,4,5,6,8,y,u,8,u,i,o... (4 Replies)
Discussion started by: pulse2india
4 Replies

9. UNIX for Dummies Questions & Answers

pulling the following line from a file

I have return files from a process that has then original input record followed on the next line by a response record..either AA,........... for accepted or EE,.......... for errored. i.e 11,new,123 AA,accepted 12,exist,443 EE,rejected 13,old,223 AA,accepted I want to write a small... (4 Replies)
Discussion started by: peter.herlihy
4 Replies

10. UNIX for Advanced & Expert Users

Pulling out fields from a file

Hi, I have a file that contains 1400 lines similar to the one shown below: NAME=sara, TOWN=southampton, POSTCODE=SO18777, EMAIL=sara@hotmail.com, PASSWORD=asjdflkjds etc etc (note: this is one line). Each line has the same fields, but on each line they are in a different order. Eg. the line... (2 Replies)
Discussion started by: Saz
2 Replies
Login or Register to Ask a Question