找回密码
 加入
搜索
查看: 8546|回复: 9

[系统综合] [已解决]_ArrayDisplay($a_Path)的数组值生成bat

  [复制链接]
发表于 2014-7-3 13:50:18 | 显示全部楼层 |阅读模式
本帖最后由 bhffhzh 于 2014-7-5 16:10 编辑

求解:
 #include <array.au3>
 #include <file.au3>


Local $gg = FileOpen("d:\正则.txt")
Local $RF = FileRead($gg)
Local $a_Path = StringRegExp($RF, "(?<=目录:).*(?=的权限)", 3)
_ArrayDisplay($a_Path)
将数组结果每行的前加上批处理命令“echo y| cacls ” 后面加上“ /c /p SYSTEM:f Administrator:f” 生成为一个bat文件。


数组图样子为:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2014-7-3 19:09:27 | 显示全部楼层
没人知道吗
发表于 2014-7-4 10:21:50 | 显示全部楼层
楼主,你这样说有意思吗?
这论坛中帮过你的人恐怕有不少吧。你写的代码中,正则查询、正则替换、从文件中读取到变量,哪个不是人家告诉你的?
现在你是想将数组中的内容写到文件中,又是比较基本的知识啊,稍接触AU3的人恐怕都知道。帮助中很容易找到啊。
学问学问,先学后问!你先看看UBound()、FileWrite()等相关函数,试着写点代码,如有不懂再贴出你的代码,再来问问吧!
 楼主| 发表于 2014-7-4 14:22:37 | 显示全部楼层
好吧,加紧思考。主要是急着想要。
发表于 2014-7-4 14:49:00 | 显示全部楼层
回复 1# bhffhzh

上面的東西是 你自己寫的嗎??  還是別人寫給你的...

你能告訴我 怎麼 從頭到尾  把 $a_path 裡面的東西   MSGBOX 出來一次嗎??

先告訴我 怎麼 MSGBOX 出來  我就告訴你接下來怎麼處理
 楼主| 发表于 2014-7-4 17:35:25 | 显示全部楼层
本帖最后由 bhffhzh 于 2014-7-4 17:41 编辑

别人给的。能知道。我就不用问了。

PS:其实这些问题对熟手来讲都是些小儿科问题,对新手来讲都是些高难度,帮助文档大家都在看,没看出门道哟。
   我也搜索了其它朋友的问题,其实都是类似的。个别朋友炫耀知识其实感觉没必要吧?懂我还来问啊!哎。
   AU3是交流论坛,其实我不想说这些话。带着情绪没意思的。
发表于 2014-7-4 17:40:22 | 显示全部楼层
回复 6# bhffhzh

恩 說得好 ~~能知道就不用問了!!
所以 你是不是應該先了解一下  自己手上的程式碼??

連自己的程式碼都不想了解 ,別人又怎麼會想要去了解你的程式碼嗎??

不了解程式碼 又怎麼解決問題呢??
 楼主| 发表于 2014-7-4 17:44:05 | 显示全部楼层
本帖最后由 bhffhzh 于 2014-7-4 17:48 编辑

什么叫 程式码?,专业了不懂。



学这东东,也是爱好而已,主要行业是搞IDC。偶尔尝试写写相当相当简单的小工具。。
公司里有delphi的程序员(其实这工具他几分钟就写出来了),昨天我还和他说我用au3来写写看。结果。。。呵,碰到难题了。
发表于 2014-7-5 13:22:27 | 显示全部楼层
这个不复杂,有时间还是多学学吧
#include <array.au3>
#include <file.au3>


_main()
Exit

Func _main()
        
Local $gg = FileOpen(@ScriptDir&"\正则.txt")
Local $bat = @ScriptDir&"\正则.bat"
Local $RF = FileRead($gg)
Local $a_Path = StringRegExp($RF, "(?<=目录:).*(?=的权限)", 3)
Local $begin='echo y| cacls '
Local $end=' /c /p SYSTEM:f Administrator:f'
For $i=0 To UBound($a_Path)-1
        FileWriteLine($bat,$begin&$a_Path[$i]&$end)
        
Next

EndFunc
 楼主| 发表于 2014-7-5 16:09:36 | 显示全部楼层
这个不复杂,有时间还是多学学吧
light_he 发表于 2014-7-5 13:22



感谢 light_he

改进代码:
For $i = 0 To UBound($a_Path)-1    
        $a_Path[$i] = 'echo y| cacls "' & $a_Path[$i] & '" /c /p SYSTEM:f Administrator:f'
Next
FileDelete("d:\ok.bat")
FileWrite("d:\ok.bat", _ArrayToString($a_Path, @CRLF))
MsgBox(0,"提示","批处理已经生成请检查!")


再次谢谢。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-29 13:04 , Processed in 0.079624 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表