系统上的默认shell是csh
,但我想在bash
中编写脚本。我如何编写一个运行bash的脚本,然后在最后转换回csh。
我尝试了这个,但它不起作用:
bash
var=Hello
echo $var
csh
答案 0 :(得分:3)
您要查找的命令是exit
。在键盘上输入时,使用exit
代替csh
返回 csh 。当您输入csh
时,刚刚在 csh 和 bash 会话之上启动了一个新的 csh 会话。
%bash
$ var=Hello
$ echo $var
Hello
$ exit
exit
%
正如其他人所说,使用脚本时:
#! /bin/bash
var=Hello
echo $var
exit # You don't need exit; but it's okay here.
答案 1 :(得分:2)
使用sha bang
定义它#!/bin/bash
在您的文件开头。
答案 2 :(得分:2)
您无需再次更换外壳。当脚本运行时,它将由子shell(在脚本末尾退出)运行,并且父shell不变。所以,正如已经建议的那样,你唯一要做的就是确保脚本由正确的shell运行,并且'shebang'是这样做的方法:
#!/bin/bash
var=Hello
echo $var
这就是全部。