windows批处理小应用

接触批处理有一段时间了,总感觉 windows 批处理是有一定的用处的。尤其是当你需要在 windows 系统中做些批量有规律的事情 、或者一些固定的命令行操作。

你完全可以编辑一个批处理文件,将一系列烦人的命令化的操作变成简单的一次“双击”。这可能就是批处理的魅力之一吧~~ 

以下是一些批处理的简单应用,但是批出理能实现的功能远远不止这些!

1.新建一个空的文本文档

如果我不想这样,每次都要右键打开选择新建文本文档。而是轻轻双击完成新建。批处理会帮到你。

@echo off
type nul>temple.txt
start temple.txt

保存为 .bat 后缀的文件。双击运行试一试。

2.批量重命名

举个栗子,我想将一个目录下边的 txt 文档,命名为 m1.txt m2.txt ... 这样的格式 使用windows 默认的批量重命名?你得到的可能是:m (1).txt、m (2).txt... 那怎么办?

批处理其实最擅长这种事情了。

@echo off&setlocal ENABLEDELAYEDEXPANSION
for %%I in (*.txt) do (
set var=%%I
copy %%~nI.txt m!var!
)

是不是很简短?

3.开启 win7 虚拟 wifi

  • 建立虚拟 wifi (只需要建立一次):
@echo off
:start
set /p name=输入wifi名称:
echo.
set /p pwd1=输入wifi密码(8-63位):
echo.
set /p pwd2=再次输入wifi密码:
echo.
if %pwd1% equ %pwd2% ( goto usage ) else ( goto fail )
:fail
echo 两次输入密码不一致
set /p temp=是否继续操作(y/n):
if "%temp%" equ "y" ( goto start ) else ( goto end )
:usage
netsh wlan stop hostednetwork > nul
netsh wlan set hostednetwork mode=allow ssid=%name% key=%pwd1% > nul
if %errorlevel% equ 0 ( goto usage1 ) else ( echo 输入密码无效或者网卡不支持&&goto end)
:usage1
echo 设置wifi成功,请在本地连接中打开虚拟无线网络共享。开启成功后点击start_wifi.bat&&start img\sharenetwork.jpg
:end
echo 退出&pause&exit

 

  • 手动打开网络共享(建立成功后需要手动将可用网络共享给 Microsoft Virtual WIFI 对应的网络,只需要设定一次):


  • 启动虚拟 wifi (每次只需要单击就可以启动 wifi 了):
@echo off
netsh wlan start hostednetwork>nul
if %errorlevel% equ 0 echo 启动WIFI成功&&ping -w 100 127.0.0.1 > nul&&exit

 

  • 关闭虚拟 wifi:
@echo off
netsh wlan stop hostednetwork>nul
if %errorlevel% equ 0 echo 关闭WIFI成功&&ping -w 100 127.0.0.1 >nul&&exit
  • 删除虚拟 wifi:
@echo off
netsh wlan set hostednetwork mode=disallow > nul
if %errorlevel% equ 0 echo 删除WIFI成功&&ping -w 100 127.0.0.1 >nul

这是几个独立的文件,可以加做一个菜单就能管理虚拟 wifi 建立、开启、关闭、删除这些操作。

最后给大家看一个大虾写的代码吧,看过牛仔裤,哦不是里基努·里维斯演的<<黑客帝国>>吧,片头的『数码雨』是不是很炫很酷。说不定是批处理写的。

代码(运行一下,看看效果?):

::code by WANKOILZ 2008/5/28
@echo off&setlocal enabledelayedexpansion&color 02&mode con lines=30&title 黑客帝国数码雨
setlocal&set flag=0
:loop
if %flag% lss 30 (set/a flag+=1) else (call :chang)
for /l %%i in (1,1,26) do (
  if defined a%%i (set/a a%%i=!random!%%2&set tmp=!a%%i!
  ) else (if !random! lss 1000 (set/a a%%i=!random!%%2&set tmp=!a%%i!
         ) else (set tmp= ))
call set line%flag%=%%line!flag!%%  !tmp!
)
cls&for /l %%i in (%flag%,-1,1) do echo.!line%%i!
for /l %%i in (1,1,100) do ver>nul
::ping /n 1 127.1>nul
if !random! lss 500 (endlocal&setlocal&set flag=0)
goto :loop

:chang
for /l %%i in (1,1,29) do (
set /a tmp=%%i+1
call set line%%i=%%line!tmp!%%
)
set line%flag%=

效果图片:


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值