in reply to hiccoughing here documents
You can use backticks to quote the terminating string; you can also stack multiple heredocs. Here's an example to get the output you show:
#!/usr/bin/env perl use strict; use warnings; my $rule_base = 'ip rule add fwmark 0x0201/0xffff table'; my $route_base = 'ip route add default via 172.27.201.1 dev eth1.201 t +able'; my @table_nums = (200, 201); my $routing_commands = <<`RULE` . <<`ROUTE`; for i in @table_nums; do echo "$rule_base \$i"; done RULE for i in @table_nums; do echo "$route_base \$i"; done ROUTE print $routing_commands;
Output:
ip rule add fwmark 0x0201/0xffff table 200 ip rule add fwmark 0x0201/0xffff table 201 ip route add default via 172.27.201.1 dev eth1.201 table 200 ip route add default via 172.27.201.1 dev eth1.201 table 201
See "perlop: here-document syntax" for details.
— Ken
|
|---|