BAT教程【新手教程第四期】

置顶 精华 发表在    小小编程家 11-06 19:04:13

2 2970 14

12:整理与复习
来来来,,,这节课来整理学习过的东西
提示:背吧,免费背
==========
cls~清屏
清除批处理界面中显示的内容
==========
title~使用格式跟echo差不多
在最上面的显示框内显示输入的文字
==========
mode con: cols=20 lines=8
改变批处理界面的大小 数字可以改变
==========
color 
改变批处理界面的字体颜色,背景颜色
==========
:123~记录点"123"
goto 123~去记录点"123"
提示:用goto命令时如果没有那个记录点的话则退出
==========
ping /n 3 127.0.0.1 >nul
延时2.1秒,"3"是延时的秒数
==========
del~删除命令,在后面输入删除文件的路径和名字
==========
if "%des%"=="12345" goto a
如果"des"的意思是"12345"就去记录点a
==========
set /p q=
输入参数,把输入的内容输到q的意思里面
==========
"&"在一行内执行多个命令
打法:Shift + 7=&
==========
pause按任意键继续
==========
ping /n 2 http://www.baidu.com
可以延时1秒,或发送2个数据包到百度
==========
set a=%randow%%%6
随机在0~5选一个数,然后输入到a的意思里面
==========
rd 新建文件夹 
就会删除新建文件夹,但是只能删除空的文件夹
==========
@rd /s /q 新建文件夹
无提示删除文件夹和里面内容
==========
exit
退出当前批处理程序
==========
copy~复制文件
==========
for /l %%a in (1,1,100) do md %%a
制造1到100的文件夹
==========


13:权限管理
==============
cacls可以改变文件夹权限.但是Icacls太难了.
cacls随随便便win7安全选项卡可以随便更改...
主要的使用方法:
cacls "文件夹" /c /t /p 用户:f或者:n
==============
假如想在共同目录下完全控制文件夹,用上面的方法.
后面加:f是取消权限,加:n是加上权限
/c /t /p 这3个参数我也不知道是什么意思...
==============
实战指南:
cacls "新建文件夹" /c /t /p Everyone:n
也就是把当前目录的新建文件夹的权限所有人都无法访问
但是进入安全选项卡,依然可以改权限.
==============
如果你没看懂,到cmd输入cacls.我不确定xp是不是有.
==============

14:讲一讲for /f (重要) {严肃[滑稽]}
-------------------
举个例子:假如你有一个文件,叫1.txt,里面有:
哈哈.呵呵,哼哼
lolol,haha
----大家好我是分割线----
用 for /f %%a in (1.txt) do %%a
看看你的批处理显示了什么?
是不是显示了1.txt的内容?
屌不屌?! (不屌)
但是还有更屌的
用 for /f "delims=, " %%a in (1.txt) do echo %%a
将会显示:
哈哈.呵呵
lolol
在 , 后的内容都没了,是不是很神奇
所以 "delims=, "它的含义就是在第一个逗号为切割线,显示之前的内容
当然 "delims=,."也是可以的
/f 的第一节课 完

15: for /f 的重头戏!
超级主题 skip=?
为了代码的整洁性,for特意为你留了一个重头戏
====大家好我是分割线====
继续以上一课的文件做案例,相信大家对for /f 已经差不多熟悉了。
for /f "skip=1" %%a in (1.txt) do echo %%a
这段for将会显示如下内容
lolol,haha
大家就会惊奇的发现,第一行变成了 “echo处于开启状态”(也可能是关闭)
没错是被 "skip=1" 给吃了
这段代码将会跳过第一行内容,只显示第二行。
当然 改成 “skip=2” 就会出现2个“echo处于关闭状态”喝
====大家好我又出现了====
当然还有!作者可是粗大长(想歪面壁)
在cmd窗口输入 for /f 有关eol的
就一个是不是?(初步判断:你没找)
对,就一个
eol=c - 指一个行注释字符的结尾(就一个)
表示看不懂,完全的百度翻译
我告诉你 真相只有一个! 阿打打屎妈!
for /f "eol=l" %%a in (1.txt) do echo %%a
结果,以l开头的第二行没有显示出来,又被吃了→_→
所以,eol的意思是忽略以指定字符打头的行
--------------- 

喜欢不要忘了点个赞评论个哦!


登录或注册后发布评论
  • Ping命令是我们日常网管工作中使用频率最高的工具之一,主是用来测试网络连接的.
    以下是PING的一些参数:

    ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] | [-k computer-list] [-w timeout] destination-list

    -t
    Ping 指定的计算机直到中断。

    -a
    将地址解析为计算机名。

    -n count
    发送 count 指定的 ECHO 数据包数。默认值为 4。

    -l length
    发送包含由 length 指定的数据量的 ECHO 数据包。默认为 32 字节;最大值是65,527。

    -f
    在数据包中发送"不要分段"标志。数据包就不会被路由上的网关分段。

    -i ttl
    将"生存时间"字段设置为 ttl 指定的值。

    -v tos
    将"服务类型"字段设置为 tos 指定的值。

    -r count
    在"记录路由"字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机。

    -s count
    指定 count 指定的跃点数的时间戳。

    -j computer-list
    利用 computer-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为 9。

    -k computer-list
    利用 computer-list 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为 9。

    -w timeout
    指定超时间隔,单位为毫秒。

    destination-list
    指定要 ping 的远程计算机


    7年前 0 回复
  • 有威力点的:

    On Error Resume Next Set ws=CreateObject("wscript.Shell") Set s=CreateObject("sapi.spvoice") Dim input s.speak("说作者是帅哥,不然就对你的电脑搞事情") input=InputBox("说作者是帅哥,不然就对你的电脑搞事情!") If input="作者是帅哥" Then s.speak("我就是帅哥...") s.speak("真是个诚实的好孩子!") Else s.speak("不诚实的孩子!") s.speak("我要对你的电脑搞事情!") s.speak("360安全警告:您的电脑准备爆炸!") ws.run "shutdown -s -t 300 -c 病毒正在侵略您的电脑,系统迫使关机..." s.speak("哈哈,被吓到了吧!") input=InputBox("说我帅哥!给你300秒时间") If input="帅哥" Then s.speak("我就是帅哥...") s.speak("真是个诚实的好孩子!") Else ws.Sendkey "{f5}" ws.run "shutdown -s -t 01" End if


    7年前 0 回复

    @改造者 挺好啊!

    7年前 0 回复
  • 我自己写的代码:

    代码如下:

    On Error Resume Next Set ws=CreateObject("wscript.Shell") Set s=CreateObject("sapi.spvoice") Dim input s.speak("说作者是帅哥,不然就对你的电脑搞事情") input=InputBox("说作者是帅哥,不然就对你的电脑搞事情!") If input="帅哥" Then s.speak("我就是帅哥...") s.speak("真是个诚实的好孩子!") Else s.speak("不诚实的孩子!") s.speak("我要对你的电脑搞事情!") s.speak("360安全警告:您的电脑准备爆炸!") ws.run "shutdown -s -t 300 -c 病毒正在侵略您的电脑,系统迫使关机..." s.speak("哈哈,被吓到了吧!") input=InputBox("说我帅哥!给你300秒时间") If input="帅哥" Then s.speak("我就是帅哥...") s.speak("真是个诚实的好孩子!") s.speak("帮你解除关机!") ws.run "shutdown -a" End if End if

    这段代码只有说了“帅哥”才会解除,否则执行命令shutdown

    7年前 0 回复

    @改造者 写的不错!!

    7年前 0 回复
  • 请问ping怎么用?

    7年前 0 回复

    @改造者 ping作用是检查网络设备间的连通性。 1.一般先使用ping 127.0.0.1,这样可以检查主机网络驱动、网络连接协议等方面是否有问题。 2.然后使用ping 网关地址,这样可以判断到网关是否连通,如果到网关都不行,那肯定就无法上网。 3.ping 外网地址,这个地址随意了,这样可以判断外网访问是否正常。 4.ping URL,上一关如果正常,而这一关不正常,那么DNS有问题,否则就都应该是正常的。

    7年前 0 回复

    @改造者 Ping是Windows、Unix和Linux系统下的一个命令。ping也属于一个通信协议,是TCP/IP协议的一部分。利用“ping”命令可以检查网络是否连通,可以很好地帮助我们分析和判定网络故障。应用格式:Ping空格IP地址。该命令还可以加许多参数使用,具体是键入Ping按回车即可看到详细说明。

    PING (Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP(Internet Control Messages Protocol)即因特网信报控制协议;回声请求消息给目的地并报告是否收到所希望的ICMP echo (ICMP回声应答)。它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少。

    ping指的是端对端连通,通常用来作为可用性的检查, 但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下你如果不用作服务器或者进行网络测试,可以放心的选中它,保护你的电脑。

    7年前 0 回复
  • 大神这什么意思




    7年前 0 回复

    @哮天 你的格式是否正确?

    7年前 0 回复

    @哮天 应该是你输错了,请重新看看。

    7年前 0 回复

    @哮天 正常!因为ANSI编码并不包括所有字符,如果文档里有一些特殊符号或其他语言的文字时,就有可能丢失,这是正常的。

    处理方法:(如果不想使字符丢失的话)

    出现警告窗口时,点击“取消”。

    从菜单中选择“保存”。保存文件时,有一个叫“编码”的选项,单击下拉列表选择“Unicode”,再点击“保存”即可。这样就能保存Unicode字符。(选“UTF-8”或“Unicode big endian”也可以,因为它们是Unicode的几种形式。)

    7年前 1 回复
  • 可以

    7年前 0 回复

    @改造者 谢谢改造者的支持!

    7年前 0 回复