Visit Our UNIX and Linux User Community


PS1 - change


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers PS1 - change
# 1  
Old 09-02-2015
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.


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 $msg1
read PROMPTT
$((PS1="{PROMPTT}"))

==
after entering my promptt i get:

Code:
changeprompt.sh: line 6: PS1="{PROMPTT}": syntax error: operand expected (error token is ""{PROMPTT}"")


What is wrong with my command?
Code:
$((PS1="{PROMPTT}"))

Moderator's Comments:
Mod Comment Please do not hijack threads; start a new thread for a new topic. This thread has been created from posts to a thread discussing a similar problem with a different shell on a different operating system.

Please use CODE tags for all sample input, output, and code segments.

Last edited by Don Cragun; 09-02-2015 at 02:39 PM.. Reason: Add CODE tags.
# 2  
Old 09-02-2015
Please use code tags as required by forum rules, and don't hijack other peoples' threads!

How about a simple PS1="$PROMPTT"
# 3  
Old 09-02-2015
No, it didnt work either

==
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 :"
cmd1='PS1="'
cmd2='"'
echo $msg1
read PROMPTT
PS1="$PROMPTT"

====

running command:
Code:
dgo@Linux ~ : sh changeprompt.sh
What do you feel like adding today :
Hello :
dgo@Linux ~ :


Last edited by Don Cragun; 09-02-2015 at 02:40 PM.. Reason: Add CODE tags.
# 4  
Old 09-02-2015
Please use code tags as required by forum rules, and don't hijack other peoples' threads!

Using sh (despite the fact you in principle want it run by bash as the shebang indicates) runs the script in a subshell and changes PS1 in there. The change is not reflected in your actual working shell. To make it work in your actual shell, you need to source it like either source changeprompt.sh or . changeprompt.sh
This User Gave Thanks to RudiC For This Post:
# 5  
Old 09-02-2015
My apologies - at the moment didnt see where to generate a thread.

ran it as bash changeprompt.sh and didnt work.

Thank you! it finally work with both of the options. source or .

not sure exactly what that means - is that because im running right from my source meaning profile or home ?
# 6  
Old 09-02-2015
man bash:
Quote:
. filename [arguments]
source filename [arguments]
Read and execute commands from filename in the current shell environment and return the exit status of the last command executed from filename.
(emphasis by me)
This User Gave Thanks to RudiC For This Post:
# 7  
Old 09-02-2015
Many thanks Rudi
 

Previous Thread | Next Thread
Test Your Knowledge in Computers #789
Difficulty: Medium
Steve Wozniak was employed at Sun Microsystems before he founded Apple Computers.
True or False?

10 More Discussions You Might Find Interesting

1. 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

2. Shell Programming and Scripting

Change / Setup bash custom prompt (PS1)

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

3. UNIX for Dummies Questions & Answers

Setting PS1

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

4. Shell Programming and Scripting

PS1 challenge

Ok then i Have a challenge for you : Give me PS1 so that it always display the least 2 levels of directory (except if i am above of course) I want it this way : so if i go to / /home/ /home/user /home/user/whatever /home/user/whatever1/whatever2 my PS1 should respectively... (12 Replies)
Discussion started by: ctsgnb
12 Replies

5. 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

6. 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

7. 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

8. 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

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

Featured Tech Videos