mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-11 10:41:12 +02:00
61 lines
2.2 KiB
Text
61 lines
2.2 KiB
Text
#compdef netstat
|
|
|
|
_netstat() {
|
|
local -a f_rules
|
|
|
|
f_rules=(
|
|
'af\::specify address family: inet, inet6, unix, number'
|
|
'outif\::specify output interface: ifName, ifIndex, any, none'
|
|
'dst\::specify destination IP: ip-addr[/mask], any, none'
|
|
'flags\::select routes tagged with flags: [+ -]?[ABDGHLMSU]+'
|
|
)
|
|
|
|
_arguments \
|
|
- set1 \
|
|
'-a[show state of all sockets, all routing tables or all interfaces]' \
|
|
'-R[show extended security attributes for sockets and routing tables]' \
|
|
'-n[do not resolve addresses to names]' \
|
|
'-v[verbose]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
'-P[specify protocol]:protocol:(ip ipv6 icmp icmpv6 igmp udp tcp rawip)' \
|
|
- set2 \
|
|
'-r[show routing table]' \
|
|
'-f[filter routing table]:rule:(($f_rules))' \
|
|
'-a[show state of all sockets, all routing tables or all interfaces]' \
|
|
'-v[verbose]' \
|
|
'-n[do not resolve addresses to names]' \
|
|
'-R[show extended security attributes for sockets and routing tables]' \
|
|
- set3 \
|
|
'-g[show multicast group memberships]' \
|
|
'-n[do not resolve addresses to names]' \
|
|
'-v[verbose]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
- set4 \
|
|
'-i[show state of interfaces]' \
|
|
'-a[show state of all sockets, all routing tables or all interfaces]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
'-n[do not resolve addresses to names]' \
|
|
'-I[select interface]:interface:_net_interfaces' \
|
|
- set5 \
|
|
'-m[show STREAMS memory statistics]' \
|
|
'-v[verbose]' \
|
|
- set6 \
|
|
'-p[show net to media tables]' \
|
|
'-n[do not resolve addresses to names]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
- set7 \
|
|
'-s[show per protocol statistics]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
'-P[specify protocol]:protocol:(ip ipv6 icmp icmpv6 igmp udp tcp rawip)' \
|
|
- set8 \
|
|
'-M[show multicast routing tables]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
'-n[do not resolve addresses to names]' \
|
|
'-s[show per protocol statistics]' \
|
|
- set9 \
|
|
'-D[show status of DHCP configured interfaces]' \
|
|
'-f[specify address family]:address family:(inet inet6 unix)' \
|
|
'-I[select interface]:interface:_net_interfaces' \
|
|
}
|
|
|
|
_netstat "$@"
|