Ubuntu子系统shell脚本自动连接xfce4界面
脚本功能
- 命令行参数指定ip连接/获取ifconfig中的本地ip连接
- 修改.bashrc
#!/bin/bash
net_dev="wifi0" #默认的设备名
FALSE="0"
TRUE="1"
# 若无参数则选择本地ipv4 通过正则匹配ifconfig $net_dev的内容
l_ip=$(ifconfig $net_dev | grep "inet" | grep -v "inet6" |
sed 's/^.*inet//g' | sed 's/netmask.*$//g' | sed 's/ //g')
ok_ip=$l_ip
is_ok=$FALSE
m_ip=$1 #命令行指定参数获取
if [ "$m_ip" = "" ];then
is_ip=$(echo $l_ip | grep -P "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}")
if [ "$is_ip" = "" ];then
echo "ip is wrong or not found"
else
echo "use local ip"
is_ok=$TRUE
fi
else
is_ip=$(echo $m_ip | grep -P "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}")
if [ "$is_ip" = "" ];then
echo "inputed ip is wrong ,you can retry or using default ip"
else
echo "use inputed ip"
is_ok=$TRUE
ok_ip=$is_ip
fi
fi
if [ "$is_ok" = "1" ];then
echo "Waiting for xfce connected to $ok_ip open"
sed -i "$ s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/$ok_ip/" ./.bashrc
source ./.bashrc
startxfce4
fi
注意事项
- 脚本修改的是.bashrc最后一行中的ip
export DISPLAY=192.168.x.x:0
- 因为脚本中有
source命令,所以在终端中执行命令时要加source
# 本地ipv4执行
source ./openxfce4.sh
# 指定ip执行
source ./openxfce4.sh ip_addr
- 执行脚本前先启动
xfce4
补充
- 因为想学习
linux内核驱动,又不想放弃子系统,所以把wsl1升到wsl2了,然后悲剧了,没wifi0了
The network interface you see in WSL isn't the host machine's network interface directly; what WSL sees is a virtual network interface (for the light VM WSL2 runs within) connected to a Hyper-V virtual switch behind the host's network card, so all WSL's network tools see is that virtual interface, as eth0.
- 本来以为脚本改下设备名就行,可是没用,目前限于技术水平,只能在windows环境下
ipconfig获取WLAN的IP,然后脚本执行时加上就行。
Ubuntu子系统shell脚本自动连接xfce4界面的更多相关文章
- linux下实现shell脚本自动连接mongodb数据库并创建索引
在linux下创建shell脚本
- 学习Linux shell脚本中连接字符串的方法
这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...
- shell脚本自动清理服务器日志、图片等信息
在做性能测试的时候,linux服务器时常会产生大量数据,如日志信息,图片信息,文件信息等,压测一段时间后,导致服务器磁盘空间暂满而崩溃,每天手动清理比较麻烦, 利用shell脚本自动清理,脚本如下 1 ...
- CentOS/Linux内存占用大,用Shell脚本自动定时清除/释放内存
CentOS/Linux内存占用大,用Shell脚本自动定时清除/释放内存来自:互联网 时间:2020-03-22 阅读:114以下情况可能造成Linux内存占用过高服务配置存在直接分配错误,或隐性分 ...
- shell 脚本自动插入文件头
vim编辑shell脚本自动插入文件头部信息,将下面的代码写入home目录xia .vimrc 文件即可. shell 文件头: 1 autocmd BufNewFile *.sh exec &quo ...
- 使用 shell 脚本自动获取发版指标数据
问题背景 大一点的公司都会建立一套规章流程来避免低级错误,例如合入代码前必需经过同行评审:上线前必需提测且通过 QA 验证:全量前必需经过 1%.5%.10%.20%.50% 的灰度过程.尤其是最后一 ...
- Win10安装Ubuntu子系统教程(附安装图形化界面)
一.启用“适用于Linux的Windows子系统” 通过Win10任务栏中的Cortana搜索框搜索打开“启用或关闭Windows功能”,向下滚动列表,即可看到“适用于Linux的Windows子系统 ...
- Git学习-->如何通过Shell脚本自动定时将Gitlab备份文件复制到远程服务器?
一.背景 在我之前的博客 git学习--> Gitlab如何进行备份恢复与迁移? (地址:http://blog.csdn.net/ouyang_peng/article/details/770 ...
- Ubuntu中shell脚本无法使用source命令的原因与解决方法
本文简要描述了在ubuntu系统下无法使用source命令的原因,及对应的两种解决方法,并在附录中引用一篇文章来详细解释source命令的用法 问题: 由于在交叉编译时,需要在当前shell内执行so ...
- 使用 shell 脚本自动对比两个安装目录并生成差异补丁包
问题的提出 公司各个业务线的安装包小则几十兆.大则几百兆,使用自建的升级系统向全国百万级用户下发新版本时,流量耗费相当惊人.有时新版本仅仅改了几个 dll ,总变更量不过几十 K 而已,也要发布一个完 ...
随机推荐
- 定时调度插件------Longbow.Tasks
官网地址Longbow.Tasks 使用说明 dll引用 使用NuGet 搜索Longbow.Task可找到相关版本的dll 目前最新的为7.0.0版本,需net6.0+ 如果低版本用户可使用5.2. ...
- OnionArch 2.0 - 基于DDD的洋葱架构改进版开源
大家好,去年我发布了一篇 OnionArch - 采用DDD+CQRS+.Net 7.0实现的洋葱架构.很多程序员都比较感兴趣,给我要源代码.这次我把OnionArch进行了升级,改进了一些特性,并放 ...
- concurrent.futures之ThreadPoolExecutor python线程池代码实现方法
from concurrent.futures import ThreadPoolExecutor def main(i): print(i) THREAD_NUM = 20 # 线程数 with T ...
- redis georadius源码分析与性能优化
原文地址: https://blog.fanscore.cn/a/51/ 背景 最近接到一个需求,开发中使用了redis georadius命令取附近给定距离内的点.完工后对服务进行压测后发现geor ...
- 【已解决】SQL2012启动时报错:cannot find one or more cpmponents
下载Microsoft Visual Studio 2010 Shell(Isolate)-CHS安装即可 下载地址:Visual Studio 独立 Shell 下载及安装:点击同意许可,选择vs2 ...
- windwos提权漏洞CVE-2023-21746复现(LocalPotato)
0x01 漏洞原理 LocalPotato攻击是一种针对本地认证的NTLM反射攻击. Windows NTLM 在进行身份验证时存在漏洞,允许拥有低权限的本地攻 击者通过运行特制程序将权限提升至 SY ...
- Vue框架:7、Node环境搭建,Vue-cli,es6导出、导入语法,跨域问题解决方法,小练习
前端开发之Vue框架 一.Node环境搭建 什么是Node或NodeJS: node js是一门后端语言 JavaScript只能运行在浏览器中,因为浏览器中有他的解释器环境 基于谷歌浏览器的v8引擎 ...
- 一文详解SpEL表达式注入漏洞
摘要:本文介绍了SpEL表达式以及常见的SpEL注入攻击,详细地介绍了部分漏洞攻击实例以及常用的漏洞检测与防御手段. 本文分享自华为云社区<SpEL表达式注入漏洞分析.检查与防御>,作者: ...
- 基于jib-maven-plugin快速构建微服务docker镜像
一.说明 本文介绍基于 Maven 插件 jib-maven-plugin 实现快速构建 Spring Boot 程序镜像,并推送到远程仓库中,且 无需安装 Docker 环境 . Jib 是 Goo ...
- 嵌入式Linux—FreeType矢量字体
freetype矢量字体 常用API 1.FT_Init_FreeType函数是FreeType库中的一个函数,其作用是初始化FreeType库,并返回一个指向FT_Library对象的指针.下面是该 ...