1

私はChefとRubyが初めてで、特定のLinux/Windowsユーザーから環境変数を読み取り、それを使用してファイルを配置する方法を理解しようとしています.

私がやりたいことはtnsnames.ora、クライアントと DB インストール用の Oracle ファイルを更新することです。

これらのファイルは、Windows またはC:\oracleLinuxの ようなディレクトリにある場合があります。C:\Program Files\oracle/u01/app/oracle/product/11.2/network/admin/u01/app/oracle/producdt/10.2/network/admin

環境変数をレシピに読み込んで使用しない限り、正確な場所を知ることは 100% 確信できません。

私は読んでいまし#{ENV['HOME']}たが、それが私が使用したい構文のタイプであるかどうかはよくわかりません。

4

1 に答える 1

0

Ruby には、これを行うためのネイティブ メソッドがあります。疑う

template "#{Dir.home("oracle")}/network/admin/tnsnames.ora" do
    source "tnsnames.ora.erb"
    [...]
end

おおよそあなたが望むことをします。もちろん、ホームディレクトリの場所以外にオペレーティングシステム間に違いがない場合にのみ、これは機能します。

于 2013-09-27T03:55:55.363 に答える