Sponsored Content
Full Discussion: help
Top Forums Shell Programming and Scripting help Post 302129576 by Shell_Life on Tuesday 31st of July 2007 03:00:46 PM
Old 07-31-2007
Quote:
Originally Posted by matrixmadhan
this command doesnt work for a sample input file like

Code:
cat f1
X B C A E F G A I

I had modified it with some assumptions
Code:
sed 's/A/RA/1' f1

( subject to assumption that there are no other occurrence of the character 'A' before 4th column )
Matrix, if you read the OPs original post again:
Quote:
Originally Posted by chuchu
Hi folks,
I have a file which has 9 column. I want to replace A by RA in 4th column. Remember there are A in 8th column also. I only want to replace A by RA in 4th column. How can I do it? Please help me.
He has a file with 9 (nine) columns and wants to replace the 4th column.

Your test data has 17 columns, much more than 9 columns.

Also the 'A' in your test data is on the 7th column, not the 4th column.

Your solution:
Code:
sed 's/A/RA/1' f1

replaces only the first occurrence of 'A', ignoring what column it is.

My solution does what the OP is asking.
 
COLUMN(1)						    BSD General Commands Manual 						 COLUMN(1)

NAME
column -- columnate lists SYNOPSIS
column [-tx] [-c columns] [-s sep] [file ...] DESCRIPTION
The column utility formats its input into multiple columns. Rows are filled before columns. Input is taken from file operands, or, by default, from the standard input. Empty lines are ignored. The options are as follows: -c Output is formatted for a display columns wide. -s Specify a set of characters to be used to delimit columns for the -t option. -t Determine the number of columns the input contains and create a table. Columns are delimited with whitespace, by default, or with the characters supplied using the -s option. Useful for pretty-printing displays. -x Fill columns before filling rows. column exits 0 on success, >0 if an error occurred. ENVIRONMENT
COLUMNS The environment variable COLUMNS is used to determine the size of the screen if no other information is available. EXAMPLES
(echo "PERM LINKS OWNER GROUP SIZE MONTH DAY HH:MM/YEAR NAME"; ls -l | sed 1d) | column -t SEE ALSO
colrm(1), ls(1), paste(1), sort(1) HISTORY
The column command appeared in 4.3BSD-Reno. BSD
March 9, 2008 BSD
All times are GMT -4. The time now is 06:27 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy