Initial commit
This commit is contained in:
parent
af59d8cbb1
commit
d5f1f7f8a0
|
@ -0,0 +1,58 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Define a function to get the first IPv4 address of a FreeBSD interface
|
||||||
|
get_ipv4address_freebsd() {
|
||||||
|
local interface="$1"
|
||||||
|
|
||||||
|
# Use ifconfig to get IPv4 addresses of the specified interface
|
||||||
|
ipv4_addresses=$(ifconfig "$interface" | awk '/inet / {print $2}')
|
||||||
|
|
||||||
|
# Extract the first IPv4 address
|
||||||
|
first_ipv4_address=""
|
||||||
|
for addr in $ipv4_addresses; do
|
||||||
|
first_ipv4_address="$addr"
|
||||||
|
break # Exit after getting the first IPv4 address
|
||||||
|
done
|
||||||
|
|
||||||
|
# Return the first IPv4 address
|
||||||
|
echo -n "$first_ipv4_address"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
get_ipv4address_linux() {
|
||||||
|
|
||||||
|
|
||||||
|
# Set the interface name you want to query
|
||||||
|
local interface="$1" # Replace with your desired interface
|
||||||
|
|
||||||
|
# Use ip command to get IPv4 addresses of the specified interface
|
||||||
|
ipv4_addresses=$(ip -4 addr show dev "$interface" | grep -oP 'inet \K[\d.]+')
|
||||||
|
|
||||||
|
# Extract the first IPv4 address
|
||||||
|
first_ipv4_address=""
|
||||||
|
for addr in $ipv4_addresses; do
|
||||||
|
first_ipv4_address="$addr"
|
||||||
|
break # Exit after getting the first IPv4 address
|
||||||
|
done
|
||||||
|
|
||||||
|
# Check if an address was found
|
||||||
|
if [ -n "$first_ipv4_address" ]; then
|
||||||
|
echo -n "$first_ipv4_address"
|
||||||
|
else
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
kernel_name=$(uname -s)
|
||||||
|
interface="$1" # Replace with your desired interface
|
||||||
|
|
||||||
|
if [ "$kernel_name" = "FreeBSD" ]; then
|
||||||
|
result=$(get_ipv4address_freebsd "$interface")
|
||||||
|
else
|
||||||
|
result=$(get_ipv4address_linux "$interface")
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "$result"
|
Loading…
Reference in New Issue