2017-09-20 5 views
2

次のようにスクリプトを作成する方法があるのだろうか:名機能

#!/bin/ksh 
export() { 
echo "We're in the local function" 
} 
export 

主な問題はexportは、変数や環境の値を設定するための環境コマンドであることです変数は、このスクリプトが実行されたときにそれだけで要求されますような何か:

LOGIN=autosys 
LOGNAME=autosys 
MAIL=/usr/spool/mail/autosys 
PWD=/home/autosys/wlp 
SHELL=/usr/bin/ksh 
TZ=Europe/Paris 
HOME=/home/autosys 
... 

もちろんロジック、私はちょうど別の名前で私の機能に名前を付けることができますが、私は好奇心旺盛だとして(と、この機能は本当に輸出命名されなければならないので、目的)があるかどうか疑問に思うスクリプトに環境コマンドではなく、ローカルのexport()関数を実行したいことを知らせます。

export(){...} 
    call function(export) 
+0

代わりにあなたのkshスクリプトで機能するために別の名前を使用してみてください輸出のこれは、システム関数のエクスポートと混同してしまい、混乱します。 – LethalProgrammer

+0

@LethalProgrammerあなたはおそらく正しいでしょう、私はちょうど方法があったかどうかを見て興味があった – Will

答えて

1

よう

例えば何かはい、輸出はシェルでの予約語です。 は別の名前を選択する必要があります。

さらに、息子の代わりに現在のシェルへのエクスポートを適用するために、シェルスクリプトをソースする必要があります。

あなたが本当に/usr/local/binで、たとえば、「輸出」という名前の何かを呼び出す「輸出」という名前のシェルファイルを使用する場合:

/usr/local/bin/export bimbo lola juliet