erby と erb はどう違いますか?どちらかを選択するように駆り立てるのは、どのような考慮事項ですか?
私のアプリケーションは、ネットワーク デバイス (ルーター、ロード バランサー、ファイアウォールなど) の構成ファイルを生成しています。私の計画は、ソース ファイル内に埋め込まれた ruby (eruby または erb のいずれかを介して) を使用して構成ファイルをテンプレート化し、ルーターのすべてのインターフェイス構成ブロックを繰り返し生成するなどのことを行うことです (これらのブロックはすべて非常に似ており、ラベルのみが異なります)。および IP アドレス)。たとえば、次のような構成テンプレート ファイルがあるとします。
hostname sample-router
<%=
r = String.new;
[
["GigabitEthernet1/1", "10.5.16.1"],
["GigabitEthernet1/2", "10.5.17.1"],
["GigabitEthernet1/3", "10.5.18.1"]
].each { |tuple|
r << "interface #{tuple[0]}\n"
r << " ip address #{tuple[1]} netmask 255.255.255.0\n"
}
r.chomp
%>
logging 10.5.16.26
組み込みの Ruby インタープリター (erb または eruby) を実行すると、次の出力が生成されます。
hostname sample-router
interface GigabitEthernet1/1
ip address 10.5.16.1 netmask 255.255.255.0
interface GigabitEthernet1/2
ip address 10.5.17.1 netmask 255.255.255.0
interface GigabitEthernet1/3
ip address 10.5.18.1 netmask 255.255.255.0
logging 10.5.16.26