run bash command in new shell and stay in new shel

2019-01-11 06:27发布

问题:

I've got a problem. I'm searching for long time for this answer - how can I run command in new bash shell and stay in this NEW shell after this commands executes. So for example:

bash -c "export PS1='> ' && ls"

will make new shell, export PS1, list directories and ... will exit to my current shell. I want to stay in the new one.

回答1:

You can achieve something similar by abusing the --rcfile option:

bash --rcfile <(echo "export PS1='> ' && ls")

From bash manpage:

--rcfile file

Execute commands from file instead of the system wide initialization file /etc/bash.bashrc and the standard personal initialization file ~/.bashrc if the shell is interactive



回答2:

The lazy one:

bash -c "export PS1='> ' && ls; bash"