Format a file using awk


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Format a file using awk
# 1  
Old 05-08-2015
Format a file using awk

I have a file as below

Code:
empty                   May7
noread                  May8

How can process this file and print as below. neat and clean.

Code:
Filename        Date Created
empty            May7
noread           May8

I tried something with printf before creating the file itself but its coming as below with out proper aignment.

Code:
Directory Name                   Date Created

empty                   May7
noread                  May8

# 2  
Old 05-08-2015
Hello Tuxidow,

Could you please try following and let us know if this helps.
Code:
awk 'BEGIN{OFS="\t\t";print "Directory Name" OFS "Date Created"} {print}'  Input_file

Thanks,
R. Singh
# 3  
Old 05-08-2015
You should check the first columns its string length.
The longer it is, the less "\t" (=tabs) it requires to fill the space until the 2nd colunm, while preserving alignment.

Saying:
noread is only 6 chars, a tab is 8, so the first tab fills only up to char #8.
"Directory name" is longer, it first tabs fills up to char #16.

hth
# 4  
Old 05-08-2015
Try something like this

Code:
[akshay@localhost tmp]$ cat infile
empty                   May7
noread                  May8

Code:
[akshay@localhost tmp]$ awk 'BEGIN{printf "%-24s%-24s\n", "FILENAME","Date Created"  }1' infile
FILENAME                Date Created            
empty                   May7
noread                  May8

Code:
[akshay@localhost tmp]$ awk 'BEGIN{printf "%-24s%-24s\n", "Directory Name","Date Created"  }1'  infile
Directory Name          Date Created            
empty                   May7
noread                  May8

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk to format file with conditional split

In the awk below I am splitting $7 on the : (colon) then - (hyphen) as array a. The word chr is printed at the start of every $1 line. Next, $4 is split on the > (greater then) as array b. I am not sure how to account for the two other possibilities in $4 so the correct output is printed. Every... (3 Replies)
Discussion started by: cmccabe
3 Replies

2. Shell Programming and Scripting

Changing format of file with awk

Hi all, I have a file that looks like this: Closest words to: manifesto >>>> Closest words to: passport >>>> and I want to reformat this with awk with the following desired result: manifesto 0.99999999999999978, 'manifesto' 0.72008211381623111, 'communiqu\xe9'... (5 Replies)
Discussion started by: owwow14
5 Replies

3. Shell Programming and Scripting

Need help on awk script to format a file

Hi everyone, Looking for some help in awk script to modify the format of a file. I seem to be struggling with this: Input: ***************************************************** ,,,,TOTAL,2014/1-,2014/2- 0,TOTAL,BLANK,"Description",Total 1,Total 2,Total 3 1, MFG Name 1,,"Description",MFG... (4 Replies)
Discussion started by: yogesh_jain
4 Replies

4. Shell Programming and Scripting

Help with awk statement to format text file.

Hello, I am fairly new to shellscripting and have written a script to check on messages file and report failed logins: Here is the original file: Jul 17 03:38:07 sfldmilx086 sshd: error: PAM: Authentication failure for houghn97 from 10.135.77.201 Jul 17 03:38:07 sfldmilx086 sshd: error:... (2 Replies)
Discussion started by: neilh1704
2 Replies

5. Shell Programming and Scripting

Change a file content format using awk

Hi, i have a file input.txt Continent North America Country USA Capital Washington D.C. Country Canada Capital Ottawa Continent South America Country Argentina Capital Buenos Aires Country Brazil Capital Brasília Coutry Colombia Capital Bogotá and i want to get an output.txt ... (3 Replies)
Discussion started by: fastlane3000
3 Replies

6. Shell Programming and Scripting

awk to format file

Hello, I shall like using the function awk to modify the contents of the following file: /tmp/conf-1 -sec=sys,rw=lpar1:lpar2:lpar3,access=lpar1:lpar2:lpar3 /tmp/conf-2 -vers=4,sec=sys,rw=lpar4:lpar5:lpar6,access=lpar4:lpar5:lpar6 I need to have the result below towards another file ... (5 Replies)
Discussion started by: khalidou13
5 Replies

7. Shell Programming and Scripting

Need awk/sed to format a file

My content of source file is as below scr1 a1 scr2 a2 b2 scr3 a3 b3 c3 I need a awk/sed command (to be used in C shell)to format it to something like below scr1 $a1 >file1 scr2 $a2 $b2 >file2 scr3 $a3 $b3 $c3 >file3 (12 Replies)
Discussion started by: animesharma
12 Replies

8. Shell Programming and Scripting

File Join with different format using awk

File Join with different format using awk file1 file2 nawk -F"=" 'NR==FNR{a++;next} a{ print a, output Help is appreciated (5 Replies)
Discussion started by: pinnacle
5 Replies

9. Shell Programming and Scripting

awk/nawk question to format a file

Hi, I am new to awk/nawk, needs help. I want to merge the rows having emplid attribute same into a single row in the following file. In actual this kind of file will have around 50k rows. Here is my input file id|emplid|firstname|dep|lastname 1|001234|test|1001|1 2|002345|test|1032|2... (7 Replies)
Discussion started by: kumar04
7 Replies

10. Shell Programming and Scripting

AWK CSV to TXT format, TXT file not in a correct column format

HI guys, I have created a script to read 1 column in a csv file and then place it in text file. However, when i checked out the text file, it is not in a column format... Example: CSV file contains name,age aa,11 bb,22 cc,33 After using awk to get first column TXT file... (1 Reply)
Discussion started by: mdap
1 Replies
Login or Register to Ask a Question