11-29-2005
Ygor's solution will work with ksh95 or pdksh. But ksh88 only expands variables...it won't do a general parse. I am not real fond of invoking the date command with each each display of the prompt.
ksh95 has a feature called discipline functions and these can be used to create dynamic variables that work like RANDOM.
Here is a solution that will work with all three versions of ksh. If we set SECONDS, it will continue to advance. So if we set it to the number of seconds since midnight it will serve as a time-of-day clock. To get from seconds-after-midnight to hours:minutes:seconds we need to do some arithmetic. If we reference a imaginary array, we can compute a subscript for it and use side effects from the subscript computation to set other variables. A single date process is used to initialize the clock, but after that the time is computed by the shell itself.
unset _h _m _s
eval $(date "+_h=%H ;_m=%M ;_s=%S")
((SECONDS = 3600*${_h#0}+60*${_m#0}+${_s#0}))
typeset -Z2 _h _m _s
_tsub="(_m=(SECONDS/60%60)) == (_h=(SECONDS/3600%24)) + (_s=(SECONDS%60))"
_timehm='${_x[_tsub]}$_h:${_m}'
_timehms='${_x[_tsub]}$_h:$_m:${_s}'
PS1="$_timehm $ "
These 2 Users Gave Thanks to Perderabo For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
How would I put the date within my PS1 command for my shell prompt?
I have it set to:
PS1='$>'
I tried PS1='$>' but that didn't work. (7 Replies)
Discussion started by: kymberm
7 Replies
2. UNIX for Dummies Questions & Answers
would someone please explain in detail, how does the code below change the color or bash prompt
$ echo $PS1
:\033
are there other tricks like above? (3 Replies)
Discussion started by: rakeshou
3 Replies
3. UNIX for Dummies Questions & Answers
please advise what's wrong with this command ?
PS1="`hostname`:`who am i | cut -d " " -f1`:>>"
trying to make the PS1 prompt look like :
machine_name:username:>>
thank you (4 Replies)
Discussion started by: venhart
4 Replies
4. Shell Programming and Scripting
Hi,
I'm trying to find out if there is a way to get a timestamp on my Solaris root shell prompt using /sbin/sh?
I'm trying to archive something in line with the following:
12:34:26 root@server #
12:34:28 root@server #
12:34:28 root@server # ls
...
12:34:30 root@server #
I know there... (1 Reply)
Discussion started by: Solarius
1 Replies
5. UNIX for Dummies Questions & Answers
I have set PSI for my prompt using the following command:
PS1="${debian_chroot:+($debian_chroot)}\\u@\h:\\\w\a]\ "which produces
chrisd@pguk:~]I want to include [ in the beginning but cannot understand the way to do this.
Also I want to show only the current directory, not the whole... (4 Replies)
Discussion started by: kristinu
4 Replies
6. Shell Programming and Scripting
I am trying to create my custom prompt and I have almost succeeded. Right now I have PS1='\n\\$\ '
What I have not figured out is how to make the directories bold when I'm using commands ls or ls -la.
Any idea how to do it???
Many thanx. (2 Replies)
Discussion started by: emailkia
2 Replies
7. Shell Programming and Scripting
Hello All,
I would like to display the current time in prompt.
I tried using following command:
export PS1="$(date +%k:%M:%S) $ "
but it gave me a fixed time in prompt whereas my objective is to get the current time everytime.
$ export PS1="$(date +%k:%M:%S) $ "
17:42:42 $
17:42:42 $... (32 Replies)
Discussion started by: manishdivs
32 Replies
8. UNIX for Dummies Questions & Answers
So, this is strange... I created this prompt:
PS1='\n\e
You can see that it's a pretty minor modification of the default Debian prompt. And, if it matters, I'm using Putty to SSH to my server. The following strange symptoms appear when I use that prompt, and disappear when I change and... (2 Replies)
Discussion started by: treesloth
2 Replies
9. UNIX for Dummies Questions & Answers
I have given as:
PS1="Karthick>" in linux.
Now the prompt changed as:
Karthick>
Now I need to get back the default prompt .
How to achieve this?
Thanks in advance (13 Replies)
Discussion started by: karthick nath
13 Replies
10. Solaris
Hi, I need help changing PS1 in Solaris. I tried this:
MYPROMPT="> "
PS1=$LOGNAME@$HOSTNAME:${PWD}$MYPROMPT (NOT SURE WHY IT'S HIGHLIGHTED HERE)
export PS1
My problem is that $PWD is not working, when I get the prompt and I change directories, the prompt is not displaying the current... (17 Replies)
Discussion started by: curiousmal
17 Replies
LEARN ABOUT SUSE
udhcpd.conf
UDHCPD.CONF(5) GNU/Linux Administrator's Manual UDHCPD.CONF(5)
NAME
udhcpd.conf - udhcp server configuration file
DESCRIPTION
The file /etc/udhcpd.conf contains configuration information specific to the udhcp server. It should contain one configuration keyword per
line, followed by appropriate configuration information.
OPTIONS
start ADDRESS
The starting address of the IP lease block is ADDRESS. The default is 192.168.0.20.
end ADDRESS
The ending address of the IP lease block is ADDRESS. The default is 192.168.0.254.
interface INTERFACE
The udhcp server should listen on INTERFACE. The default is eth0.
max_leases LEASES
Offer at most LEASES leases (including those reserved by OFFERs, DECLINEs, and ARP conflicts). The default is 254.
remaining REMAINING
If REMAINING is yes, store the time remaining for each lease. If it is no, store the expiration time for each lease. The default
is yes.
auto_time SECONDS
Write the lease information to a file every SECONDS seconds. The default is 7200.
decline_time SECONDS
Reserve an IP for SECONDS seconds if a DHCP decline message is received. The default is 3600.
conflict_time SECONDS
Reserve an IP for SECONDS seconds if an ARP conflict occurs. The default is 3600.
offer_time SECONDS
Reserve an IP for SECONDS seconds if it is offered. The default is 60.
min_lease SECONDS
Reserve an IP for the full lease time if the lease to be given is less than SECONDS seconds. The default is 60.
lease_file FILE
Write the lease information to FILE. The default is /var/lib/misc/udhcpd.leases.
pidfile FILE
Write the process ID to FILE. The default is /var/run/udhcpd.pid.
notify_file FILE
Execute FILE after the lease information is written. By default, no file is executed.
siaddr ADDRESS
BOOTP specific option. The default is 0.0.0.0.
sname NAME
BOOTP specific option. There is no default.
boot_file FILE
BOOTP specific option. There is no default.
option OPTION
DHCP specific option.
subnet ADDRESS
timezone OFFSET
router ADDRESS...
timesvr ADDRESS...
namesvr ADDRESS...
dns ADDRESS...
logsvr ADDRESS...
cookiesvr ADDRESS...
lprsvr ADDRESS...
hostname HOSTNAME
bootsize SIZE
domain DOMAIN
swapsvr ADDRESS
rootpath PATH
ipttl TTL
mtu MTU
broadcast ADDRESS
ntpsrv ADDRESS...
wins ADDRESS...
requestip ADDRESS
lease SECONDS
dhcptype TYPE
serverid ADDRESS
tftp FILE
bootfile FILE
The default for lease is 864000. There are no defaults for the other options.
SEE ALSO
udhcpd(8).
GNU
/Linux 2001-09-26 UDHCPD.CONF(5)