kdb-elektrify-getenv-クラウドでのオンライン

これはコマンドkdb-elektrify-getenvであり、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションのXNUMXつを使用してOnWorks無料ホスティングプロバイダーで実行できます。

プログラム:

NAME


kdb-elektrify-getenv -アプリケーションの環境を電気化する

SYNOPSIS


kdb elektriify-getenv オプション

DESCRIPTION


アプリケーションがlibelektragetenvを使用して電子化されると、それは要求するだけではありません
環境、だけでなく、すべてのエレクトラ ゲテンブ(3)と secure_getenv(3)ライブラリ呼び出し。

その主な目的は次のとおりです。

・環境を変更するための標準的な方法があります

・アプリケーションの再ログイン(または再起動さえも!)を不要にします

・環境の階層構造を許可する

・設定を個々のアプリケーションにのみ、または特別なコンテキストでのみ適用できるようにする

・利点を維持します(サブプロセスへの環境の継承)

・at、cronおよび同様のスクリプトでの可用性。

LD_PRELOAD手法を使用して実装されます。を参照してください。 USAGE グローバルアクティベーションについては、以下をご覧ください。

ルックアップ


このアプローチの主な目的は、最終的に設定および取得するための明確な方法を用意することです。
環境変数。 Elektraの変数は、すべての新規にすぐに使用されます
アプリケーションを開始しました(再ログインは必要ありません)。

そうするために、 ゲテンブ(3)環境内の検索の横にある複数のソースを検索します
(環境)。 実行例として使用します getenv( "HOME") -> / path / to / home:

1.指定されたコマンドラインパラメータが常に優先されます(を参照) OPTIONS 下)。

例えば kdb elektriify-getenv --elektra:HOME = / path / to / home

2.次に / env / override / 調べられます、どこで キー のパラメータです ゲテンブ。 場合
見つかった場合、キーがnullキーの場合、キーが返されます。 ゲテンブ 戻ります NULL.

例えば kdb セッションに user / env / override / HOME / path / to / home

3.次に、環境が要求されます。

例えば HOME = / path / to / home kdb elektriify-getenv

4.次に / env / fallback / 調べられます。 見つかった場合、キーが返されます。
ヌルキーです、 ゲテンブ 戻ります NULL.

例えば kdb セッションに user / env / fallback / HOME / path / to / home

OPTIONS


日時 elektriify-getenv アクティブである場合、すべてのアプリケーションはさらにElektraのgetenvを受け入れます
オプション。 Elektraとアプリケーションのオプションのインターリーブが許可されています。 エレクトラは
最初にそのオプション(--elektraで始まる)を解析し、他のオプションの前にそれらを破棄します
アプリケーションが起動します。 したがって、アプリケーションはそれらが存在したことさえ認識しません。
例:与えられた kdb elektriify-getenv -V --elektra-デバッグ -L アプリケーションは
と呼ばれる -V -L.

内部 オプション
--elektra-ヘルプ
このヘルプを出力します。

--elektra-バージョン
バージョン情報を提供します。

--elektra-debug = file, エレクトラ_デバッグ or / env / option / debug
すべてをトレース ゲテンブ(3)ファイルの呼び出し。 ファイルが指定されていない場合はstderr、例: kdb セッションに
user / env / option / debug ""。 null値(XNUMX番目の引数なし)は無効になることに注意してください
デバッグメッセージ。 以下の例を参照してください。

--elektra-clearenv, ELEKTRA_CLEARENV or / env / option / clearenv
コー​​ル クリア環境(3)メインに入る前。 これは推奨されるセキュリティ機能です。
Elektra自体は、そのように構成されている場合でも、環境を使用できます。

--elektra-reload-timeout = time_in_ms, ELEKTRA_RELOAD_TIMEOUT or / env / option / reload_timeout
時間がミリ秒で指定されている場合(0ではない場合)、タイムアウトベースの機能をアクティブにします。

内部オプションには、次のXNUMXつのバリエーションがあります。

1.コマンドラインパラメータとして: --elektra-は、 通りました exec(3)
呼び出します。

2.環境変数として: ELEKTRA_。 通過する可能性があります exec(3)
呼び出しますが、によって削除されます クリア環境(3)呼び出し。

3. Elektra KDBエントリとして: / env / option /、オプションを実現する方法です
すべてのアプリケーションで有効になります。

例えば kdb セッションに user / env / option / clearenv "" すべてのアプリケーションの環境をクリアします
そのユーザーによって開始されました(少なくとも注意してください パス を使用して設定する必要があります kdb セッションに
user / env / fallback / PATH "/ binに:/ usr / bin" その後)。

nullキーは、設定されていないオプションと同じであることに注意してください。 例えば kdb セッションに
system / env / option / debug 「/tmp/elektra.log」 および kdb セッションに user / env / option / debug 意志
現在のユーザーを除いて、システムのロギングをアクティブ化します。

文脈上のデータ オプション
--elektra% %= or / env / layer /
コンテキスト情報を追加する(=レイヤー) % % その価値で 。 ご了承ください
%ヤムイモ% で事前定義されています argv [0] および %basename%   basename(argv [0]).

値には/を含めることができ、階層を形成します。例: --elektra%name%= app / profile

オプション for アプリケーション
--elektra:key = value, / env / override / or / env / fallback /
キー/値を優先するように設定します。つまり、で説明されているように最初に考慮されます。
調べる.

キーには、階層を形成するための/を含めることができます。 --elektra:my / HOME = / path / to / home.

USAGE


Elektraのgetenv環境を常に使用するには、出力をファイルに追加するだけです。

kdb elektrify-getenv | テール-1| sudo tee -a /etc/ld.so.preload

これは、Elektraを使用して行うこともできます。

sudo kdb mount /etc/ld.so.preload system / ld / preload line null
sudo kdb set "system / ld / preload / new" `kdb elektrify-getenv | テール-1`

コンテキスト


メタデータ コンテキスト 仕様では、コンテキストに依存することを容易にするために使用できます
調べる。 そのメタ値では、 % % 与えられたものに置き換えられます
コンテキストオプション --elektra% %= および / env / layer / キー。

たとえば、ユーザーとアプリケーションごとに異なるホームディレクトリを作成します。

kdb set user / env / layer / user markus
kdb set user / users / markus / konqueror / HOME / home / download
kdb setmeta spec / env / override/HOMEコンテキスト/users/%user%/%name%/ HOME

onworks.netサービスを使用してオンラインでkdb-elektrify-getenvを使用する



最新のLinuxおよびWindowsオンラインプログラム