format a string


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting format a string
# 1  
Old 04-21-2010
format a string

Hello All,
I have a file which appears as follows

Code:
a,alpha,abc-xyz,123
b,beta,prq-jkl,543
c,gamma,xyz-mno,957

I have to extract the entire content, except for the data following "-" in the third column. Output should appear as follows.

Code:
a,alpha,abc,123
b,beta,prq,543
c,gamma,xyz,957

Could someone please suggest as to how it can be done?
# 2  
Old 04-22-2010
Code:
awk 'BEGIN{FS=OFS=","} {sub(/-.*/, "", $3); print}' data

Code:
while IFS=, read -r a b c d; do echo "$a,$b,${c%%-*},$d"; done < data

# 3  
Old 04-22-2010
Code:
sed -r 's/-.*(,.*)/\1/g' file.txt > new-file.txt

or to edit the file in-place (without making a new file) use the 'i' flag for sed...

Code:
sed -ir 's/-.*(,.*)/\1/g' file.txt


Last edited by Franklin52; 04-22-2010 at 05:21 AM.. Reason: Please use code tags, thank you
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Show the string in date format

Hello guys. how can print the: 20140206 like Fri, Feb 6, 2015 Thank you. (4 Replies)
Discussion started by: Ymir
4 Replies

2. Shell Programming and Scripting

Convert string into date format

Hi, I am getting the below string as a input for date. 12/03/2013 11:02 AM I want to change this date as 03-DEC-2013 11:02 AM. Could you please help on this. Thanks Chelladurai (4 Replies)
Discussion started by: ckchelladurai
4 Replies

3. Shell Programming and Scripting

EBCDIC Format to Normal String

Hi, I have EBCDIC format file and i wold like to convert normal string(user readable) in unix . The source having the binary IBM file format Sample Source Format: ... (3 Replies)
Discussion started by: koti_rama
3 Replies

4. Shell Programming and Scripting

How to format String in ksh

Hi, I have 3 columns to display to target file and the display of the columns with specified position in target file. I have tried with printf command The Columns position like: Column1= 0 to 30 Column2=30 to 60 Column3=60 to 90 The source data: EMPNO,ENAME,SAL 1,11,100 2,22,200... (4 Replies)
Discussion started by: koti_rama
4 Replies

5. Shell Programming and Scripting

format string output

I need to put the output of the ps -ef command into a string. echo'n that string must display the output similiar to how we see the output of ps -ef in commandline. This is the string message="this is the output of ps command\n\n `ps -ef`\n\n Output Complete" when I echo $message the... (11 Replies)
Discussion started by: Northpole
11 Replies

6. Shell Programming and Scripting

Number/string format in bash

I would like to change the format of an integer type number adding zeros to the left of it in a script in bash. For example number=1 echo $number 00001 Thanks (3 Replies)
Discussion started by: josegr
3 Replies

7. Shell Programming and Scripting

String format in KSH script

Hello, I am attempting to format the output of my unix ksh script. Currently looks like ... FTP TO HR : Down FTP FROM HR 4011a : Up FTP FROM HR 4019a : Down FTP FROM HR : Down Would like the status to be aligned as follows: ... (4 Replies)
Discussion started by: dvella
4 Replies

8. UNIX for Dummies Questions & Answers

How to format a date string

I have a file tmp.out with contents: 20080812 02:41:07 20080812 05:03:04 20080812 05:46:16 How do I format the contents such as: 2008-08-12 02:41:07 2008-08-12 05:03:04 2008-08-12 05:46:16 Thanks, - CB (2 Replies)
Discussion started by: ChicagoBlues
2 Replies

9. Shell Programming and Scripting

Grep, then format then prepare a string

Hi I have a file which is having line like below Personal Unit=AU003 (Industrial Products Division),Plant=B00089,Departmant=D110 When ever i fine line starting sith Personal Unit and contains Plant Department I need to pick this line and format it like Personal Unit=AU003 ... (7 Replies)
Discussion started by: krishna.fuji
7 Replies

10. Shell Programming and Scripting

How to format number/string in ksh

Hi, How to format a number in ksh. For example x=RANDOM $$ I want x to be of 20 digits long, so if x = 12345 I want it to be left paded with 15 zeros. Thanks. (2 Replies)
Discussion started by: GNMIKE
2 Replies
Login or Register to Ask a Question