MacOS 双网线网络快速切换

2024-06-18 22:18

本文主要是介绍MacOS 双网线网络快速切换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MacOS 双网线网络快速切换

  1. 方法一:直接打开系统网络设置,手动设置即可
    点开齿轮设置
    手动拖拽调整网络服务顺序

  2. 方法二:对于Coders来讲,方式一实在太low了,我们来看一下如何使用代码控制网络切换

#!/usr/bin/python
# -*- coding: UTF-8 -*-
## Create by Cyril.
import os
import sys
import commands
import timeglobal homePath
homePath = os.path.abspath("./Desktop/Tools//")
print("HomePath->",homePath)##此函数可自由切换Apple网络和PDCA网络,可重复调用
##/** 切换PDCA网络与APPLE网络, 注意:使用此函数前请确保网络列表中有且仅有两个Ethernet网络 */    
def changeIP():global homePathnetKey = "Ethernet"scriptPath = homePath + "/checkNetStatus" net_array=[]net_1=0net_2=0j=0execShellScript("networksetup -listallnetworkservices > %s 2>&1" %(homePath + "/networks.txt"))net_array=readlineFromFile(homePath+ "/networks.txt")  ##net_array[0] 为无用字符串net_array[0]="echo helloworld | sudo -S networksetup -ordernetworkservices "index=0for item in net_array:if index == 0:passelif "*" in net_array[index]:net_array[index]=net_array[index][1:]net_array[index]="\"%s\""%(net_array[index])else:net_array[index]="\"%s\""%(net_array[index])if netKey in net_array[index]:if j == 0:net_1=indexelse:net_2=indextmp=net_array[net_1]net_array[net_1]=net_array[net_2]##          print("net_array[net_1]",net_array[net_1])net_array[net_2]=tmp##          print("net_array[net_2]",net_array[net_2])j+=1##print(net_array[index])index+=1execShellScript(*net_array) ##changeIP##while res==1:##time.sleep(5)return execShellScript(scriptPath) ##checkNetStatus## /**逐行读取txt ,将值赋给列表*/
def readlineFromFile(filePath):with open(filePath, "r") as f:txt=f.read()array=txt.split("\n")  ##for item in array:if item == '':array.remove(item) ##删除列表中的空元素return array##/**
##    *  arg0 : scriptPath // 第一个参数是脚本路径
##        *  arg1 : ${1}     // 第二个参数是脚本参数1 (log存放路径)
##            *  arg2 : ${2}     // 第三个参数是脚本参数2 (sn.txt 路径)
##                *  arg3 : ${3}     // 第四个参数是脚本参数3 (log名称,如:SW-DOWNLOAD.zip)
##                    *  ...
##                        *  argn : ${n}
##                           */
def execShellScript(scriptPath, *args):index = 0cmd = scriptPath + " "for i in args:cmd += i + " "##print("Exec CMD->",cmd)(status, output) = commands.getstatusoutput(cmd)##print status, output ##输出shell执行返回状态码和输出结果return outputprint(changeIP())

执行结果如图:
可在预设的两个网络中自由切换

这篇关于MacOS 双网线网络快速切换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1073204

相关文章

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

poj 3181 网络流,建图。

题意: 农夫约翰为他的牛准备了F种食物和D种饮料。 每头牛都有各自喜欢的食物和饮料,而每种食物和饮料都只能分配给一头牛。 问最多能有多少头牛可以同时得到喜欢的食物和饮料。 解析: 由于要同时得到喜欢的食物和饮料,所以网络流建图的时候要把牛拆点了。 如下建图: s -> 食物 -> 牛1 -> 牛2 -> 饮料 -> t 所以分配一下点: s  =  0, 牛1= 1~

hdu 4565 推倒公式+矩阵快速幂

题意 求下式的值: Sn=⌈ (a+b√)n⌉%m S_n = \lceil\ (a + \sqrt{b}) ^ n \rceil\% m 其中: 0<a,m<215 0< a, m < 2^{15} 0<b,n<231 0 < b, n < 2^{31} (a−1)2<b<a2 (a-1)^2< b < a^2 解析 令: An=(a+b√)n A_n = (a +

poj 3068 有流量限制的最小费用网络流

题意: m条有向边连接了n个仓库,每条边都有一定费用。 将两种危险品从0运到n-1,除了起点和终点外,危险品不能放在一起,也不能走相同的路径。 求最小的费用是多少。 解析: 抽象出一个源点s一个汇点t,源点与0相连,费用为0,容量为2。 汇点与n - 1相连,费用为0,容量为2。 每条边之间也相连,费用为每条边的费用,容量为1。 建图完毕之后,求一条流量为2的最小费用流就行了

poj 2112 网络流+二分

题意: k台挤奶机,c头牛,每台挤奶机可以挤m头牛。 现在给出每只牛到挤奶机的距离矩阵,求最小化牛的最大路程。 解析: 最大值最小化,最小值最大化,用二分来做。 先求出两点之间的最短距离。 然后二分匹配牛到挤奶机的最大路程,匹配中的判断是在这个最大路程下,是否牛的数量达到c只。 如何求牛的数量呢,用网络流来做。 从源点到牛引一条容量为1的边,然后挤奶机到汇点引一条容量为m的边

v0.dev快速开发

探索v0.dev:次世代开发者之利器 今之技艺日新月异,开发者之工具亦随之进步不辍。v0.dev者,新兴之开发者利器也,迅速引起众多开发者之瞩目。本文将引汝探究v0.dev之基本功能与优势,助汝速速上手,提升开发之效率。 何谓v0.dev? v0.dev者,现代化之开发者工具也,旨在简化并加速软件开发之过程。其集多种功能于一体,助开发者高效编写、测试及部署代码。无论汝为前端开发者、后端开发者

macOS升级后SVN升级

问题 svn: error: The subversion command line tools are no longer provided by Xcode. 解决 sudo chown -R $(whoami) /usr/local/Cellar brew install svn

配置InfiniBand (IB) 和 RDMA over Converged Ethernet (RoCE) 网络

配置InfiniBand (IB) 和 RDMA over Converged Ethernet (RoCE) 网络 服务器端配置 在服务器端,你需要确保安装了必要的驱动程序和软件包,并且正确配置了网络接口。 安装 OFED 首先,安装 Open Fabrics Enterprise Distribution (OFED),它包含了 InfiniBand 所需的驱动程序和库。 sudo