我有一個 shell 腳本,它導出一個環境文件,該文件本身導出第二個環境,在其中聲明並導出全域變量

我有一個 shell 腳本,它導出一個環境文件,該文件本身導出第二個環境,在其中聲明並導出全域變量

我有 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}就是您的外殼。

的概念${0}不適用於來源“環境文件”,因此當.命令(來源命令)在 .

相關內容