ksh PS4 variable assign to `date` output


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting ksh PS4 variable assign to `date` output
# 1  
Old 10-29-2013
ksh PS4 variable assign to `date` output

Hi guys,
Is there a way to assign curent time to PS4 variable in ksh. My goal is to have each line produced by 'set -x' command to have a time stamp.
Here is my code:

Code:
$cat test
#!/usr/bin/ksh
export PS4="`date` [${LINENO}]"
set -x
echo "TRACE LINE ONE"
echo "I WILL SLEEP FOR 10 SEC"
sleep 10
echo "TRACE LINE TWO"
exit 0
$

and this is an output:

Code:
$./test
Tue Oct 29 10:05:53 EDT 2013 [2]echo TRACE LINE ONE
TRACE LINE ONE
Tue Oct 29 10:05:53 EDT 2013 [2]echo I WILL SLEEP FOR 10 SEC
I WILL SLEEP FOR 10 SEC
Tue Oct 29 10:05:53 EDT 2013 [2]sleep 10
Tue Oct 29 10:05:53 EDT 2013 [2]echo TRACE LINE TWO
TRACE LINE TWO
Tue Oct 29 10:05:53 EDT 2013 [2]exit 0
$

Note: the time stamp remains the same although 'sleep 10' should have change it.
May be someone know how to make the time to change dynamically
I am in ksh88.
Thanks a lot for any advice.....
# 2  
Old 10-29-2013
You would either need to use a loop or call the date command again after the sleep command to grab the current time.
# 3  
Old 10-29-2013
Try this (untested with ksh88 but works with ksh93):
Code:
PS4='$(date) [${LINENO}]'

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Assign output to dynamic variable

Hi Folks, I am trying to assign a value from the command to a dynamic variable. But I am not getting the desired output.. I am sure something is wrong so i need experts advise. There will be multiple files like /var/tmp/server_1, /var/tmp/server_2, /var/tmp/server_3, having different server... (6 Replies)
Discussion started by: ganga.dharan
6 Replies

2. Shell Programming and Scripting

assign date to a variable

hi, i've just started learning a bit of shell scripting and i wanted to know how to assign the value of the day of the month (i think the command for that is date +%d) to a variable say 'd' so that i can display 'st', 'nd', 'rd' and 'th' depending upon the value of that variable. i'd... (5 Replies)
Discussion started by: xXWiLdAcEXx
5 Replies

3. Emergency UNIX and Linux Support

assign yesterday's date to variable

Hi, i am trying to assign yesterday's date to a variable on below system - Machine hardware: sun4u OS version: 5.9 Processor type: sparc usr> setenv dt `date +"%Y%m%d"` usr> echo $dt 20100820 i am able to assign today's date but similarly i want to assign yesterday's... (8 Replies)
Discussion started by: rahulbahulekar
8 Replies

4. Shell Programming and Scripting

Assign field value in a .csv file to a variable using ksh

Hi, I'm new to the scripting world... I want to know that how can I assign the the field value(that has multiple lines) of a .csv file to a variable??? Model of my .csv file : 1 Poppy 5 2 red 6 3 black 5 4 white 8 and so on,the list... (4 Replies)
Discussion started by: srim
4 Replies

5. Shell Programming and Scripting

Assign perl output to ksh shell variable

Hello, I am writing a ksh script on an AIX system. I need to get the date and time from a file into a variable. I found the following perl script from another post on this site and modified it slightly to output the format I need: perl -e '@d=localtime ((stat(shift)));... (4 Replies)
Discussion started by: swimp
4 Replies

6. Shell Programming and Scripting

Assign dscl output to variable as an array

Greetings folks, I am trying to assign the output of a dscl command (contains name<spaces>id) to a variable as an array. Currently I am piping the output into a tmp file, then reading the tmp file into an array, then parsing the array. I would like to bypass creating the tmp file portion of... (6 Replies)
Discussion started by: macnetdaemon
6 Replies

7. Shell Programming and Scripting

assign awk output to bash variable

greetings all, I am have a heck of a time trying to accomplish a very simple thing. I have an array of "shortname<spaces>id" created from a dscl output. I want to assign shortname=word1 and id=word2. I have tried shortname=$(${textArray} | awk '{print $1}') - and get 'awk : cannot open... (3 Replies)
Discussion started by: macnetdaemon
3 Replies

8. Shell Programming and Scripting

Assign command (with pipe) output to a variable

Hi , I would like to assign command (with pipe) output to a variable. The code is as follows. The goal of the code is to get the last folder folder with a particular name pattern. myDate=`ls | grep 2009 | tail -1` echo "myDate=" $myDate However, in the presence of the pipe, the code... (3 Replies)
Discussion started by: jeff_cen
3 Replies

9. Shell Programming and Scripting

hot to assign output to a variable

I want to assign a comment to a veriable for example my program head -1 myfile I want to assıgn output to a variable (1 Reply)
Discussion started by: walnut
1 Replies

10. UNIX for Dummies Questions & Answers

how to assign an output to a variable

Hi, I am giving a grep command, and i am getting the output. i want to store it in a variable for eg a = grep '12345' /dir/1/2/log.txt ( the output is number) b= grep 'basic' /dir/1/2/log1.txt (in this case the output is character) so how to assign the output of grep to a variable ... (1 Reply)
Discussion started by: vasikaran
1 Replies
Login or Register to Ask a Question