# สตริง 01-ifupdown:
#!/bin/sh -e
# สคริปต์เพื่อส่งเหตุการณ์ NetworkManager
# เรียกใช้สคริปต์ ifupdown เมื่อ NetworkManager เล่นซอกับอินเทอร์เฟซ
# ดู NetworkManager (8) สำหรับเอกสารเพิ่มเติมเกี่ยวกับเหตุการณ์ผู้มอบหมายงาน
# เราไม่จัดการเหตุการณ์การเปลี่ยนแปลงการเชื่อมต่อใน ifupdown ดังนั้นเพียงแค่ออกที่
#จุดนี้
ถ้า [ "$2" = "การเปลี่ยนแปลงการเชื่อมต่อ" ]; แล้ว
ทางออก 0;
ถ้า [ -z "$1" ]; แล้ว
echo "$0: ถูกเรียกโดยไม่มีอินเทอร์เฟซ" 1>&2
ทางออก 1;
ถ้า [ -n "$IP4_NUM_ADDRESSES" ] && [ "$IP4_NUM_ADDRESSES" -gt 0 ]; แล้ว
ADDRESS_FAMILIES="$ADDRESS_FAMILIES innet"
ถ้า [ -n "$IP6_NUM_ADDRESSES" ] && [ "$IP6_NUM_ADDRESSES" -gt 0 ]; แล้ว
ADDRESS_FAMILIES="$ADDRESS_FAMILIES inet6"
# หากเรามีการเชื่อมต่อ VPN ให้ละเว้นที่อยู่ IP พื้นฐาน
ถ้า [ "$2" = "vpn-up" ] || [ "$2" = "vpn-down" ]; แล้ว
ADDRESS_FAMILIES=""
ถ้า [ -n "$VPN_IP4_NUM_ADDRESSES" ] && [ "$VPN_IP4_NUM_ADDRESSES" -gt 0 ]; แล้ว
ADDRESS_FAMILIES="$ADDRESS_FAMILIES innet"
ถ้า [ -n "$VPN_IP6_NUM_ADDRESSES" ] && [ "$VPN_IP6_NUM_ADDRESSES" -gt 0 ]; แล้ว
ADDRESS_FAMILIES="$ADDRESS_FAMILIES inet6"
#เราน่าจะเอาเฟซมาลง
[ -n "$ADDRESS_FAMILIES" ] || ADDRESS_FAMILIES="ไอเน็ต"
# สภาพแวดล้อม ifupdown ปลอม
ส่งออก IFACE="$1"
ส่งออก LOGICAL="$1"
วิธีการส่งออก = "NetworkManager"
ส่งออก VERBOSITY="0"
สำหรับฉันใน $ADDRESS_FAMILIES; ทำ
ส่งออก ADDRFAM="$i"
# เรียกใช้สคริปต์ที่ถูกต้อง
กรณี "$2" ใน
ขึ้น|vpn-ขึ้น)
ส่งออก MODE = "เริ่มต้น"
ส่งออก PHASE="โพสต์อัพ"
ส่วนเรียกใช้ /etc/network/if-up.d
;;
ลง|vpn-ลง)
ส่งออก MODE="หยุด"
ส่งออก PHASE="หลังลง"
run-part /etc/network/if-post-down.d
;;
# ไม่ได้ดำเนินการก่อนขึ้น / ก่อนลง ดู
# https://bugzilla.gnome.org/show_bug.cgi?id=387832
#ก่อนขึ้น)
# ส่งออก MODE = "เริ่มต้น"
# ส่งออก PHASE="ก่อนขึ้น"
# ส่วนเรียกใช้ /etc/network/if-pre-up.d
# ;;
#ก่อนลง)
# ส่งออก MODE="หยุด"
# ส่งออก PHASE="ก่อนลง"
# ส่วนเรียกใช้ /etc/network/if-down.d
# ;;
ชื่อโฮสต์ | dhcp4-change | dhcp6-change)
# ไม่ทำอะไร
;;
*)
echo "$0: ถูกเรียกโดยมีการกระทำที่ไม่รู้จัก \`$2'" 1>&2
ทางออก 1
;;
เอสแซค
เสร็จแล้ว
อูบุนตู 21.04
คำพังเพย 5.11
ดังนั้นเพื่อรับจำนวนอาร์กิวเมนต์:
$#
ฉันเพิ่มสิ่งนี้หลังจาก
&1
?