PS1 challenge


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting PS1 challenge
# 8  
Old 10-21-2010
Sure, I did it, give it a try.

You don't want it to destroy your ability to type the next command.
# 9  
Old 10-21-2010
Code:
# PS1=$(pwdx="$PWD" ; while [ "${pwdx#/*/*/" != "$pwdx" ] ; do pwdx="${pwdx#/*}" ; done ;if [ "$pwdx" != "$PWD" ] ; then pwdx=..."$pwdx" ; fi ; echo "$pwdx")
ksh: "${pwdx#/*/*/": bad substitution



---------- Post updated at 11:50 PM ---------- Previous update was at 11:49 PM ----------



... and my PS1 got ******* ... Scott , like this it's ok : it is as secret as a password Smilie

Last edited by ctsgnb; 10-21-2010 at 08:06 PM.. Reason: Scottn censor
# 10  
Old 10-21-2010
OK, let's give it a try Smilie in bash:
Code:
PS1="\u@\h:"'$([ "$PWD" != "${PWD%/*/*/*}" ] && echo "/...${PWD##${PWD%/*/*}}" || echo "$PWD")\$ '



---------- Post updated at 00:41 ---------- Previous update was at 00:28 ----------

ksh:
Code:
PS1="$(whoami)@$(hostname):"'$([ "$PWD" != "${PWD%/*/*/*}" ] && echo "/...${PWD##${PWD%/*/*}}" || echo "$PWD")\$ '

# 11  
Old 10-21-2010
@Srcut1Linizer

i validate your solution, that one worked :

Code:
PS1=$LOGNAME@$(hostname):'$([ "$PWD" != "${PWD%/*/*/*}" ] && echo "/...${PWD##${PWD%/*/*}}" || echo "$PWD")\$ '

...maybe i should have asked for /dir/.../dir instead of /.../dir/dir :

Code:
PS1=$LOGNAME@$(hostname):'$([ "$PWD" != "${PWD%/*/*/*}" ] && echo "${PWD%%${PWD#/*/}}...${PWD##${PWD%/*}}" || echo "$PWD")\$ '

Smilie

Last edited by ctsgnb; 10-21-2010 at 09:00 PM..
# 12  
Old 11-09-2010
If in ksh you could always add this in your .kshrc:
Code:
CD(){
if [ $# -ne 0 ]
  then
    cd $1
  else
    cd $HOME
  fi
PS1="`uname -n`:..`echo $PWD | awk -F/ '{print $(NF-1)"/"$NF}'` > "
}
alias cd=CD

# 13  
Old 11-09-2010
It's nicer if generating PS1 does not fork or exec!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

PS1 - change

Hello I am attempting to generate a bash scrip that prompts me at loggin to change my PS1 - However, I am running into an issue w/ the code. #!/bin/bash #the point of this script is to that it automates and changes my prompts every day msg1="What do you feel like adding today :" echo... (11 Replies)
Discussion started by: D'go
11 Replies

2. Shell Programming and Scripting

Anyone like a challenge?

I have searched through google, and this forum to try and find the answer, but alas, nothing quite hits the whole answer. I am trying to read the last line (or lines) of some log files. I do this often. The files are named sequentially, using the date as part of the file name, and appending... (18 Replies)
Discussion started by: BatterBits
18 Replies

3. Shell Programming and Scripting

Changing PS1

I have coded PS1 as shown, producing the following result when writing on the command line ┌─ cdl └──╼ make tracepdf2d If I make an error in the command an ✗ is printed ┌─ ✗ cdl └──╼ ls-a ls-a: command not found My problem is that if I just press enter, I do not want to have the... (3 Replies)
Discussion started by: kristinu
3 Replies

4. Shell Programming and Scripting

Help with Export PS1 I think :-0

I am 100% new to Unix and trying to learn. This is my first time even touching a script in Unix. We have the following variable script that I am trying to run.... ################################## ###### variable test### ################################## Hostname=`hostname`... (3 Replies)
Discussion started by: LRoberts
3 Replies

5. UNIX for Dummies Questions & Answers

PS1 prompt

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

6. Shell Programming and Scripting

To change PS1 for every one second

I want to change the PS1 prompt with current time. I want the PS1 to update for every one second. I write a Script. PS1='\T' but it updates after i press enter key.I want to update without pressing enter key. can any one help me? (0 Replies)
Discussion started by: lakshmananindia
0 Replies

7. UNIX for Dummies Questions & Answers

PS1 in ksh

I know this question has come up before but I couldn't find any documentation on ksh here. I'm trying PS1="`whoami`@`hostname`:`pwd`> " export PS1 in ksh but the working directory sticks at the home directory. How do I fix that? Also, how do I make the prompt bold in korn? (3 Replies)
Discussion started by: rein
3 Replies

8. UNIX for Dummies Questions & Answers

PS1 problem

can anyone tell me how to change the $ prompt by calling a variable. Say for example i called a var 'enable' I and would like the $ prompt to change to a phrase like 'my prompt' any help would be great (1 Reply)
Discussion started by: pg080394
1 Replies

9. UNIX for Advanced & Expert Users

PS1 variable

I want to set my prompt to something more descriptive than a plain old $, so I set the PS1 variable as such: PS1="" Which changes the prompt correctly, but when I change directories, it does not update the prompt. So I tried this: PS1="`pwd`>" I get the same results when changing... (2 Replies)
Discussion started by: dangral
2 Replies

10. UNIX for Dummies Questions & Answers

I changed PS1 and now ....

Hello I am using Debain Potato and I changed the PS1. When I log in locally everythink is fine, except that when I enter a long row without hitting enter, then it word wraps automatically. And it does it not at the end of the row, it does it in the middle of the row! It also does not writes... (7 Replies)
Discussion started by: Fwurm
7 Replies
Login or Register to Ask a Question