xyplorer脚本引擎基于javascript,以.xys为扩展名,支持自动执行、批量处理与动态响应;需通过script:验证启用,可创建脚本、绑定快捷键、调用内置对象及外部工具如xycopy.exe。

如果您希望在XYplorer中实现重复性任务的自动执行、跨目录批量处理或动态响应文件操作,则需要调用其内置的脚本引擎。XYplorer Scripting引擎基于JavaScript语法,所有脚本以.xys为扩展名,直接嵌入软件运行环境,无需外部解释器。以下是启用与运用该引擎的具体方法:
一、启用并验证脚本引擎运行环境
XYplorer默认已集成脚本引擎,但需确认其处于激活状态且能正确解析JavaScript逻辑。引擎依赖于内部JS解释器,不调用系统级WScript或Node.js,因此所有功能均在XYplorer进程内完成,确保便携性与隔离性。
1、启动XYplorer后,在地址栏输入:script: 并按回车;
2、若弹出“Script Editor”窗口,说明脚本引擎已就绪;
3、在编辑器中输入 msgbox("Hello from XYplorer Script!"); 并点击“Run”;
4、出现带“Hello from XYplorer Script!”内容的提示框,即验证成功。
二、创建并运行基础.xys脚本文件
脚本文件必须保存为UTF-8无BOM编码的纯文本,扩展名为.xys,存放位置不影响执行,但推荐置于XYplorer配置目录下的Scripts子文件夹中以便管理。
1、在任意文件夹中新建文本文档,重命名为 rename_all_txt.xys;
2、用记事本打开,输入以下内容:
var files = getSelectedFiles();
for (var i = 0; i renameFile(files[i], "renamed_" + basename(files[i]));
}
3、保存并关闭;
4、在XYplorer中选中若干.txt文件,右键 → “Scripts” → 点击“rename_all_txt”;
5、所选文件将被统一添加前缀“renamed_”。
三、绑定脚本到快捷键实现一键触发
将常用脚本映射至键盘快捷键,可绕过右键菜单,大幅提升高频操作响应速度。该绑定存储于XYplorer配置中,随配置文件同步,支持U盘便携迁移。
1、进入菜单栏:Tools → Customize Toolbar → Keyboard;
2、在“Category”下拉框中选择 Scripts;
3、在“Command”列表中找到目标脚本名称(如 rename_all_txt);
4、点击“Press key”框,按下期望组合键(例如 Ctrl+Alt+R);
5、点击“Assign”,再点击“OK”保存设置;
6、此后在任意文件视图中,选中文件后按 Ctrl+Alt+R 即可立即执行该脚本。
四、使用内置对象与函数动态操作当前上下文
XYplorer脚本引擎提供一组专用全局对象(如 app、tab、folder、file)和函数(如 getSelectedFiles、getClipboardFiles、runCommand),允许脚本实时感知界面状态并作出响应,例如根据当前标签页路径执行不同逻辑。
1、新建脚本 log_current_path.xys;
2、写入以下代码:
var path = app.path;
var name = app.tabname;
log("Tab: " + name + ", Path: " + path);
msgbox("Logged to Output pane.");
3、执行后,信息将显示在底部“Output”面板中(可通过 View → Output Pane 打开);
4、该脚本可随时获知用户正在操作的目录路径与标签页名称,为条件分支逻辑提供依据。
五、调用外部命令与集成FastCopy执行可靠复制
脚本引擎支持通过 runCommand 函数调用系统命令行工具或XYplorer内置组件(如XYcopy.exe),从而突破GUI限制,实现带校验、断点续传、多线程等高级复制能力。
1、确保XYplorer安装目录下存在 XYcopy.exe(默认随主程序部署);
2、新建脚本 fastcopy_to_backup.xys;
3、输入以下指令:
var src = app.path;
var dst = "D:\Backup\" + foldername(src);
runCommand('"' + app.exepath + '\XYcopy.exe" "' + src + '" "' + dst + '" /E /Z /R:3');
msgbox("FastCopy job submitted.");
4、执行时将调用XYcopy.exe,以镜像模式(/E)、断点续传(/Z)、重试3次(/R:3)方式同步当前目录至D:Backup下的同名子目录;
5、该过程完全后台运行,不阻塞XYplorer主界面。











