我有 Unix shell 脚本,它使用了一些环境文件。在环境文件中,我看到以下行:
. /export/applications/ibm6000/dte/sh/nyggmfiss.env
当我打开 nyggmfiss.env 文件时,我看到变量
${__DTEENV}
我检查了其他环境文件,其中一个文件有一行
export __DTEENV=${0}
有人知道 $(0) 是什么吗?它是来自导出一个环境文件的脚本,还是环境文件的名称,其中包含“导出另一个环境文件”?
答案1
男人猛击:
$0 is set to the name of the file
答案2
${0}
是外壳脚本,它以#!/bin/yourshell
(shebang 行)作为第一行来启动 shell 进程。
如果没有外壳脚本(当您.
在命令行中输入命令时),那么${0}
就是您的 shell。
的概念${0}
不适用于有源的“环境文件”,因此.
在 中执行命令(源命令)时它保持不变。