lua脚本怎么获取当前正在执行的脚本的当前路径

lua脚本怎么获取当前正在执行的脚本的当前路径,第1张

如果在Windows下(……Linux行不行不知道)

obj=iopopen("cd") --如果不在交互模式下,前面可以添加local

path=obj:read("all"):sub(1,-2) --path存放当前路径

obj:close() --关掉句柄

上述原理是利用Windows的cd命令返回工作目录;至于sub(1,-2)是为了去掉换行符

当然如果你有lua socks或者你有lfs(注意匹配你的Lua版本),你可以使用lfs(Lua File System)

require("lfs")

path=lfscurrentdir()

这个则是Lua文件系统库中的函数

……就是这样

FileStream fs = new FileStream("d:\\atxt", FileModeOpen); StreamReader m_streamReader = new StreamReader(fs); m_streamReaderBaseStreamSeek(0, SeekOriginBegin); string arry = ""; string strLine = m_streamReaderReadLine(); do { string[] split = strLineSplit('='); string a = split[0]; if (aToLower() == "ip") { arry += strLine + "\n"; } strLine = m_streamReaderReadLine(); } while (strLine != null && strLine != ""); m_streamReaderClose(); m_streamReaderDispose(); fsClose(); fsDispose(); ConsoleWrite(arry); ConsoleReadLine(); 如果你要大小写也要匹配的话把ToLower() 去掉就行了

以小米max2为例,安卓手机打开lua文件方法如下:

1、首先可以到官网下载一个GG,下载之后语言设置下即可,记住这里一定要是在官网下载的,下载之后会安装两个版本,一个是硬件加速,一个是软件加速,两个都可以使用。

2、之后打开任意一个版本确定手机已经root并且赋予GG权限。

3、然后附加一个进程比如支付宝。想使用刺激战场的lua执行文件,选择进程的时候选择刺激战场即可。

4、附加进程完成之后点击搜索,然后依次点击三角符号。

5、然后找到手机文件夹的lua文件位置。

6、最后完成。

时代在发展科技在进步,互联网已经不是什么神秘的领域,现在越来越多的年轻人对于互联网越来越熟悉,甚至有些开始学习Linux系统方面的知识,下面小猿圈Linux讲师就讲关于如何在Linux系统获取当前工作路,希望对你有所帮助。

获取工作路径这里介绍两种方法:

1、使用getcwd()函数。

头文件:#include

定义函数:chargetcwd(charbuf,size_tsize);

函数说明:getcwd()会将当前的工作目录绝对路径复制到参数buf所指的内存空间,参数size为buf的空间大小。

实例:

voidgetPath()

{

charpPath[256]={0};

getcwd(buf,256);

printf("filePath:%s\n",pPath);

}

主函数调用此函数运行结果:

filePath:/home/myTest

2、使用readlink()函数

头文件:#include<unistdh>

函数定义:intreadlink(constcharpath,charbuf,size_tbufsiz);

函数说明:此函数会将参数path的符号连接内容到参数buf所指的内存空间,返回的内容不是以NULL作字符串结尾,但会将字符串的字符数返回。若参数bufsiz小于符号连接的内容长度,过长的内容会被截断。成功返回buf长度,失败返回-1。

实例:

voidgetPath()

{

charpPath[256]={0};

intret=-1;

ret=readlink("/proc/self/exe",pPath,256);

pPath[ret]="\0"

printf("thefilePath:%s\n",pPath);

}

intmain()

{

getPath();

}

运行结果:

thefilePath:/home/myTest/aout

小猿圈Linux讲师提醒大家:每天学习一点技术问题,只要功夫深,铁杵磨成针,学习不是一朝一夕的,是需要付出行动的,而且还要坚持,学习新的技术需要不断的查阅资料,看视频,复习,练习,如果你工作中或者生活中遇到什么问题,可以到小猿圈去寻找答案的,相信会给你满意的答复

intCWndGetDlgCtrlID。

为控件内容赋值,为对话框中ID号为nID的控件填入指定字符串voidCWndSetDlgItemTextintnID,LPCTSTRlpszString。

用EnumWindows枚举出所有桌面窗。EnumWindows(EnumWindowsProc,参数),EnumWindowsProc为回调函数,形如BOOLCALLBACKEnumWindowsProcHWNDhwnd,LPARAMlParam在这个函数再使用EnumChildWindows。

Lua中遍历table主要有四种方式,各有各的不同

Lua的存储并不是顺序存储的,所以当我们使用第一种遍历方法去遍历的时候,输出的值可能和我们想象的顺序不同。

在我们的设想里,我们是希望它输出1,2,3,4,但是实际上输出的是1,2,4,3。for k,v in ipairs(tbtest) do是根据key中的hash值的排列顺序来排列的。

它的前提是key是从1开始的,那么它会按照key的大小顺序进行遍历,如果key不连续,它就不会接下去遍历

上面的函数只会打印1,2,3不会打印5

这样就一个都不会遍历

因为#table 是获取table里的数组段的长度,遍历时只会输出数组段的值,并且它的前提也是key必须从1开始,如果key不从1开始,#tbtest获取到的值就是0

它获取的是数组段的key的最大值,字符串的key是无法获取到的

其实maxn还是很有用处的,用它取到最大的key值,我们就可以从前往后遍历数据了,完全可以略过nil

while循环与其他语言循环几乎相同。

repeatuntil在lua51之后和其他语言有一些细微的不同,就是在循环体的局部变量的作用域扩增到条件测试中,也就是until语句。

以上就是关于lua脚本怎么获取当前正在执行的脚本的当前路径全部的内容,包括:lua脚本怎么获取当前正在执行的脚本的当前路径、lua的io,读取文件,匹配关键字,获取内容下面内容.并返回、安卓手机怎么打开lua文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9816258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存