因为最近Terraria更新了嘛,然后又想开服了,但是捏,我原来的UbuntuServer系统因为没有界面,而且我新购置了一台3D打印机,需要软件界面去操作,所以原先的系统就格了,重装win10,然后也去某宝买了个远程开机卡,移动这边是有提供ipv6公网的,但是和之前不同,之前好几个月地址都没有变过的,现在每次开机都会更新一次ipv6地址。

现在需要解决的需求是:开机能够把我的ipv6地址自动上传到我的云服务器,首先是获取本机ip地址嘛,一开始傻傻地去ipconfig,然后想办法提取,后来发现有一个网址可以直接获取ipv6地址:6.ipw.cn,即使用curl去获取到这个ipv6地址,然后赋值给一个变量,然后我再使用curl发送一个post请求给服务器,服务器那边收到请求后,就直接更新ipv6地址。

理论存在,开始动手,在Linux的shell环境下很容易就能够实现:

export ipv6=`curl 6.ipw.cn` && export kv='ipv6='$ipv6 && echo $kv && curl http://xxx.xxx.xxx.xxx/ -X POST -d $kv

也就是说我通过POST请求发送了一个键值对到我的云服务器,然后我服务端那边接收解析出来值,再去进行相应的操作,因为快要回去实习上班了,所以比较赶,直接保存为文件了,实际上我应该存到MySQL,然后开放一个查询的接口可以直接查到这个IP才对。

扯远了,然后我是Windows系统嘛,就不能直接用这个脚本(除非用msys2),用msys2的话有点太慢了,最好还是使用bat批处理,在不断百度的帮助下,凑合出一个能用的脚本:

@echo off
for /F %%i in ('curl 6.ipw.cn') do ( set ipv6=%%i)
set kv=ipv6=%ipv6%
curl http://xxx.xxx.xxx.xxx/ -X POST -d %kv%

然后把这个批处理脚本放到开机启动项里面,开机就会自动发送ipv6地址给我的云服务器,但是又有问题,因为我可能会一直开着机,但是我不确定它是否会在我开机的时候更新IP(应该不会吧),所以应该有一个定时任务去做这个操作,每天0点刷一次IP。

【SHELL】记一个没啥用的脚本的更多相关文章

  1. shell编写一个批量添加用户脚本

                                                          shell编写一个批量添加用户脚本 5.1问题 本例要求在虚拟机server0上创建/roo ...

  2. shell编写一个判断脚本

                                                              shell编写一个判断脚本 4.1问题 本例要求在虚拟机server0上创建/roo ...

  3. Shell:如何写一个多选菜单的脚本

    Blog:博客园 个人 翻译自How to Create a Multiple Choice Menu in Bash Scripts 目录 多选菜单脚本介绍 配置输入提示 创建预定选项列表 创建预选 ...

  4. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

  5. 一个很不错的bash脚本编写教程

    转自 http://blog.chinaunix.net/uid-20328094-id-95121.html 一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂! 建立一个脚本 Lin ...

  6. 记一个社交APP的开发过程——基础架构选型(转自一位大哥)

    记一个社交APP的开发过程——基础架构选型 目录[-] 基本产品形态 技术选型 最近两周在忙于开发一个社交App,因为之前做过一点儿社交方面的东西,就被拉去做API后端了,一个人头一次完整的去搭这么一 ...

  7. 使用shell程序备份crontab中的.sh脚本文件

    需求 线上环境有一些定时脚本(用crontab -l可查看当前用户的),有时我们可能会改这些定时任务的脚本内容.为避免改错无后悔药,需用shell实现一个程序,定时备份crontab中的.sh脚本文件 ...

  8. 分享一个php的启动关闭脚本(原)

    自己简单写的一个php服务的启动脚本和大家分享 思路(实现的原理): 1:function模块+case语句多分支判断 2:通过添加# chkconfig: 2345 43 89注释实现开机自启动(前 ...

  9. 使用Notepad++开发C#,一个复杂点的csscript脚本

    使用Notepad++开发C#,一个复杂点的csscript脚本: //css_dir ..\..\lib; //css_ref Geb.Image.dll; //css_ref Geb.Image. ...

  10. MSSQL-Scripter,一个新的生成T-SQL脚本的SQL Server命令行工具

    这里向大家介绍一个新的生成T-SQL脚本的SQL Server命令行工具:mssql-scripter.它支持在SQL Server.Azure SQL DB以及Azure SQL DW中为数据库生成 ...

随机推荐

  1. Spring注解篇,学完注解深入了解SpringBoot更容易

    由于Spring Boot项目底层也都是Spring,使用Spring Boot就需要对Spring的注解有一定的了解,这次就把Spring的部分注解聊一下.熟悉了Spring的注解使用Spring ...

  2. .net 移动mas短信接口开发

    接口文档下载 1.移动后台接入用户新增(选择HTTP协议) 2.后台代码 /// <summary>    /// 用户名    /// </summary>    priva ...

  3. LRU 居然翻译成最近最少使用?真相原来是这样!(附力扣题解)

    前言 相信有很多同学和我一样,第一次碰到 LRU(Least Recently Used) 的这个解释「最近最少使用」都不知道是什么意思,用汤家凤老师的话来说: 我真的感到匪夷所思啊! 最近是表示时间 ...

  4. pycharm软件基本使用python语法的注释变量的使用常量的使用变量的命名规范python的优化垃圾回收机制数据类型

    pycharm软件基本使用 1.pycharm基本的使用方法:1.点击file找到settings(设置)打开Appearance&Behavior点击Appearance看theme这个就是 ...

  5. 使用git cz 时报模块找不到 使用commitizen init cz-conventional-changelog --save --save-exact --force 又报下面错 头晕

    使用git cz 时报模块找不到 使用commitizen init cz-conventional-changelog --save --save-exact --force 又报下面错 头晕 At ...

  6. FPGA MIG调试bug(一)

    目标器件:复旦微FPGA:JFM7K325T8FCBGA676(对标Xilinx Kintex-7系的XC7K325T) 工程背景:板载4片DDR(AllianceMemory_DDR3L_8G_AS ...

  7. 基于线程的并行-Python 并行编程学习笔记(一)

    前言 最近写一些模拟集群智能的算法,虽然机制简单,但是随着个体的增加,设计的计算量就比较大了,尤其是加上matplotlib进行动态展示,使得运算量骤增,看着画面也比较卡.之前想把算法转化成c++代码 ...

  8. VUE学习-组件

    组件 组件是可复用的 Vue 实例,且带有一个名字. <div id="components-demo"> <button-counter></but ...

  9. mapreduce和yarn集群

    mapreduce : 先分再合,分而治之 分布式计算概念: 计算方式,与集中式计算相对.将应用拆分成小的部分,分配给多台计算机处理,mapreduce是分布式的计算框架. MR的特点:易于编程,良好 ...

  10. 获取select的选中的值

    var select = document.getElementById("sec")//获取元素 var idx = select.selectedIndex;//获取当前选中的 ...