找回密码
 立即注册

微信登录

只需一步,快速开始

QQ登录

只需一步,快速开始

查看: 32|回复: 0

[心得] aardio 系统操作与进程管理

[复制链接]
  • TA的每日心情
    开心
    3 天前
  • 签到天数: 51 天

    连续签到: 5 天

    [LV.5]常住居民I

    28

    主题

    56

    回帖

    714

    积分

    高级会员

    积分
    714
    来自: 中国贵州贵阳
    发表于 4 天前 | 显示全部楼层 |阅读模式 来自: 中国贵州贵阳
    非业余 - aardio 编程语言 - 非官方问答社区
    风行者三期培训:Aardio+Python+Flutter,1000集课程让你成为全栈开发高手!https://mp.weixin.qq.com/s/_WOoHFtITUyLk2k7BXYGkg
    Aardio培训大揭秘,轻松上手打造个人项目!https://mp.weixin.qq.com/s/cr47qhp_Cpz0p57lbbPwug
    aardio风行者第二期培训班https://mp.weixin.qq.com/s/uB6XHUDnGSk0JlWuiBE9AA
    aardio风行者第三期培训班https://mp.weixin.qq.com/s/cdZcvFiAWhlYTaSrQGCPvA
    本帖最后由 XWCXF 于 2025-5-29 17:53 编辑

    一、系统关机与重启操作
    今天我学习了如何使用 Aardio 实现系统的定时关机和重启功能,这让我能够自动化一些日常操作。

    定时关机代码

    [AAuto] 纯文本查看 复制代码
    import sys;
    import console;
    for(i=1;3600;1){
        thread.delay(1000);
        console.log("还有"+(3600-i)+"秒关机!");
    };
    sys.shutdown();

    这段代码通过循环实现了 1 小时(3600 秒)后关机的功能,每秒钟更新一次倒计时显示。

    定时重启代码

    [AAuto] 纯文本查看 复制代码
    import sys;
    import console;
    for(i=1;10;1){
        thread.delay(1000);
        console.log("还有"+(10-i)+"秒重启!");
    };
    sys.restart();

    这个代码片段让计算机在 10 秒后重启,同样会显示倒计时。

    二、进程管理
    进程管理是系统操作的重要部分,我学会了如何查看和控制正在运行的进程。

    列出所有进程

    [AAuto] 纯文本查看 复制代码
    import console;
    import process;
    for sequence in process.each(".*.exe") { 
        console.log("进程ID",sequence.th32ProcessID); 
        console.log("进程文件名", sequence.szExeFile);
    }
    console.pause();

    使用 process.each() 函数可以遍历所有进程,获取它们的 ID 和文件名,这对于监控系统状态非常有用。

    结束指定进程

    [AAuto] 纯文本查看 复制代码
    import process;
    import console;
    var success  = process.kill("chrome.exe");
    if(success){
        console.log("关闭进程成功")
    }else {
        console.log("关闭进程失败")
    }
    console.pause();

    通过 process.kill() 函数,我可以终止像 Chrome 这样占用资源过多的进程。

    三、挑战
    编写程序列出所有进程 → 结束 calc.exe(计算器)→ 设置30分钟后关机。

    答案

    [AAuto] 纯文本查看 复制代码
    import sys;
    import process;
    import console;
    for sequence in process.each(".*.exe") { 
        var szExeFile = sequence.szExeFile; 
        console.log("进程文件名", szExeFile); 
        if(szExeFile == "Notepad.exe"){
            var success = process.kill("Notepad.exe");
            if(success) console.log("已关闭记事本进程");
            found = true;
        }
    }
    if (found) {
        for(i=1;1800;1){
            thread.delay(1000);
            console.log("系统还有"+(1800 - i)+"秒关机");
        }
        sys.shutdown();
    } else {
        console.log("未找到记事本进程");
    }
    console.pause();

    四、总结
    通过今天的学习,我掌握了以下技能:

    • 使用 sys.shutdown() 和 sys.restart() 实现系统操作
    • 通过 process.each() 遍历并监控系统进程
    • 利用 process.kill() 终止指定进程
    • 结合循环和延时函数实现定时任务


    注意:运行上面代码最好把电脑正在做的工作保存一下,不然小心关机东西没了哦!



    非业余 - aardio 编程语言 - 非官方问答社区
    风行者三期培训:Aardio+Python+Flutter,1000集课程让你成为全栈开发高手!https://mp.weixin.qq.com/s/_WOoHFtITUyLk2k7BXYGkg
    Aardio培训大揭秘,轻松上手打造个人项目!https://mp.weixin.qq.com/s/cr47qhp_Cpz0p57lbbPwug
    aardio风行者第二期培训班https://mp.weixin.qq.com/s/uB6XHUDnGSk0JlWuiBE9AA
    aardio风行者第三期培训班https://mp.weixin.qq.com/s/cdZcvFiAWhlYTaSrQGCPvA
    回复

    使用道具 举报

    *滑块验证:
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|非业余 - aardio 编程语言 - 非官方问答社区 知道创宇云防御

    GMT+8, 2025-6-2 20:50 , Processed in 0.095432 second(s), 31 queries .

    Powered by Discuz! X3.5

    © 2001-2025 Discuz! Team.

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