shell / awk doubt


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users shell / awk doubt
# 1  
Old 01-10-2002
shell / awk doubt

Hi all,

I have a ascii text file like this :

$cat a.txt

abc |12343 |xyakdfj |
x |323 ||
kr1 |13434343|234343 |

Is it possible to to get the file eleminating blank spaces?

output file :

abc|12343|xyakdfj|
x|323||
kr1|13434343|234343|

using korn shell or awk


thanks in advance

Krishna
# 2  
Old 01-10-2002
Code:

cat a.txt | sed -e "s/ //g"
cat a.txt | awk 'gsub(" ", "")'


Last edited by shaik786; 01-10-2002 at 07:37 AM..
shaik786
# 3  
Old 01-17-2002
Quote:
cat a.txt | awk 'gsub(" ", "")'
That awk solution, with gsub as a pattern match, will print only lines where gsub changes the line, so you can lose lines.

To retain all your lines:
Code:
awk '{gsub(" ","");print}' a.txt

Jimbo
# 4  
Old 01-18-2002
I'm not trying to be a jerk here, but there is not reason to be using "cat" in any of the above example.

Instead of
cat a.txt | sed -e "s/ //g"
you can do:
sed 's/ //g' a.txt
and for this one:
cat a.txt | awk 'gsub(" ", "")'
you can do:
awk 'gsub(" ","")' a.txt

You can always pipe to those commands, but there's no need to use cat to dump a file.
# 5  
Old 01-18-2002
Yep, agree with that (and notice that my suggested correction dropped the cat).
Jimbo
# 6  
Old 01-18-2002
Sure did... Smilie

I can't remember the URL to a page that has various awards for using cat too much... If I find it, I'll post back.
# 7  
Old 01-23-2002
Alternative way

Try this if you don't want to use awk

cat <filename> | tr -d '" "'
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Doubt in awk

Hi, I got a below requirement from this forum, but the solution provided was not clear. Below is the requirement Input file A 1 Z A 1 ZZ B 2 Y B 2 AA Required output B Y|AA A Z|ZZ (5 Replies)
Discussion started by: stew
5 Replies

2. UNIX for Dummies Questions & Answers

a doubt in awk

instead of writing print command in awk, i saw in some posts that we can simply write a number before we end the awk command and it will print the file. As given below: $awk '{some manipulation; print}' filename $awk '{some manipulation}1' filename I also tried replacing the... (2 Replies)
Discussion started by: PranavEcstasy
2 Replies

3. Shell Programming and Scripting

Awk doubt

I have a file sample.txt with the following contents: the following gives output as awk 'NF{s=$0; print s}' sample.txt but, awk 'NF{s=$0}{print s}' sample.txtgives output as why this difference, can someone explain me? (6 Replies)
Discussion started by: royalibrahim
6 Replies

4. Shell Programming and Scripting

doubt on awk

I have executed the below command: find . -name "Ks*" -type f -exec ls -ltr {} \; | awk '{printf("%ld %s %d %s \n",$5,$6,$7,$8,$9)}' and here is the output: 1282 Oct 7 2004 51590 Jul 10 2006 921 Oct 7 2004 1389 Jun 4 2003 1037 May 19 2004 334 Mar 24 2004 672 Jul 8 2003 977... (6 Replies)
Discussion started by: venkatesht
6 Replies

5. Shell Programming and Scripting

Doubt in awk

Hi All, I have two files as given below: fileA 1234|aaaaa|vvvv 2222|bbbbbb|cbxxbjh 3333|cccc|jhjhj fileB 3434|bbbcc|cbxxbjh 1234|cat|bullet 3333|cccc|jhjhj I need a script that reads the first column from fileA (i.e 1234) and searches in fileB in the first parameter(i.e first... (7 Replies)
Discussion started by: jisha
7 Replies

6. Shell Programming and Scripting

doubt in awk

Hi , I have a file in the below format: 1.txt awk 'BEGIN { printf ("%1s", "man" )} ' awk 'BEGIN { printf ("%9s", "women" )} ' awk 'BEGIN { printf ("%56s", "human")} ' ## ### ## echo "$!" ## awk 'BEGIN { printf ("%1s", "aaa" )} ' awk 'BEGIN { printf ("%19s", "bbb" )} ' ... (4 Replies)
Discussion started by: jisha
4 Replies

7. Shell Programming and Scripting

awk doubt

hi how to get the values in two columns (may be 2nd and 5th column) of a file line by line. either i want to get the two fields into different variables and use a for loop to get these values line by line. (3 Replies)
Discussion started by: Pradee
3 Replies

8. Shell Programming and Scripting

awk doubt..

Hello, Iam trying to get the IP of the hostname of the machine from /etc/hosts. I used the command as below: But the result shows the IP with the hostname.. like 192.168.0.8 test12111.com I need to get only 192.168.0.8 Please help Thanks in advance esham (11 Replies)
Discussion started by: esham
11 Replies

9. Shell Programming and Scripting

doubt in AWK

Hi all, column1 -------- 33 44 55 66 please provide the script using awk command to dispaly output 55. Help apperciated.. thanks, Nirmal (4 Replies)
Discussion started by: abnirmal
4 Replies

10. UNIX for Dummies Questions & Answers

awk doubt

I'm having a file with 5 fields. I want to sort that file according to one field no 3. How shall I do using awk programming. Any input appreciatable. regards, vadivel. (7 Replies)
Discussion started by: vadivel
7 Replies
Login or Register to Ask a Question