staging.inyokaproject.org

Anhang: Netzwerkprofil

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#! /bin/bash -e
# Netzwerkprofil:	Wrapper zum Starten/Stoppen/Ändern/etc.
#			von Verbindungsprofilen für NetworkManager
# (C) 2022		kB @ UbuntuUsers.de
# SPDX-License-Identifier: GPL-2.0-or-later
# https://spdx.org/licenses/GPL-2.0-or-later.html

say ()		{ echo $*	;}
title ()	{ echo -e "\e]0;$*\a"	;}

case $*
in (up|'')	xdg-open /etc/NetworkManager/system-connections/	; exit

;; (edit)	nm-connection-editor	; exit

;; (down)	title Disconnecting …
		shopt -s lastpipe
		nmcli --terse -f NAME connection show --active | readarray -t
		case ${#MAPFILE[@]}
		in (0)	exit
		;; (1)	X=${MAPFILE[0]}
		;; (*)	PS3='Welche Verbindung trennen? '
			select X in "${MAPFILE[@]}"
			  do test -n "$X" && break ; done
		esac &&	nmcli connection down "$X"

;; (status)	nmcli general ; say ; nmcli device ; say

;; (*)		title Connecting «${1##*/}»
		until	nmcli networking | grep -q enabled
		  do	say Set networking on … ; nmcli networking on ; done
		case $( nmcli -g connection.type connection show filename "$1" )
		in (802-11-wireless)
			until	nmcli radio wifi | grep -q enabled
			  do	say Set WIFI on … ; nmcli radio wifi on ; done
		;; (gsm)
			until	nmcli radio wwan | grep -q enabled
			  do	say Set WWAN on … ; nmcli radio wwan on ; done
		esac
		say Set profile «${1##*/}» up …
		nmcli connection up filename "$1" && clear || say Fehler $?
esac
nmcli connection
read -t10 -n1 -s -r -p 'Press key to continue' || true
say
Anhang herunterladen

Dieses Skript wird im Artikel Desktop-Dateien/Beispiele (Abschnitt „Shell-Skript-Netzwerk-verbinden“) verwendet.

Das Programm erwartet einen Aufrufparameter; dies kann sein:

Wenn kein Parameter angegeben wird, verhält sich das Programm, als wäre es mit dem Parameter up aufgerufen.

Das Programm kann von einer Kommandozeile gestartet werden oder aus einer Desktop-Datei, diese soll auch beim Öffnen eines Verbindungsprofils im Dateimanager erneut das Skript mit dieser Datei als Parameter starten.

Das Programm wurde mit Ubuntu 20.04 und 22.04 mit GNOME getestet und funktioniert ohne Änderung. Jedoch muss man es bei früheren Versionen (sicher bei 18.04) modifizieren:

Diese Revision wurde am 10. Dezember 2022 09:35 von ubuntuusers erstellt.