@cyf
已创建论坛回复
-
飞仔
楼主不管多少个一样的名字,我也会仔仔细细找寻你几个世纪,在生命轮回中找到你 ^_^
function con_manage() { local _con_list _cmd_name _c_n_len _m_num _c_n _cmd _name _con_dat _d_ok _d_len \ _d_con_name _d_con_uid _con_act _con_uid _dev_name _dev_wired _sel _c_act _c_act_ \ _d_act _d_act_ _up_uid _up_name _con_list=$(nmcli -g name,uuid,active,state connection) declare -a _cmd_name=() _c_n_len=$(expr ${#_CMD_NAME[@]} - 1) _m_num=0 for i in $(seq 0 $_c_n_len); do _c_n="$(echo ${_CMD_NAME[$i]})" _cmd="${_c_n:0:1}" _name="${_c_n##* }" _con_dat=($(echo "${_con_list// /+}" | grep "^$_name")) [ "${#_con_dat[*]}" -eq 0 ] && continue _cmd_name+=("$_c_n") _m_num=$(expr $_m_num + 1) _d_ok=0 _d_len=$(expr ${#_con_dat[*]} - 1) for d in $(seq 0 $_d_len); do _d_con_name=$(echo ${_con_dat[$d]//+/ } | awk -F: '{print $1}') _d_con_uid=$(echo ${_con_dat[$d]} | awk -F: '{print $(NF-2)}') _dev_name=$(nmcli -g connection.interface-name connection show $_d_con_uid) if _dev_wired=$(nmcli -g wired-properties.carrier device show $_dev_name 2>/dev/null); then if [ "$_d_ok" -eq 0 ]; then _con_act=$(echo ${_con_dat[$d]} | awk -F: '{print $(NF-1)}') _con_uid=$(echo ${_con_dat[$d]} | awk -F: '{print $(NF-2)}') _d_ok=1 continue fi fi con_down "$_d_con_uid" nmcli con modify $_d_con_uid connection.id "r_${d}_${_d_con_name}" done [ "${#_con_dat[*]}" -gt 1 ] && return 3 if [ -z "$1" ]; then if [ "$_con_act" == "yes" ]; then _sel=">>"; _c_act=">>>"; _c_act_="已启用"; [ $_LAST_NUM -lt 0 ] && _LAST_NUM=$(expr $_m_num - 1) else _sel=" "; _c_act="+++"; _c_act_="未启用"; fi [ "$_dev_wired" == "on" ] && { _d_act=">>>"; _d_act_="已插线"; } || \ { _d_act="+++"; _d_act_="未插线"; } echo " $_sel [ $_cmd ] $_name $_d_act $_d_act_ $_c_act $_c_act_" echo elif [ $1 -eq $i ]; then _up_uid="$_con_uid" _up_name="$_name" else con_down "$_con_uid" fi done [ -n "$_up_uid" ] && con_up "$_up_uid" "$_up_name" _CMD_NAME=("${_cmd_name[@]}") return 0 }
飞仔
楼主奇葩的问题将接踵而来:
连接名称:测试网
在我们没有在eth0新建连接之前,之前绑定ens33的旧数据依旧还能show出来:sgtfz@sgtfz-pc:~$ nmcli con show NAME UUID TYPE DEVICE 测试网 0aa3de81-035f-3ec2-8232-f6cc42a88e34 ethernet -- 互联网 3564f47c-dbc9-3de1-8fde-b2d171af69ef ethernet --现在我们在
eth0新建一个连接,名称也是:测试网
再show一下:sgtfz@sgtfz-pc:~$ nmcli con show NAME UUID TYPE DEVICE 测试网 79cec4c0-be61-49d4-a724-4bd434804d7b ethernet eth0 测试网 0aa3de81-035f-3ec2-8232-f6cc42a88e34 ethernet -- 互联网 3564f47c-dbc9-3de1-8fde-b2d171af69ef ethernet --惊不惊喜?意不意外?
这样将导致我们的脚本出问题哟!!!出现了两个:测试网
让我们的脚本为难了,根本没法通过名字区分谁是谁了!!!
飞仔
楼主银河麒麟桌面操作系统 V10
nmcli -g name,uuid,active connection获得active值永远是no的奇葩问题解决方法:
nmcli -g name,uuid,active,state connection
飞仔
楼主grep 截取字符串
# 随机字符串 a="vm10068fj2018cl312d23llls3210" # 截取:3位数及以上连续的纯数字 root@test:~# echo "$a" | grep -o "[0-9][0-9][0-9][0-9]*" 10068 2018 312 3210 # 截取:4位数,纯数字 root@test:~# echo "$a" | grep -o "[0-9][0-9][0-9][0-9]" 1006 2018 3210
飞仔
楼主不能混淆的两个概念
不能混淆的两个命令# 连接指定网卡设备下的网络连接(特别注意区别于 nmcli connection up ) nmcli device connect $_dev_name # 断开指定网卡设备下的网络连接 nmcli device disconnect $_dev_name # 连接指定的网络连接(特别注意区别于 nmcli device connect ) nmcli connection up $_if_name # 断开指定的网络连接 nmcli connection down $_if_name首先
device
注意区别nmcli device connect与nmcli connection up
首先搞清楚nmcli device connect <设备接口名称>
具体常用命令nmcli device connect ens33
其中的接口ens33,在这个接口上,我们可以创建多个网络连接,即connection
例如在接口ens33这个接口上创建:互联网1,互联网2,….然后
connection
注意区别nmcli connection up与nmcli device connect
首先搞清楚nmcli connection up <连接名称 | uuid | ...>
具体常用命令:nmcli connection up 互联网1或nmcli connection up uuid-xxx-xxx-xxx-xxx
即connection是确定的唯一的这个连接
飞仔
楼主文件名批量匹配替换重命名ver1.1.bat
- 增加了批量添加前缀、后缀的功能
批量添加前缀“2024”
示例如下:目录文件列表:------------------------ 1:aabbccdd 2:大欢 - 化风行万里.kgm 3:文件名批量匹配替换重命名ver1.1.bat 4:群星 - 我是不是该安静的走开.kgm 5:群星 - 爱我的人和我爱的人.kgm 6:阿梨粤 - 堆积情感.kgm -------------------------------------- 文件名批量匹配替换重命名 ########################################## 2024-9-10 SGTfz ver1.1 注意:该脚本需放在需要批量命名文件的目录里面 格式:匹配字符串=替换字符串 (通配符 * 添加前缀,通配符 $ 添加后缀) 示例文件名:明天是否依然爱我.mp3 常规示例:明天=后天 输出:后天是否依然爱我.mp3 常规示例:明天 或 明天= 输出:是否依然爱我.mp3 添加前缀示例:*=谭咏麟- 输出:谭咏麟-明天是否依然爱我.mp3 添加后缀示例:$=.tmp 输出:明天是否依然爱我.mp3.tmp --->> 请输入命令:*=2024 批量添加前缀字符串:2024 ##### 请确认本次操作 >>>>> Y 确认 N 取消: Y 批量添加前缀字符重命名执行中 ... ++ aabbccdd >> 2024aabbccdd ++ 大欢 - 化风行万里.kgm >> 2024大欢 - 化风行万里.kgm ++ 群星 - 我是不是该安静的走开.kgm >> 2024群星 - 我是不是该安静的走开.kgm ++ 群星 - 爱我的人和我爱的人.kgm >> 2024群星 - 爱我的人和我爱的人.kgm ++ 阿梨粤 - 堆积情感.kgm >> 2024阿梨粤 - 堆积情感.kgm 目录文件数量:6 个 ----------------------------- 重命名:5 个 已跳过:1 个 ------------- 目录文件列表:------------------------ 1:2024aabbccdd 2:2024大欢 - 化风行万里.kgm 3:2024群星 - 我是不是该安静的走开.kgm 4:2024群星 - 爱我的人和我爱的人.kgm 5:2024阿梨粤 - 堆积情感.kgm 6:文件名批量匹配替换重命名ver1.1.bat --------------------------------------批量添加后缀“.tmd”
示例如下:目录文件列表:------------------------ 1:2024aabbccdd 2:2024大欢 - 化风行万里.kgm 3:2024群星 - 我是不是该安静的走开.kgm 4:2024群星 - 爱我的人和我爱的人.kgm 5:2024阿梨粤 - 堆积情感.kgm 6:文件名批量匹配替换重命名ver1.1.bat -------------------------------------- 文件名批量匹配替换重命名 ########################################## 2024-9-10 SGTfz ver1.1 注意:该脚本需放在需要批量命名文件的目录里面 格式:匹配字符串=替换字符串 (通配符 * 添加前缀,通配符 $ 添加后缀) 示例文件名:明天是否依然爱我.mp3 常规示例:明天=后天 输出:后天是否依然爱我.mp3 常规示例:明天 或 明天= 输出:是否依然爱我.mp3 添加前缀示例:*=谭咏麟- 输出:谭咏麟-明天是否依然爱我.mp3 添加后缀示例:$=.tmp 输出:明天是否依然爱我.mp3.tmp --->> 请输入命令:$=.tmd 批量添加后缀字符串:.tmd ##### 请确认本次操作 >>>>> Y 确认 N 取消: Y 批量添加后缀字符重命名执行中 ... ++ 2024aabbccdd >> 2024aabbccdd.tmd ++ 2024大欢 - 化风行万里.kgm >> 2024大欢 - 化风行万里.kgm.tmd ++ 2024群星 - 我是不是该安静的走开.kgm >> 2024群星 - 我是不是该安静的走开.kgm.tmd ++ 2024群星 - 爱我的人和我爱的人.kgm >> 2024群星 - 爱我的人和我爱的人.kgm.tmd ++ 2024阿梨粤 - 堆积情感.kgm >> 2024阿梨粤 - 堆积情感.kgm.tmd 目录文件数量:6 个 ----------------------------- 重命名:5 个 已跳过:1 个 ------------- 目录文件列表:------------------------ 1:2024aabbccdd.tmd 2:2024大欢 - 化风行万里.kgm.tmd 3:2024群星 - 我是不是该安静的走开.kgm.tmd 4:2024群星 - 爱我的人和我爱的人.kgm.tmd 5:2024阿梨粤 - 堆积情感.kgm.tmd 6:文件名批量匹配替换重命名ver1.1.bat --------------------------------------
飞仔
楼主下面是将目录里以后缀“.kgm”结尾的所有文件,修改为:“_320kbps.mp3”
目录文件列表:------------------------ 1:大欢 - 化风行万里.kgm 2:文件名字符串批量匹配替换重命名.bat 3:群星-我是不是该安静的走开.kgm 4:群星-爱我的人和我爱的人.kgm 5:阿梨粤 - 堆积情感.kgm -------------------------------------- 文件名字符串批量匹配替换重命名 ##################################### 2024-9-10 SGTfz ver1.0 注意:该脚本必需放在需要批量命名文件的目录里面 提示:如输入的字符串与原文件名不能完全或部分匹配,则不执行重命名操作 格式:匹配字符串=替换字符串(等号及之后替换字符串留空则删除匹配部分) 示例文件名称:明天是否依然爱我.mp3 示例命令输入:例1:明天=后天 例2:明天 示例执行输出:例1:后天是否依然爱我.mp3 例2:是否依然爱我.mp3 --->> 输入匹配与替换的字符:.kgm=_320kbps.mp3 匹配文件名字符串:.kgm 替换为新的字符串:_320kbps.mp3 ##### 请确认本次操作 >>>>> Y 确认 N 取消: Y 批量匹配替换重命名执行中 ... ++ 大欢 - 化风行万里.kgm >> 大欢 - 化风行万里_320kbps.mp3 ++ 群星-我是不是该安静的走开.kgm >> 群星-我是不是该安静的走开_320kbps.mp3 ++ 群星-爱我的人和我爱的人.kgm >> 群星-爱我的人和我爱的人_320kbps.mp3 ++ 阿梨粤 - 堆积情感.kgm >> 阿梨粤 - 堆积情感_320kbps.mp3 批量匹配替换 - 已完成重命名:4 个 --------------------- 目录文件数量:5 个 未匹配已跳过:1 个 目录文件列表:------------------------ 1:大欢 - 化风行万里_320kbps.mp3 2:文件名字符串批量匹配替换重命名.bat 3:群星-我是不是该安静的走开_320kbps.mp3 4:群星-爱我的人和我爱的人_320kbps.mp3 5:阿梨粤 - 堆积情感_320kbps.mp3 --------------------------------------
飞仔
楼主Windows文件名批量匹配替换重命名工具
使用示例与说明:
下面是将目录里包含“未知 – ”命名的所有文件,修改为“群星-”的操作示例:
目录文件列表:------------------------ 1:大欢 - 化风行万里.kgm 2:文件名字符串批量匹配替换重命名.bat 3:未知 - 我是不是该安静的走开.kgm 4:未知 - 爱我的人和我爱的人.kgm 5:阿梨粤 - 堆积情感.kgm -------------------------------------- 文件名字符串批量匹配替换重命名 ##################################### 2024-9-10 SGTfz ver1.0 注意:该脚本必需放在需要批量命名文件的目录里面 提示:如输入的字符串与原文件名不能完全或部分匹配,则不执行重命名操作 格式:匹配字符串=替换字符串(等号及之后替换字符串留空则删除匹配部分) 示例文件名称:明天是否依然爱我.mp3 示例命令输入:例1:明天=后天 例2:明天 示例执行输出:例1:后天是否依然爱我.mp3 例2:是否依然爱我.mp3 --->> 输入匹配与替换的字符:未知 - =群星- 匹配文件名字符串:未知 - 替换为新的字符串:群星- ##### 请确认本次操作 >>>>> Y 确认 N 取消: Y 批量匹配替换重命名执行中 ... ++ 未知 - 我是不是该安静的走开.kgm >> 群星-我是不是该安静的走开.kgm ++ 未知 - 爱我的人和我爱的人.kgm >> 群星-爱我的人和我爱的人.kgm 批量匹配替换 - 已完成重命名:2 个 --------------------- 目录文件数量:5 个 未匹配已跳过:3 个 目录文件列表:------------------------ 1:大欢 - 化风行万里.kgm 2:文件名字符串批量匹配替换重命名.bat 3:群星-我是不是该安静的走开.kgm 4:群星-爱我的人和我爱的人.kgm 5:阿梨粤 - 堆积情感.kgm --------------------------------------
飞仔
楼主
飞仔
楼主火绒主界面菜单 → 安全设置 → 系统防护
↓
联网控制 → 联网设置 → 新程序联网时 → 允许联网 → 保存导入 → json格式的规则文件
导入规则后,记得立即开启联网控制功能!!
规则内容如下:
{ "ver":"5.0", "tag":"appnetctrl", "data":[ { "procname":"*\\Au_.exe", "block":true }, { "procname":"*\\et.exe", "block":true }, { "procname":"*\\ksolaunch.exe", "block":true }, { "procname":"*\\ksomisc.exe", "block":true }, { "procname":"*\\promecefpluginhost.exe", "block":true }, { "procname":"*\\updateself.exe", "block":true }, { "procname":"*\\wpp.exe", "block":true }, { "procname":"*\\wps.exe", "block":true }, { "procname":"*\\wpscloudsvr.exe", "block":true }, { "procname":"*\\wpsupdate.exe", "block":true } ] } -
作者回复
