Usuń wiele konfiguracji sieci jednocześnie

1

Otwieranie ekranu preferencji sieci w Mojave 10.14.2 na moim MacBooku Pro 2017 zajmuje około dwóch minut ze względu na ogromną liczbę konfiguracji sieci, które zostały automatycznie zainstalowane po podłączeniu krótkofalówki USB.

Czy można usunąć wszystkie te połączenia jednocześnie? Kliknięcie, aby je usunąć jeden po drugim, jest niezwykle powolne z powodu zawieszenia interfejsu użytkownika po jego usunięciu.

Preferencje sieciowe z dosłownie 1000 połączeń sieciowych
Preferencje sieciowe z dosłownie 1000 połączeń sieciowych

Paul Lammertsma
źródło
Czy możesz kliknąć jeden, a następnie przytrzymać klawisz polecenia, a następnie kliknąć ostatni. powinien wybrać wszystko pomiędzy tymi 2 wyborami.
jmh
Nie działa to w Mojave. Czy Ci to pasuje?
Paul Lammertsma

Odpowiedzi:

3

Możesz użyć terminala, aby je usunąć:

Usage: networksetup -removenetworkservice <networkservice>
    Remove the service named <networkservice>. Will fail if this is the only service on the hardware port that <networkservice> is on.

Aby dostać się do listy, a następnie usuń wszystkie z MT65XX, musisz zrobić coś takiego:

$ services=("${(@f)$(networksetup -listallnetworkservices | grep MT65XX | sed s/\*//)}")
$ for service in $services[@]; do networksetup -removenetworkservice $service; done

W ten sposób tworzona jest lista usług, uruchamiając:

networksetup -listallnetworkservices | grep MT65XX | sed s/\*//

@F dzieli listę na znaki nowej linii, ignorując spacje. Grep znajduje tylko linie MT65XX, a sed usuwa wszelkie *, które oznaczają wyłączone usługi na wyjściu.

Następnie dla każdego z nich uruchamia krok Networksetup -removenetworkservice .

Alex
źródło
Dzięki za szczegółową odpowiedź! Ustawiło mnie to na właściwej ścieżce, chociaż obawiam się, że to polecenie konkretnie dało mi błąd składniowy. Próba usunięcia pojedynczej usługi powoduje niestety „Nie można usunąć MT65xx Preloader 56, ponieważ nie ma żadnych innych usług sieciowych na MT65xx Preloader”.
Paul Lammertsma
Obecnie uruchamiam następujące polecenie, aby najpierw wyłączyć usługi, ale zajmuje to trochę czasu:networksetup -listallnetworkservices | grep MT65xx | while read -r service; do networksetup -setnetworkserviceenabled $service off; done
Paul Lammertsma
Zrozumiałem, że muszę z tym wykonać -deletepppoeservice; Nie jestem pewien, czy wyłączenie usługi było najpierw wymagane, ale w każdym razie tak właśnie skończyłem, używając:networksetup -listallnetworkservices | grep MT65xx | sed s/\*// | while read -r service; do networksetup -deletepppoeservice $service; done
Paul Lammertsma
Dziękuję bardzo za odpowiedź! Wskazał mi rozwiązanie.
Paul Lammertsma
Świetnie, cieszę się, że ci się udało.
Alex