Visit Our UNIX and Linux User Community


printf command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting printf command
# 1  
Old 08-07-2002
printf command

I want to make a logfile with error messages, like this:
(collumms: CUSTNR DATE TIME ERROR MESSAGE)
Code:
 
102      20020807 135417 1 Uptime server is more than 6 months
5        20020808 111335 3 Backup not Ok!
2001     20020808 120428 6 Free space at server1 is less than 20%
etcetera

I made this script:

Code:
CUSTNR=101
DATE=`date +%Y%m%d`
TIME=`date +%H%M%S` 
ERROR=1
MESSAGE="Uptime server is more than 6 months"

printf "%-8s %-10s %-6s %-6s %-80s\n" $CUSTNR $DATE $TIME $ERROR $MESSAGE >> error.log

But the variabele MESSAGE is printed wrong. The logfile looks something likes this:
Code:
 
102      20020807 135417 1 Uptime 
server   is       more   than 6 months

One of the problems are the spaces between de words in the MESSAGE strings.
How can I solve this/these problems?
# 2  
Old 08-07-2002
Try adding the line:

IFS=""

to your script. This will reset the International Field Seperator such that it will no longer include blanks. I tried this here and it worked fine.
# 3  
Old 08-07-2002
I found the solution.

I have replaced $MESSAGE by "$MESSAGE".

Code:
printf "%-8s %-10s %-6s %-6s %-80s\n" $CUSTNR $DATE $TIME $ERROR "$MESSAGE" >> error.log


Previous Thread | Next Thread
Test Your Knowledge in Computers #770
Difficulty: Medium
IBM POWER4 (2001) had off-chip L3 caches of 32 MB per processor, shared among several processors.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell Printf command , a little more dynamic..

A big hello to everyone tagged to this site of knowledge . This is the first post of mine and I am looking forward to an enjoyable stint in this forum where I get to know a lot of new ideas and share whatever knowledge (its not much though :) ) I have acquired throughout my career so far with... (4 Replies)
Discussion started by: kumarjt
4 Replies

2. Shell Programming and Scripting

help with printf command

hello, I'm trying to display Unix variable using printf command. Code: awk '{ if ( $0 ~ /string/ ) { printf( "%s\n%s\n",$0,"dsd"); #this one works printf( "%s\n%s\n",$0,$HOME); #this does not work } else { print $0; } }' param1_1.txt I could use here echo command but I'm... (2 Replies)
Discussion started by: bipbip
2 Replies

3. Shell Programming and Scripting

What's the difference between print and printf in command?

For example, in this command: ls /etc/rc0.d/ -print ls /etc/rc0.d/ -printfThe outputs are quite different, why? (7 Replies)
Discussion started by: Henryyy
7 Replies

4. Shell Programming and Scripting

AWK printf command question

Hi, I am using below awk code to convert a csv file data into fixed file format. awk 'BEGIN { FS = "," fmt = "%10s%010d%10s%d%1d\n" } NR>1 { printf fmt, $1, $2, $3, $4*100, $5 }' /data/mydata.csv > /data/fixed.dat Data in mydata.csv ================... (2 Replies)
Discussion started by: kbmkris
2 Replies

5. UNIX for Dummies Questions & Answers

AWK printf command question

Hi, I am using below awk code to convert a csv file data into fixed file format. awk 'BEGIN { FS = "," fmt = "%10s%010d%10s%d%1d\n" } NR>1 { printf fmt, $1, $2, $3, $4*100, $5 }' /data/mydata.csv > /data/fixed.dat Data in mydata.csv ================... (1 Reply)
Discussion started by: kbmkris
1 Replies

6. Shell Programming and Scripting

Printf command

Hi, I a sequance number from 1-999 and i want asing the value like 001,002..999 Exp: file_001 file_002 file_003... file_999 How can i disaplay the sequnace number as mention above. (3 Replies)
Discussion started by: koti_rama
3 Replies

7. UNIX for Dummies Questions & Answers

Printf unix command

Where would I get a good explanation for all the possibities when using the "printf" unix commmand. (14 Replies)
Discussion started by: 1184jap
14 Replies

8. Shell Programming and Scripting

the printf command

hello, Im at another part of the program i am writing. Where i think i'm going to need to use the printf command. If anyone can help me figure out the printf layout i would greatly appreicate it. thanks (4 Replies)
Discussion started by: bebop1111116
4 Replies

9. Shell Programming and Scripting

printf command in ksh

Hi, I am very confused with my printf command. Somehow one variable can't line up with others... newstart2 ="Mon Nov 11 01 00:00:00 2002" printf "%-20s" $newstart2 Here is the output: Mon Nov 11 01 00:00:00 2002 It spread out to two lines.. Why? (1 Reply)
Discussion started by: cin2000
1 Replies

10. Shell Programming and Scripting

need help with printf command

Hi How could I use the command printf to display a big file. So ex. I've a script with some variables like: V1=358504 V2=FD0147 V3=dev5 V4=94577 V5=0 V6=UNIX V7=Policy V8=server V9=04/15/05 V10=19:18:41 V11=2341321467 while read V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 do printf "\n%s %s %s... (1 Reply)
Discussion started by: nymus7
1 Replies

Featured Tech Videos