Windows脚本相关
1 获取IP地址
echo StartChangeIPFile
echo 获取主机名
for /f %%i in ('hostname') do (set pcName=%%i)
::ping %pcName% -4
echo 开始获取IP并保存在c:\tmp\ip.txt文件中
for /f "tokens=2 delims=[]" %%i in ('ping %pcName% -4^|findstr "%pcName%"') do (set ip=%%i
echo %%i>c:\tmp\ip.txt)
echo 替换内容
for /f "tokens=* " %%i in (c:\tmp\ip.txt) do set "ip=%%i"
if defined ip (
echo 变量 ip 的值不为空
) else (echo 变量 ip 为空值
pause)
::下面的内容是修改某个文件,将指定内容替换为上面取到的IP,注意不是获取IP的部分啦
::这里用到了sed命令,如果使用的话,可以网上下载Windows版本的即可
sed "s/=.*IP/=%ip%/g" %DirPath%agent_net.cfg >c:\tmp\agent_net.cfg
echo 覆盖内容
copy /y c:\tmp\agent_net.cfg %DirPath%agent_net.cfg
如果主机在hosts文件中加入 127.0.0.1 hostname解析,那么使用如上方法可能获取的ip地址是127.0.0.1,
我们可以使用powershell来获取IP:
#Here is a quick way to get all IP addresses assigned to your #computer:
#requires -Version
$ipaddress = [System.Net.DNS]::GetHostByName($null)
Foreach ($ip in $ipaddress.AddressList)
{
$ip.IPAddressToString
}
If you replace $null with a hostname (like "server123"), you can retrieve the IP address(es) assigned to that computer instead, too.
#And if you are just interested in IPv4 addresses, try this:
#requires -Version
$ipaddress = [System.Net.DNS]::GetHostByName($null)
foreach($ip in $ipaddress.AddressList)
{
if ($ip.AddressFamily -eq 'InterNetwork')
{
$ip.IPAddressToString
}
}
2 关于For循环
还是参考他人的比较全面,如下:
直接使用window帮助就行,打开cmd,输入 for /?.
比较常用的如下(直接运行bat文件替换下面%为%%,如果再命令行直接写的话,直接单%如下就行了)
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]
3 再贴几个语法句式吧
1 if……else
if exist "D:\" (
echo aaa
goto DecompressOnDiskD
) else (
goto DecpmpressOnDiskC
)
2 脚本调用其他脚本,万不可使用goto,要用call,否则会执行中断的
3 变量赋值是set
4 程序内跳转,最好使用标签,然后用goto跳转
goto ChangeIp :changeIp echo StartChangeIPFile
5 Windows转义字符是^,如下
set "str1=^<WorkingDirectory^>%cd%^<^/WorkingDirectory^>"
Windows脚本相关的更多相关文章
- VBScript: Windows脚本宿主介绍
Windows脚本宿主(Windows Script Host, WSH)是一个Windows管理工具.WSH创建了一个脚本运行的主环境,WSH使脚本能够使用对象和服务,并提供脚本执行的准则.WSH还 ...
- c# 动态执行脚本,相关的几个脚本引擎.
Jint 嵌入式的javascript脚本支持引擎,一直都在更新,对各种方法支持也比较好,可以 C# 交互. https://github.com/sebastienros/jint Jurass ...
- 重新想象 Windows 8 Store Apps (70) - 其它: 文件压缩和解压缩, 与 Windows 商店相关的操作, app 与 web, 几个 Core 的应用, 页面的生命周期和程序的生命周期
[源码下载] 重新想象 Windows 8 Store Apps (70) - 其它: 文件压缩和解压缩, 与 Windows 商店相关的操作, app 与 web, 几个 Core 的应用, 页面的 ...
- Windows脚本
最近项目测试比较麻烦,要启动好几个command窗口,手敲之类的有些繁琐,于是研究了一下windows脚本,实现以下功能: 懒人吗,参数意义顺序比较懒得记,所以需要友好参数提示: 根据参数数量决定启动 ...
- windows脚本(VBS)之cmd命令行的妙用
windows脚本(VBS)之cmd命令行的妙用 (2009-08-06 13:40:55) 转载▼ 标签: 脚本 cmd 命令行 vbs js 简单 公式 windows it 分类: 计算机 脚本 ...
- 修改host指定域名指向ip,Windows脚本与Linux脚本
修改host指定域名指向ip,Windows脚本与Linux脚本 一,Windows系统修改hosts文件 Windows系统下hosts文件位置:C:\Windows\System32\driver ...
- windows脚本-CMD和Batch
一.DOS,CMD和batch DOS是磁盘操作系统(英文:Disk Operating System)的缩写,是个人计算机上的一类操作系统.从1981年直到1995年的15年间,DOS在IBM PC ...
- windows脚本配置ip地址
背景:工作上经常涉及到要调试设备,每次都要手动配置静态ip地址,配置完之后还要重新改回来,有时候为了连续调试多台设备,来回手动更改ip,实在麻烦. 思考:想到windows有脚本,可以利用脚本文件达到 ...
- window FILES——windows文件管理相关实例
C语言下有一套文件管理方案.C++语言下也有一套自己的文件管理方案.windows系统当然也有自己的一套文件管理方案啦.对于普通char类型为基础的字符使用哪种方案的解决办法都是一样的,但是对于宽字符 ...
随机推荐
- Go执行远程ssh命令
使用包:golang.org/x/crypto/ssh 以下封装一个发送命令的Cli结构体 type Cli struct { IP string //IP地址 Username string //用 ...
- PyQt4 开发入门
参考资料:PyQt4教程
- ACSA Associate -- 01 Introduction To The Course
1. 为什么要学习AWS认证? 2. AWS认证的考试是如何组织的? 3. 你需要做些什么? 4. 关于ACSA和ACSA BETA的信息 5. 其他链接 15 Top Paying IT Certi ...
- Mixin Network Whitepaper
[译] Mixin Network(网络) 看到了李笑来老师牵头的 Mixin, 也仔细查看了 Mixin 白皮书 ,决定翻译过来 构造一个最大的,并且对开发者友好的移动区块链网络,连接现有的所有区块 ...
- 数据挖掘概念与技术15--为快速高维OLAP预计算壳片段
1. 论数据立方体预计算的多种策略的优弊 (1)计算完全立方体:需要耗费大量的存储空间和不切实际的计算时间. (2)计算冰山立方体:优于计算完全立方体,但在某种情况下,依然需要大量的存储空间和计算时间 ...
- Ajax提交Form表单的一种方法
待提交的表单 <form id="updatePublicKey" enctype="multipart/form-data"> <div c ...
- faster-rcnn系列笔记(一)
目录: 1. 序言 2.正文 2.1 关于ROI 2.2 关于RPN 2.3 关于anchor 3. 关于数据集合制作 4. 关于参数设置 5. 参考 1.序言 叽歪一下目标检测这个模型吧,这篇笔 ...
- hihoCoder #1015 : KMP算法【KMP裸题,板子】
#1015 : KMP算法 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在 ...
- Vijos P1113 不高兴的津津【模拟】
不高兴的津津 描述 津津上初中了.妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班.另外每周妈妈还会送她去学习朗诵.舞蹈和钢琴.但是津津如果一天上课超过八个小时就会 ...
- [bzoj4592] [Shoi2015]脑洞治疗仪
题面无法直视系列. 中规中矩的线段树题. 涉及的操作有:区间赋值为0,计算区间内1的个数,区间赋值为1,求区间内最大的连续的1的个数. #include<cstdio> #include& ...