# șiruri 01-ifupdown:
#!/bin/sh -e
# Script pentru a trimite evenimente NetworkManager
# Rulează scripturi ifupdown atunci când NetworkManager se luptă cu interfețele.
# Consultați NetworkManager(8) pentru documentația suplimentară a evenimentelor dispecerului.
# Nu gestionăm evenimentele de schimbare a conectivității în ifupdown, așa că pur și simplu ieșiți la
# acest punct
if [ "$2" = "schimbare-conectivitate" ]; atunci
ieșire 0;
dacă [ -z "$1" ]; atunci
echo „$0: apelat fără interfață” 1>&2
ieșirea 1;
if [ -n „$IP4_NUM_ADDRESSES” ] && [ „$IP4_NUM_ADDRESSES” -gt 0 ]; atunci
ADDRESS_FAMILIES="$ADDRESS_FAMILIES inet"
if [ -n „$IP6_NUM_ADDRESSES” ] && [ „$IP6_NUM_ADDRESSES” -gt 0 ]; atunci
ADDRESS_FAMILIES="$ADDRESS_FAMILIES inet6"
# Dacă avem o conexiune VPN, ignorați adresa(ele) IP de bază
dacă [ "$2" = "vpn-up" ] || [ "$2" = "vpn-down" ]; atunci
ADDRESS_FAMILIES=""
dacă [ -n „$VPN_IP4_NUM_ADDRESSES” ] && [ „$VPN_IP4_NUM_ADDRESSES” -gt 0 ]; atunci
ADDRESS_FAMILIES="$ADDRESS_FAMILIES inet"
dacă [ -n „$VPN_IP6_NUM_ADDRESSES” ] && [ „$VPN_IP6_NUM_ADDRESSES” -gt 0 ]; atunci
ADDRESS_FAMILIES="$ADDRESS_FAMILIES inet6"
# Probabil că dărâmăm interfața.
[ -n „$ADDRESS_FAMILIES” ] || ADDRESS_FAMILIES="inet"
# Mediu ifupdown fals
export IFACE="$1"
export LOGICA="$1"
export METHOD="NetworkManager"
export VERBOSITY="0"
pentru i în $ADDRESS_FAMILIES; do
export ADDRFAM="$i"
# Rulați scripturile potrivite
carcasa „$2” în
sus|vpn-up)
export MODE="start"
export PHASE="post-up"
run-parts /etc/network/if-up.d
;;
jos|vpn-jos)
export MODE="stop"
export PHASE="post-down"
run-parts /etc/network/if-post-down.d
;;
# pre-up/pre-down nu este implementat. Vedea
# https://bugzilla.gnome.org/show_bug.cgi?id=387832
# pre-up)
# export MODE="start"
# export PHASE="pre-up"
# run-parts /etc/network/if-pre-up.d
# ;;
# pre-jos)
# export MODE="stop"
# export PHASE="pre-down"
# run-parts /etc/network/if-down.d
# ;;
hostname|dhcp4-change|dhcp6-change)
# Nu face nimic
;;
*)
echo "$0: apelat cu o acțiune necunoscută \`$2'" 1>&2
iesirea 1
;;
esac
Terminat
Ubuntu 21.04
Gnome 5.11
Deci, pentru a obține numărul de argumente:
$#
Adaug asta după
&1
?