Using Echo


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Using Echo
# 8  
Old 08-25-2009
Methyl,

This hold goods if we are using printf .... but can we get this out using 'ECHO'
# 9  
Old 08-25-2009
  • As Ken has already shown, you can do this with echo easily enough.
    (It might require a -e flag or setting IFS depending on your implementation of echo, but it works with neither on /usr/bin/echo for Solaris 9)
  • wc -c will list the number of characters (in your situation that works for bytes too).
  • Integer maths in shell can be done using expr (eg `expr 80 - /usr/bin/echo "${myoutput}\c" | wc -c`)
  • You can generate a string of X bytes using echo and a for-do loop.
Let us know which parts of the solution remain a problem for you and we can elaborate as required. Smilie

But really, that's pretty convoluted when printf does the job out of the box. Just for my own curiosity, why do you need to use echo?

It makes me wonder; Is this a homework question? If so we can still help but you need to move this thread (ask a moderator) and fill out the homework question template.
# 10  
Old 08-25-2009
Boss,

If this is a homework question .... am in dumb to post it here Smilie ...... anyway still my question is un-answered ... let me give it out ...

Current scenario:

$var_datafile = MYFILE.TXT

PROD_DT=`date '+%Y%m%d %H:%M'`
NO_OF_ROWS=`cat "$var_datafile"|wc -l|tr -d ' '`

echo "NUMBER OF RECORDS "${NO_OF_ROWS}"\n
FILE CREATION DATE&TIME "${PROD_DT}"


Criteria:
  • Each row should be of 80 byte length...
  • Even though the value gets changed for $NO_OF_ROWS , but the byte length must remain constant .
# 11  
Old 08-25-2009
Code:
 
typeset -L80 NO_OF_ROWS="NUMBER OF RECORDS "=`cat MYFILE.TXT |wc -l|tr -d ' '`
typeset -L80 PROD_DT="\nFILE CREATION DATE&TIME "`date '+%Y%m%d %H:%M'`
echo "${NO_OF_ROWS}${PROD_DT}"

Assume you use ksh.
Each row isalso 80 bytes.

I too think this is a homework question.
Let me watch.
# 12  
Old 08-26-2009
@samtel

Explain why you can't live with a simple printf or any of the other suggestions given, ty.
# 13  
Old 08-26-2009
Quote:
Originally Posted by Samtel
If this is a homework question .... am in dumb to post it here Smilie ...... anyway still my question is un-answered ... let me give it out ...
If this is not homework, then why must you use echo v. printf?

Only homework questions require such things. Real world work problems do not require echo, they require the correct commands / tools for the job.

I am going to close this thread unless Samtel explains exactly why he cannot use printf (or anything other than echo).
# 14  
Old 08-26-2009
Come to think of it, I fully concur with you Neo.
I think I should not have given the full answer.
Wth out the printf typeset is the only alternative.
And I think that is what they were looking for the students to come up with.
Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Difference between echo `ls -l` and echo "`ls -l`" ?

Hi guys, Been messing around with shell programming for a couple of days and I found something that was pretty odd in the behavior of the echo command. Below is an example-: When I type the following in my /home directory from my lxterminal in Debian-: echo "`ls -l`" I get the... (2 Replies)
Discussion started by: sreyan32
2 Replies

2. UNIX for Dummies Questions & Answers

echo

Hello, I'm working with ksh. I was working with the echo command That is echo "Today is $date" which would show for example Toady is 7/12/12 which was fine however, know I only recieve the first part of the echo without the date. Today is Could I have edited the echo... (9 Replies)
Discussion started by: JD_Sal
9 Replies

3. Shell Programming and Scripting

tcsh - understanding difference between "echo string" and "echo string > /dev/stdout"

I came across and unexpected behavior with redirections in tcsh. I know, csh is not best for redirections, but I'd like to understand what is happening here. I have following script (called out_to_streams.csh): #!/bin/tcsh -f echo Redirected to STDOUT > /dev/stdout echo Redirected to... (2 Replies)
Discussion started by: marcink
2 Replies

4. Shell Programming and Scripting

With that logic this echoes "echo". Question about echo!

echo `echo ` doesn't echoes anything. And it's logic. But echo `echo `echo ` ` does echoes "echo". What's the logic of it? the `echo `echo ` inside of the whole (first) echo, echoes nothing, so the first echo have to echo nothing but echoes "echo" (too much echoing :P):o (2 Replies)
Discussion started by: hakermania
2 Replies

5. Shell Programming and Scripting

Help with echo

Hi Guys, I need to print a value in the same line , But when we use the echo instead the loops (while), the value goes to the next line.. Can you help me in this.. Thanks For your help in advance. (6 Replies)
Discussion started by: mac4rfree
6 Replies

6. UNIX for Dummies Questions & Answers

How to correctly use an echo inside an echo?

Bit of a weird one i suppose, i want to use an echo inside an echo... For example... i have a script that i want to use to take users input and create another script. Inside this script it creates it also needs to use echos... echo "echo "hello"" >$file echo "echo "goodbye"" >$file ... (3 Replies)
Discussion started by: mokachoka
3 Replies

7. Shell Programming and Scripting

echo !.

can someone tell me what does this code do? echo !. (2 Replies)
Discussion started by: ryandegreat25
2 Replies

8. Shell Programming and Scripting

Difference between using "echo" builtin and /bin/echo

So in my shell i execute: { while true; do echo string; sleep 1; done } | read line This waits one second and returns. But { while true; do /bin/echo string; sleep 1; done } | read line continues to run, and doesn't stop until i kill it explicitly. I have tried this in bash as well as zsh,... (2 Replies)
Discussion started by: ulidtko
2 Replies

9. UNIX for Dummies Questions & Answers

echo

Is there a way to get echo to make newlines without using any type of quotes? I've done a lot of searches and went into my Linux book to no avail. I'm trying to write five separate lines to a file. I can get echo to accept all five lines like this echo \ \this is line 1\ \this is line 2\ >... (6 Replies)
Discussion started by: Trekker182
6 Replies

10. Shell Programming and Scripting

echo

what is the meaning of this echo $description | wc -m` -ne "1" (0 Replies)
Discussion started by: debasis.mishra
0 Replies
Login or Register to Ask a Question