Need to remove columns from file at run time


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Need to remove columns from file at run time
# 1  
Old 10-15-2015
Need to remove columns from file at run time

I want to built a generic code to remove columns from file. Column number will be passed at run time.I may have multiple number like 2,5,10 so Can you please help.

I know how to remove when we know column number but I want a generic code where column number will be passed at run time.

Example:
Code:
cat test1
1,Amit
2,Ajay
3,AJ
 
cat > test2
11,aa,22,ss
12,ss,23,ff

Delete 2nd column from test1 then out put should be:
Code:
1
2
3

Delete 2nd and 4th column from test2 then out put should be
Code:
11,22
12,23

the above should be done with same code

Thanks in advance.

Last edited by Amit Joshi; 10-15-2015 at 05:48 AM.. Reason: added example
# 2  
Old 10-15-2015
You don't need a script for that, can do it using cut command
Code:
cut -d',' -f1 test1
cut -d',' -f1,3 test2

# 3  
Old 10-15-2015
Thanks sam05121988 for replying.

But as I mentioned above I need generic solution which can be used for both input file as I can pass any column number to delete from file.

I hope I am clear with requirement.
# 4  
Old 10-15-2015
Is this a homework assignment?

What operating system and shell are you using?

What have you tried to solve this problem? Where are you stuck?
# 5  
Old 10-15-2015
I just use cut command or awk to print the columns as mentioned by sam05121988 but I just thought of making it generic so that it should work for any file just we need to pass column number which we need to drop. so I do not have idea on how to make it generic thats why I have posted here as experts are here.

I am using Unix as OS.
# 6  
Old 10-15-2015
Please answer Don Cragun's other questions as well.

What exactly do you mean by "make it generic"? Wouldn't e.g. cut with expanded shell variables be generic enough?
# 7  
Old 10-15-2015
Already given answer of Don Cragun's questions.

Make it generic means same code should work for any file where as file structure may differ and column number which need to drop may differ.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Remove blank columns from a tab delimited text file

Hello, I have some tab delimited files that may contain blank columns. I would like to delete the blank columns if they exist. There is no clear pattern for when a blank occurs. I was thinking of using sed to replace instances of double tab with blank, sed 's/\t\t//g' All of the examples... (2 Replies)
Discussion started by: LMHmedchem
2 Replies

2. Shell Programming and Scripting

Remove Duplicates on multiple Key Columns and get the Latest Record from Date/Time Column

Hi Experts , we have a CDC file where we need to get the latest record of the Key columns Key Columns will be CDC_FLAG and SRC_PMTN_I and fetch the latest record from the CDC_PRCS_TS Can we do it with a single awk command. Please help.... (3 Replies)
Discussion started by: vijaykodukula
3 Replies

3. Shell Programming and Scripting

Remove few columns from pipe delimited file

I have file as below column1|column2|column3|column4|column5| fill1|fill2|fill3|fill4|fill5| abc1|abc2|abc3|abc4|abc5| . . . . i need to remove column2,3, from that file column1|column4|column5| fill1|fill4|fill5| abc1|abc4|abc5| . . . (3 Replies)
Discussion started by: greenworld123
3 Replies

4. Shell Programming and Scripting

How to take the file name in run time using shell.?

I want to take the file name as an input to the program and copy that file into new location using shell. Below program is not working properly. #!/bin/sh if ; then `/usr/bin/perl -pi -e's/(notifications_enabled\s*)(\d+)/$sub = "$1" . ("$2"== "0" ? "1":"0")/e; ' $file` `cp... (2 Replies)
Discussion started by: praveen265
2 Replies

5. Shell Programming and Scripting

remove white space from specific columns in text file

Hello i have a text file like this: 1 AB AC AD EE 2 WE TR YT WW 3 AS UY RF YT the file is bigger , but that's an example of the data what i want to do is to merge all columns together except the first one, it will become like this : 1 ABACADEE 2 WETRYTWW 3 ASUYRFYT (8 Replies)
Discussion started by: shelladdict
8 Replies

6. Shell Programming and Scripting

Remove duplicate columns in input file

hello, I have an input file which looks like this: 2 C:G 17 -0.14 8.75 33.35 3 G:C 16 -2.28 0.98 28.22 4 C:G 15 0.39 11.06 29.31 5 G:C 14 2.64 5.17 36.07 6 G:C 13 -0.65 2.05 21.94 7 C:G 11 138.96 21.64 14.40 9 C:G 27 -2.40 6.95 27.98 10 C:G 26 2.89 15.60 34.33 11 G:C... (7 Replies)
Discussion started by: linux_usr
7 Replies

7. Shell Programming and Scripting

Search based on 1,2,4,5 columns and remove duplicates in the same file.

Hi, I am unable to search the duplicates in a file based on the 1st,2nd,4th,5th columns in a file and also remove the duplicates in the same file. Source filename: Filename.csv "1","ccc","information","5000","temp","concept","new" "1","ddd","information","6000","temp","concept","new"... (2 Replies)
Discussion started by: onesuri
2 Replies

8. Shell Programming and Scripting

Single command for add 2 columns and remove 2 columns in unix/performance tuning

Hi all, I have created a script which adding two columns and removing two columns for all files. Filename: Cust_information_1200_201010.txt Source Data: "1","Cust information","123","106001","street","1-203 high street" "1","Cust information","124","105001","street","1-203 high street" ... (0 Replies)
Discussion started by: onesuri
0 Replies

9. Shell Programming and Scripting

How to run this program with only one input file at a time

i have a program ABC, which runs every two minutes and takes the input according to the a value called "pointer" files need to be processed by ABC are input0001 input0002 input0003 input0004 input0005 current value of pointer is 0001, now program runs and takes all the files from... (2 Replies)
Discussion started by: Prat007
2 Replies

10. Shell Programming and Scripting

Remove lines, Sorted with Time based columns using AWK & SORT

Hi having a file as follows MediaErr.log 84 Server1 Policy1 Schedule1 master1 05/08/2008 02:12:16 84 Server1 Policy1 Schedule1 master1 05/08/2008 02:22:47 84 Server1 Policy1 Schedule1 master1 05/08/2008 03:41:26 84 Server1 Policy1 ... (1 Reply)
Discussion started by: karthikn7974
1 Replies
Login or Register to Ask a Question