Rex::Commands::Augeas - An augeas module for (R)?ex
This is a simple module to manipulate configuration files with the help of augeas.
my $k = augeas exists => "/files/etc/hosts/*/ipaddr", "127.0.0.1"; augeas insert => "/files/etc/hosts", label => "01", after => "/7", ipaddr => "192.168.2.23", canonical => "test"; augeas dump => "/files/etc/hosts"; augeas modify => "/files/etc/ssh/sshd_config/PermitRootLogin" => "without-password", on_change => sub { service ssh => "restart"; };
It returns 1 on success and 0 on failure.
Actions:
This modifies the keys given in @options in $file.
augeas modify => "/files/etc/hosts/7/ipaddr" => "127.0.0.2", "/files/etc/hosts/7/canonical" => "test01", on_change => sub { say "I changed!" };
Remove an entry.
augeas remove => "/files/etc/hosts/2", on_change => sub { say "I changed!" };
Insert an item into the file. Here, the order of the options is important. If the order is wrong it won't save your changes.
augeas insert => "/files/etc/hosts", label => "01", after => "/7", ipaddr => "192.168.2.23", alias => "test02", on_change => sub { say "I changed!" };
Dump the contents of a file to STDOUT.
augeas dump => "/files/etc/hosts";
Check if an item exists.
my $exists = augeas exists => "/files/etc/hosts/*/ipaddr" => "127.0.0.1"; if($exists) { say "127.0.0.1 exists!"; }
Returns the value of the given item.
my $val = augeas get => "/files/etc/hosts/1/ipaddr";
To install Rex, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Rex
CPAN shell
perl -MCPAN -e shell install Rex
For more information on module installation, please visit the detailed CPAN module installation guide.