how to append spaces(say 10 spaces) at the end of each line based on the length of th


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers how to append spaces(say 10 spaces) at the end of each line based on the length of th
# 8  
Old 01-28-2009
Hi Franklin52,
thanks for your reply....

It is throwing error

awk: cmd. line:2: fatal: cannot open file `
BEGIN{s=sprintf("%-100s", "")}
NR==1{$0=$0 s)}
NR==n{$0=$0 s)}
1' for reading (No such file or directory)

For the "file" mentioned in the script, i have replaced with my filename , and the file exists.

can u give me a script with filename say : FILE01, bcause i am confused with file name and any such key words.
# 9  
Old 01-28-2009
The filename appears 2 times, have you replace them both with your filename?

Code:
awk -v n=`wc -l < file` '
BEGIN{s=sprintf("%-100s", "")}
NR==1{$0=$0 s)}
NR==n{$0=$0 s)}
1' file

# 10  
Old 01-28-2009
Yes.... i replace them both with file name Tect.txt
I saved your script say a.sh in dir /tmp. and in the same path file also exists.
when i run the script sh a.sh , the error occurs mentioned above.
Can u please test in your system and send the correct code. Sample file is like this.

Tect.txt :

HORU(need to add 100 fillers(spaces) here)
D0000000000000000000000000000000000
D0000000000000000000000000000000000
T000A(need to add 100 fillers(spaces) here)
# 11  
Old 01-28-2009
Oops, excuse me, I had some closing parentheses in the code. This should do it:

Code:
awk -v n=`wc -l < file` '
BEGIN{s=sprintf("%-100s", "")}
NR==1{$0=$0 s}
NR==n{$0=$0 s}
1' file

Regards
# 12  
Old 01-28-2009
Still same error ,

awk: cmd. line:2: fatal: cannot open file `
BEGIN{s=sprintf("%-100s", "")}
NR==1{$0=$0 s}
NR==n{$0=$0 s}
1' for reading (No such file or directory)
# 13  
Old 01-28-2009
It works fine for me, have you used backticks (`) around the wc command?
maybe your version of awk doesn't support the -v option, use nawk or /usr/xpg4/bin/awk on Solaris or try this:

Code:
awk '
BEGIN{s=sprintf("%-100s", "")}
NR==1{$0=$0 s}
NR==n{$0=$0 s}
1' n=`wc -l < file` file

Regards
# 14  
Old 01-28-2009
thanks i tried in another server. now the script is working and the file data is displayed. but the file is not appended with spaces as i said.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Removing tab spaces at the end of each line

I have a file which contains the data lines like below.I want to remove the tab spaces at the end of each line.I have tried with the command sed 's/\+$//' file.but it does not work.Can anyone help me on this? 15022 15022 15022 15022 15022 15022 15023 15023 15023 15023 15023 ... (16 Replies)
Discussion started by: am24
16 Replies

2. UNIX Desktop Questions & Answers

To remove the extra spaces at the end of each line in a file

I have a file of about 10k records and eace line is having an extra space of 5 byte at the end.. Iwant to remove the extra spaces at the end of each line.. Can someone please help me out.. I tried using sed command and its not working... can someone please help me out. (3 Replies)
Discussion started by: rammohan
3 Replies

3. Shell Programming and Scripting

Append spaces the rows to make it into a required fixed length file

I want to make a script to read row by row and find its length. If the length is less than my required length then i hav to append spaces to that paritucular row. Each row contains special characters, spaces, etc. For example my file contains , 12345 abcdef 234 abcde 89012 abcdefgh ... (10 Replies)
Discussion started by: Amrutha24
10 Replies

4. Shell Programming and Scripting

append blank spaces at the end of a variable string

Hello, could you please help with this one. I have an input file like this: 123,4567,89000 123456789,9876543,12 and for the output I need strings to be with the fixed length, let's say 15, and if the string is -lt 15 to be populated with blanks at the end until it reach 15, like this: 123 ,4567... (1 Reply)
Discussion started by: apenkov
1 Replies

5. UNIX for Dummies Questions & Answers

I don't want to truncate trailing spaces and ^M at the end of line

I have a script wherein I access each line of the file using a FOR loop and then perform some operations in each line. The problem is each line that gets extracted in FOR loop truncates trailing blank spaces and control characters (^M) that is present at the end of each line. I don't wan this to... (5 Replies)
Discussion started by: Shobana_s
5 Replies

6. Shell Programming and Scripting

append end of line with 8 spaces

child_amt=$amount prev_line="$prev_line $child_amt" i am getting the result like this 21234567890001343 000001004OLFXXX029100020091112 0000060 but i want 8 spaces between the eg: 21234567890001343 000001004OLFXXX029100020091112 0000060 how can i do this in .ksh (1 Reply)
Discussion started by: kshuser
1 Replies

7. Shell Programming and Scripting

append string with spaces to a line

hi i have a file like (every string contains 16 chars) CTL1330000000000 0000 00 008000 0080000000 i need to form a line and write to a file CTL13300000000000000 00008000 0080000000 total chars should be 64 ... (2 Replies)
Discussion started by: Satyak
2 Replies

8. Shell Programming and Scripting

Append Spaces At end of each line Leaving Header and Footer

How to append constant No of spaces suppose 52 at end of each line in a file (xyz) excluding first and last line. Please Help me out for the same. (1 Reply)
Discussion started by: deepam
1 Replies

9. Shell Programming and Scripting

To Trim spaces at the end of line

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

10. Shell Programming and Scripting

Deleting end line spaces for along file

How can i clear all space characteres for a long file at the end of each line? (3 Replies)
Discussion started by: osymad
3 Replies
Login or Register to Ask a Question