【问题标题】:Bash Aliases and DotfilesBash 别名和点文件
【发布时间】:2017-05-09 10:23:56
【问题描述】:

我最近在一个包含别名的文件顶部遇到了这个# -*- sh -*-。它是某人的 bash 目录中的点文件的一部分,直到现在,我以前从未见过它。那么,这是什么?它与使用 shebang 有何不同?我尝试在谷歌上搜索 shebang 的替代品,但没有想出任何可以让我知道上面是什么的提示。

【问题讨论】:

  • shebang 是一个幻数(本质上),它告诉 bash 以下脚本应该由指定的可执行文件解释,而不是通过 bash(或任何当前 shell)执行。更多信息:unix.stackexchange.com/a/87600

标签: bash dotfiles aliases


【解决方案1】:

具有别名定义的文件不需要需要shebang行,因为单独执行它们不会将定义添加到当前 shell,这是别名定义的点.

相反,具有别名定义的文件必须来源(在当前 shell 的上下文中运行,使用source.)。

因此,您所看到的只是一个普通的注释,它表明该文件的设计来源是哪个特定的 shell (sh)。

【讨论】:

    猜你喜欢
    • 2018-03-07
    • 2017-12-24
    • 2022-10-24
    • 2018-03-13
    • 1970-01-01
    • 2011-08-14
    • 1970-01-01
    • 2017-12-08
    • 1970-01-01
    相关资源
    最近更新 更多