root@wireguard:~# grep -rn "while IFS.*peers::all\|for conf in.*\.conf\|peers::get_meta\|json::get\|peers::get_ip" \
>   /etc/wireguard/wgctl/commands/ | grep -v "list.command" | grep -v "\.git"
/etc/wireguard/wgctl/commands/rule.command.sh:119:    peer_rule=$(peers::get_meta "$peer_name" "rule")
/etc/wireguard/wgctl/commands/rule.command.sh:132:    name=$(json::get "$rule_file" "name")
/etc/wireguard/wgctl/commands/rule.command.sh:134:    desc=$(json::get "$rule_file" "desc")
/etc/wireguard/wgctl/commands/rule.command.sh:137:    n_allows=$(json::get "$rule_file" "allow_ips" | wc -l)
/etc/wireguard/wgctl/commands/rule.command.sh:138:    n_allow_ports=$(json::get "$rule_file" "allow_ports" | wc -l)
/etc/wireguard/wgctl/commands/rule.command.sh:140:    n_block_ips=$(json::get "$rule_file" "block_ips" | wc -l)
/etc/wireguard/wgctl/commands/rule.command.sh:141:    n_block_ports=$(json::get "$rule_file" "block_ports" | wc -l)
/etc/wireguard/wgctl/commands/rule.command.sh:191:  desc=$(json::get "$rule_file" "desc")
/etc/wireguard/wgctl/commands/rule.command.sh:192:  dns_redirect=$(json::get "$rule_file" "dns_redirect")
/etc/wireguard/wgctl/commands/rule.command.sh:199:  allow_ports=$(json::get "$rule_file" "allow_ports")
/etc/wireguard/wgctl/commands/rule.command.sh:209:  allow_ips=$(json::get "$rule_file" "allow_ips")
/etc/wireguard/wgctl/commands/rule.command.sh:219:  block_ips=$(json::get "$rule_file" "block_ips")
/etc/wireguard/wgctl/commands/rule.command.sh:229:  block_ports=$(json::get "$rule_file" "block_ports")
/etc/wireguard/wgctl/commands/rule.command.sh:250:      ip=$(peers::get_ip "$peer_name")
/etc/wireguard/wgctl/commands/rule.command.sh:415:      ip=$(peers::get_ip "$peer")
/etc/wireguard/wgctl/commands/rule.command.sh:456:  existing_rule=$(peers::get_meta "$peer" "rule")
/etc/wireguard/wgctl/commands/rule.command.sh:459:    ip=$(peers::get_ip "$peer")
/etc/wireguard/wgctl/commands/rule.command.sh:465:  ip=$(peers::get_ip "$peer")
/etc/wireguard/wgctl/commands/rule.command.sh:498:  existing_rule=$(peers::get_meta "$peer" "rule")
/etc/wireguard/wgctl/commands/rule.command.sh:506:  ip=$(peers::get_ip "$peer")
/etc/wireguard/wgctl/commands/rule.command.sh:525:    existing=$(peers::get_meta "$peer_name" "rule")
/etc/wireguard/wgctl/commands/rule.command.sh:531:    ip=$(peers::get_ip "$peer_name")
/etc/wireguard/wgctl/commands/remove.command.sh:80:  client_ip=$(peers::get_ip "$name")
/etc/wireguard/wgctl/commands/remove.command.sh:87:  assigned_rule=$(peers::get_meta "$name" "rule")
/etc/wireguard/wgctl/commands/watch.command.sh:100:    for conf in "$(ctx::clients)"/*.conf; do
/etc/wireguard/wgctl/commands/fw.command.sh:56:    ip=$(peers::get_ip "$peer")
/etc/wireguard/wgctl/commands/inspect.command.sh:49:  ip=$(peers::get_ip "$name")
/etc/wireguard/wgctl/commands/inspect.command.sh:51:  rule=$(peers::get_meta "$name" "rule")
/etc/wireguard/wgctl/commands/inspect.command.sh:78:  rule=$(peers::get_meta "$name" "rule")
/etc/wireguard/wgctl/commands/inspect.command.sh:89:  desc=$(json::get "$rule_file" "desc")
/etc/wireguard/wgctl/commands/inspect.command.sh:90:  dns_redirect=$(json::get "$rule_file" "dns_redirect")
/etc/wireguard/wgctl/commands/inspect.command.sh:95:  allow_ports=$(json::get "$rule_file" "allow_ports")
/etc/wireguard/wgctl/commands/inspect.command.sh:96:  allow_ips=$(json::get "$rule_file" "allow_ips")
/etc/wireguard/wgctl/commands/inspect.command.sh:97:  block_ips=$(json::get "$rule_file" "block_ips")
/etc/wireguard/wgctl/commands/inspect.command.sh:98:  block_ports=$(json::get "$rule_file" "block_ports")
/etc/wireguard/wgctl/commands/inspect.command.sh:141:  ip=$(peers::get_ip "$name")
/etc/wireguard/wgctl/commands/logs.command.sh:88:    filter_ip=$(peers::get_ip "$name")
/etc/wireguard/wgctl/commands/logs.command.sh:167:  client_ip=$(peers::get_ip "$name")
/etc/wireguard/wgctl/commands/audit.command.sh:82:  ip=$(peers::get_ip "$peer_name")
/etc/wireguard/wgctl/commands/audit.command.sh:83:  rule=$(peers::get_meta "$peer_name" "rule")
/etc/wireguard/wgctl/commands/audit.command.sh:153:          ip=$(peers::get_ip "$peer_name")
/etc/wireguard/wgctl/commands/audit.command.sh:170:    r=$(peers::get_meta "$peer_name" "rule")
/etc/wireguard/wgctl/commands/audit.command.sh:178:    name=$(json::get "$rule_file" "name")
/etc/wireguard/wgctl/commands/group.command.sh:115:    name=$(json::get "$group_file" "name")
/etc/wireguard/wgctl/commands/group.command.sh:116:    desc=$(json::get "$group_file" "desc")
/etc/wireguard/wgctl/commands/group.command.sh:120:    mapfile -t peers_list < <(json::get "$group_file" "peers")
/etc/wireguard/wgctl/commands/group.command.sh:191:  desc=$(json::get "$group_file" "desc")
/etc/wireguard/wgctl/commands/group.command.sh:196:  mapfile -t peers_list < <(json::get "$group_file" "peers")
/etc/wireguard/wgctl/commands/group.command.sh:216:      ip=$(peers::get_ip "$peer_name")
/etc/wireguard/wgctl/commands/group.command.sh:217:      rule=$(peers::get_meta "$peer_name" "rule")