系统的默认shell是csh
,但我想用bash
编写一个脚本。我应该如何编写一个脚本来运行bash,并在结束时切换回csh?
我尝试了这个方法,但它不起作用:
bash
var=Hello
echo $var
csh
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.
使用sha bang定义它
#!/bin/bash
在你的文件开头。
#!/bin/csh
吗? - Elpezmuerto您不需要再次更改shell。当运行脚本时,它将由子shell运行(在脚本结束时退出),父shell不会受到影响。因此,如已经建议的那样,您唯一需要做的就是确保脚本由正确的shell运行,而“shebang”是实现这一点的方法:
#!/bin/bash
var=Hello
echo $var