06-29-2009
trim spaces and replacing value
Hi,
I have a file origFile.txt with values:
origFile.txt
.00~ 145416.02~ xyz~ ram kishor ~? ~ ~783.9
.35~ 765.76~ anh reid~ kelly woodburg ~nancy ~ ~?
Now each row in the file has value for 7 columns with "~" as delimiter.
The requirement was
i)I need to erase the blank spaces between "~" and each column value.
ii) If a column value has a blank space in betwwn (e.g. "ram kishore"), then that blank space shouldn't be removed
iii)If there is no value / only blank spaces in between two consecutive delimiters i.e. "~", then there should
be a single blank space between those two delimiters
iv) If the column value is "?", then the "?" should be removed and the blank spaces should be trimmed for that column value.
i.e. there should not be any value in between the delimiters for that column value.
The output file modFile.txt should look like
modFile.txt
.00~145416.02~xyz~ram kishor~~ ~783.9
.35~765.76~anh reid~kelly woodburg~nancy~ ~
The script I wrote was
sed -e 's/\s*\~\s*/\~/g' -e 's/^\s*//g;' origFile.txt > modFile.txt
The above script solved only the first requirement.
Could anyone please help me in writing the shell script to solve all four requirements listed above?
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I have a CSV file with footer information as below. The third value is the number of records in the file. Sometimes it contains both leading and trailing white spaces which i want to trim using awk.
C,FOOTER , 00000642
C,FOOTER , 00000707
C, FOOTER,... (2 Replies)
Discussion started by: mona
2 Replies
2. Shell Programming and Scripting
Hello folks,
Is there a simple way to trim trailing spaces from each line a file. Please let me know.
Regards,
Tipsy. (5 Replies)
Discussion started by: tipsy
5 Replies
3. Shell Programming and Scripting
Hi Friends,
Can any one help with this issue:
How to trim spaces for each line at the end,
Like I have a file in this format.
EMP1 SMITH 46373 5 STREET HOWARD 74636
EMP2 JONES 5454 { these are spaces ........}
EMP3 SMITH 46373 5 STREET HOWARD 74636
EMP4 JON 2554 { these are... (1 Reply)
Discussion started by: sbasetty
1 Replies
4. UNIX for Advanced & Expert Users
am get a value like ' 15' in a variable
what is the easiest method i can follow to strip 15 out (3 Replies)
Discussion started by: anumkoshy
3 Replies
5. Shell Programming and Scripting
hi all
this is the part i am facing a problem
eg data: filename : tr1
+ T 40
this is a sample record in that file ... the value of T can be anything, but will be a single character.
i need to cut from field two, and i am using this command
cut -d " " -f2 tr1 >tr3
and the o/p is ... (7 Replies)
Discussion started by: sais
7 Replies
6. UNIX for Dummies Questions & Answers
Hi,
i have a tab dilimeted file.The records are :header is having column names.I am facing the following issue :
I want to convert the spaces only for header file into "_" in the unix shell but the problem is that if i use sed command all the blank spaces are getting replaced by "_".
For... (3 Replies)
Discussion started by: Amey Joshi
3 Replies
7. Shell Programming and Scripting
Hi,
I'm new to shell programming. Need some help in the following requirement:
I have a file origFile.txt with values:
origFile.txt
.00~ 145416.02~ xyz~ ram kishor
.35~ 765.76~ anh reid~ kishna kerry
Now each row in the file has value for 4 columns with "~" as... (7 Replies)
Discussion started by: badrimohanty
7 Replies
8. Shell Programming and Scripting
HI Guys
I have written a script using awk to split a file based on some identifier and renaming the file based on two values from specific length. ts a fixed width file.
When I am trying to fetch the values
a = substr($0,11,10)
b = substr($0,21,5);
i am getting spaces in a and b values .... (6 Replies)
Discussion started by: manish8484
6 Replies
9. Shell Programming and Scripting
All,
i am comparing the output of one command to a numberic
if ]
but my problem is the output of follwoing is but but has some leading columns. I don't have any problme in LINUX and HP-UX. But only in AIX i am getting the leading spaces. I have developed my script on LINUX but when... (4 Replies)
Discussion started by: rcc50886
4 Replies
10. UNIX for Beginners Questions & Answers
I have a file like this.
hari,corporationbank,2234356,syndicate
ravi,indian bank,4567900000000,indianbank,accese
raju,statebank of hyderabad,565866666666666,pause
Here each record has different record length and there are blank spaces... (8 Replies)
Discussion started by: kshari8888
8 Replies
LEARN ABOUT REDHAT
mac2unix
dos2unix(1) General Commands Manual dos2unix(1)
NAME
dos2unix - DOS/MAC to UNIX text file format converter
SYNOPSYS
dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]
Options:
[-hkqV] [--help] [--keepdate] [--quiet] [--version]
DESCRIPTION
This manual page documents dos2unix, the program that converts plain text files in DOS/MAC format to UNIX format.
OPTIONS
The following options are available:
-h --help
Print online help.
-k --keepdate
Keep the date stamp of output file same as input file.
-q --quiet
Quiet mode. Suppress all warning and messages.
-V --version
Prints version information.
-c --convmode convmode
Sets conversion mode. Simulates dos2unix under SunOS.
-o --oldfile file ...
Old file mode. Convert the file and write output to it. The program default to run in this mode. Wildcard names may be used.
-n --newfile infile outfile ...
New file mode. Convert the infile and write output to outfile. File names must be given in pairs and wildcard names should NOT be
used or you WILL lost your files.
EXAMPLES
Get input from stdin and write output to stdout.
dos2unix
Convert and replace a.txt. Convert and replace b.txt.
dos2unix a.txt b.txt
dos2unix -o a.txt b.txt
Convert and replace a.txt in ASCII conversion mode. Convert and replace b.txt in ISO conversion mode. Convert c.txt from Mac to Unix
ascii format.
dos2unix a.txt -c iso b.txt
dos2unix -c ascii a.txt -c iso b.txt
dos2unix -c mac a.txt b.txt
Convert and replace a.txt while keeping original date stamp.
dos2unix -k a.txt
dos2unix -k -o a.txt
Convert a.txt and write to e.txt.
dos2unix -n a.txt e.txt
Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt.
dos2unix -k -n a.txt e.txt
Convert and replace a.txt. Convert b.txt and write to e.txt.
dos2unix a.txt -n b.txt e.txt
dos2unix -o a.txt -n b.txt e.txt
Convert c.txt and write to e.txt. Convert and replace a.txt. Convert and replace b.txt. Convert d.txt and write to f.txt.
dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
DIAGNOSTICS
BUGS
The program does not work properly under MSDOS in stdio processing mode. If you know why is that so, please tell me.
AUTHORS
Benjamin Lin - <blin@socs.uts.edu.au>
Bernd Johannes Wuebben (mac2unix mode) <wuebben@kde.org>
MISCELLANY
Tested environment:
Linux 1.2.0 with GNU C 2.5.8
SunOS 4.1.3 with GNU C 2.6.3
MS-DOS 6.20 with Borland C++ 4.02
Suggestions and bug reports are welcome.
SEE ALSO
unix2dos(1) mac2unix(1)
1995.03.31 dos2unix v3.0 dos2unix(1)