2010-01-29 97 views
4

我想这样做:有没有办法让一个shell在脚本中间变得互动?

do lots of stuff to prepare a good environement 
become_interactive 
#wait for Ctrl-D 
automatically clean up 

是否有可能使用bash?如果不是,你看到另一种做同样事情的方式吗?

+0

非常感谢你们两位的你的答案! – 2010-01-29 09:30:01

回答

8

结构是这样的:

test.sh

#!/bin/sh 
exec bash --rcfile environ.sh 

environ.sh

cleanup() { 
    echo "Cleaning up" 
} 
trap cleanup EXIT 
echo "Initializing" 
PS1='>> ' 

在行动:

~$ ./test.sh 
Initializing 
>> exit 
Cleaning up 
2

您可以在脚本中间调用另一个shell,但会更改为例如环境变量不会反映在它之外。

相关问题