如何一次性获取CLI传入AutoHotkey脚本的所有A_Args元素?
在AutoHotkey中一次性获取所有命令行参数
直接遍历所有参数
A_Args本身就是存储所有命令行参数的数组对象,无需手动创建固定索引的数组,直接遍历即可处理任意数量的参数。修改后的脚本如下:
; 遍历所有传入的参数并写入文件 For each, Element in A_Args { FileAppend, %Element%`n, C:\temp\Test.txt }
执行终端命令.\Test.ahk "One" "Two" "Three"后,Test.txt会依次写入所有传入的参数。
解决MsgBox %A_Args%为空的问题
在AHK v1中,A_Args是对象类型,无法直接通过%A_Args%展开为字符串。若要在弹窗中显示所有参数,需要将数组元素拼接成字符串,示例如下:
; 拼接所有参数为字符串并弹窗展示 paramStr := "" For each, param in A_Args { paramStr .= param "`n" } MsgBox % "所有传入参数:`n" paramStr
完整示例脚本
; 弹窗展示所有参数 paramStr := "" For each, param in A_Args { paramStr .= param "`n" } MsgBox % "传入的参数列表:`n" paramStr ; 清空目标文件并写入所有参数 FileDelete, C:\temp\Test.txt For each, Element in A_Args { FileAppend, %Element%`n, C:\temp\Test.txt }
内容的提问来源于stack exchange,提问作者Ralf_Reddings
相关产品推荐
相关产品推荐

