0

我有以下简单的 shell 脚本:

[测试.sh]

#! /bin/bash
echo $SHELL

为什么我总是/bin/tsch在以下所有场景中获得控制台输出?

1)在终端中,运行以下命令:

% ./test.sh

2)在终端中,运行以下命令:

% bash
$ ./test.sh

3)在终端中,运行以下命令:

% bash ./test.sh

您可能从%光标中可以看出,终端默认以 tcsh 开头。我对为什么#! /bin/bash在脚本和bash命令行中不影响$SHELL.

4

1 回答 1

1

请参阅手册中的Bash 变量

贝壳

shell 的完整路径名保存在此环境变量中。如果在 shell 启动时未设置,Bash 会为其分配当前用户登录 shell 的完整路径名。

我的重点。

如果您想要当前 bash 可执行文件的路径,请使用$BASH. 请参阅上面的文档链接。

于 2018-05-30T21:07:57.460 回答