当我运行时echo $SHELL
,输出说/bin/tcsh
这意味着我正在运行一个tcsh
shell。但是例如当我发出以下命令时
alias emacs 'emacs -nw'
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
bash: alias: emacs: not found
bash: alias: emacs -nw: not found
Run Code Online (Sandbox Code Playgroud)
当我发出alias emacs="emacs -nw"
它运行正常!
这令人困惑,因为我正在运行,tcsh
但命令由bash
.
可能是什么原因?
我有一个 shell 脚本,我想在其中添加一个 shebang。给定一个定义如下的变量:
SHEBANG="#!/bin/sh"
Run Code Online (Sandbox Code Playgroud)
我的问题是我是否可以在另一个脚本中使用该变量,如下所示:
$SHEBANG
# other stuff...
Run Code Online (Sandbox Code Playgroud)