只有你想不到,没有做不到,只是在你的世界思路暂时没打通;个人认为不能单方面直接评判某种语言的功能强大于否,那是因为对它了解还不够深入,精髓部分没有完全掌握的原因。
任何语言都有其发展的优势特点,只是我们需要折中而择,物需所选,发散我们的思维,物(事物)尽(头)相通。很多事物有时我们暂时不明白的,陷入瓶颈,通过一段的摸索实践过程中(不限于对本事物),骤然发现我们已然理解了,恍然顿悟事物的奇妙,世界的奇妙,千丝万缕,甚至千头万绪,然而又在某一点上开始联成一线。
扯了这么多,说了个道理好像是瞎扯^.^下来自己再消化下,好久没写BAT命令了,开始进入主题,做个BAT演示案例。某某服务器存在批量挂码,现需清理文件中的***(替换服务器中指定文件config.php)为了防止此种情况复发,将此文件禁止写入,本案例采用1:1用BAT再现案例整个现场。
现场创建:
::Author: jerry
@echo off
set pathwww="E:\wwwroot"
for /f %%i in ( web.txt) do (
echo %%i
mkdir %pathwww%\%%i\web >>log.txt
)
echo. & pause
站点清单
创建效果一览
数据复制及替换(注意目录更换略):
::Author: jerry
@echo off
set pathwww="E:\wwwroot"
for /f %%i in ( web.txt) do (
echo %%i
xcopy "E:\bak\web\%%i.rar" /k "E:\bak\new\" /y >>log.txt
)
echo. & pause
批量建立站点用户:
::Author: jerry
@echo off
set pathwww="E:\wwwroot"
for /f %%i in ( web.txt) do (
echo %%i
net user %%i /add >>userlog.txt
)
echo. & pause
查看下创建的用户:net user
批量授权:
站点文件未授权前展示:
批量授权脚本:
@echo off
::author: by jerry
set pathwww="E:\wwwroot"
for /f "usebackq tokens=1 delims=" %%a in (web.txt) do call :qx %%a
pause
:qx
set webname=%1%
icacls %pathwww%\%webname%\web\config.php /grant %webname%:(rx)>>chmod.log
icacls %pathwww%\%webname%\web\config.php /deny %webname%:(w)>>chmod.log
echo. & pause
演示完成清理账号信息,清理站点脚本:
::Author: jerry
@echo off
set pathwww="E:\wwwroot"
for /f %%i in ( web.txt) do (
echo %%i
net user %%i /delete >>dellog.txt
rd %pathwww%\%%i /q /s
)
echo. & pause
内容也清理了:
案例按照1:1围绕从站点目录创建,数据复制(覆盖),站点用户创建,权限配置,权限更改,到站点账号及站点整体删除整个生命周期,用代码做了演示。整个操作完毕,讲了一大堆重点是icacls这个方便的高级货命令应用,平时都是点点点,很少用到它。
原文地址:https://blog.51cto.com/jdonghong/2441635