• 之前续写抖音开发者接入字节小游戏的缓存一下,现在说一下在 Windows 或者 Mac 如何用终端更换路径?


    window:

    比方说你的 window 目录下是这个路径:

    第一:E:\project\Q1\trunk\client\src,然后你想切换到下一个路径的话,你可以这样子操作:

    第二:E:\project\Q1\trunk\client\src> cd .\usersetting 然后回车,这里不会计较大小写

    第三:你就可以在这个目录下执行你的脚本:E:\project\Q1\trunk\client\src\usersetting>

    比如我是在E:\project\Q1\trunk\client\src\usersetting>下面有一个 js 脚本的那么你就可以执行下面这行操作,前提你要安装 node.js哦E:\project\Q1\trunk\client\src\usersetting> node .\imgmetachange.js然后回车即可;

    然后就可以实现 window 的所有操作了,如果你想回到上一个目录的话.你可以这样子操作:

    E:\project\Q1\trunk\client\src\usersetting>cd ..//(输入 cd..)两点就回车就可以回到上一个目录啦

    E:\project\Q1\trunk\client\src>

    ===============以上是针对 window 操作系统的哈====================

    macOS 系统操作如何下:

    第一:zghMacBook-Pro:~ zghMacBookPro$ cd desktop//回车就可以指定你的桌面所有的内容,如果你想指定桌面的某一个文件

    第二:你可以输入:zghMacBook-Pro:desktop zhengguohai$ cd 好了之后看然后回车就可以看见这个目录:zghMacBook-Pro:好看 zghMacBookPro$,如果你想在里面找某一个文件你可以这样子

    第三:输入:zghMacBook-Pro:好看 zghMacBookPro$ ls回车就回出现很多文件夹,如果你想返回上一个目录的话,你可以输入:zghMacBook-Pro:好看 zghMacBookPro$ cd就会得到这个目录:zghMacBook-Pro:~ zghMacBookPro$ cd

    ===========以上就是针对 macOS 系统的目录如何更换目录的方法啦======

    这个 imgmetachege.js 如下:


    const fs = require("fs");
    const path = require("path");

    const projectPath = path.join(__dirname, "../assets/resources"); // 目录

    const platformSettings = {
        "default": {
            "formats": [
                {
                    "name": "astc_6x6",
                    "quality": "exhaustive"
                },
                {
                    "name": "webp",
                    "quality": 80
                }
            ]
        },
        "android": {
            "formats": [
                {
                    "name": "astc_6x6",
                    "quality": "exhaustive"
                }
            ]
        },
        "ios": {
            "formats": [
                {
                    "name": "astc_6x6",
                    "quality": "exhaustive"
                }
            ]
        },
        "web": {
            "formats": [
                {
                    "name": "astc_8x8",
                    "quality": "exhaustive"
                },
                {
                    "name": "webp",
                    "quality": 80
                }
            ]
        },
        "minigame": {
            "formats": [
                {
                    "name": "astc_8x8",
                    "quality": "exhaustive"
                },
                {
                    "name": "webp",
                    "quality": 80
                },
                {
                  "name": "png",
                  "quality": 80
                }
            ]
        }
    }

    const platformSettingsJPG = {
        "default": {
            "formats": [
                {
                    "name": "astc_6x6",
                    "quality": "exhaustive"
                },
                {
                    "name": "webp",
                    "quality": 80
                }
            ]
        },
        "android": {
            "formats": [
                {
                    "name": "astc_6x6",
                    "quality": "exhaustive"
                }
            ]
        },
        "ios": {
            "formats": [
                {
                    "name": "astc_6x6",
                    "quality": "exhaustive"
                }
            ]
        },
        "web": {
            "formats": [
                {
                    "name": "astc_8x8",
                    "quality": "exhaustive"
                },
                {
                    "name": "webp",
                    "quality": 80
                }
            ]
        },
        "minigame": {
            "formats": [
                {
                    "name": "astc_8x8",
                    "quality": "exhaustive"
                },
                {
                    "name": "webp",
                    "quality": 80
                },
                {
                  "name": "jpg",
                  "quality": 80
                }
            ]
        }
    }

    let num = 0;
    function checkImgDir(dir) {
        if (fs.existsSync(dir))
        {
            let dirList = [];
            let pngList = [];
            let jpgList = [];
            let hasPac = false;
            let fileList = fs.readdirSync(dir);
            for (let file of fileList)
            {
                let filePath = path.join(dir, file);
                // 判断是文件还是目录
                let stats = fs.statSync(filePath);
                if (stats.isDirectory())
                {
                    dirList.push(filePath);
                } else if (stats.isFile())
                {
                    if (file.endsWith(".pac.meta"))
                    {
                        hasPac = true;
                        writeFileSync(filePath, "pac");
                        break;
                    } else if (file.endsWith(".png.meta"))
                    {
                        pngList.push(filePath);
                    } else if (file.endsWith(".jpg.meta"))
                    {
                        jpgList.push(filePath);
                    }
                }
            }
            if (!hasPac)
            {
                for (let i in dirList)
                {
                    checkImgDir(dirList[i]);
                }
                for (let filePath of pngList)
                {
                    writeFileSync(filePath, "png");
                }
                for (let filePath of jpgList)
                {
                    writeFileSync(filePath, "jpg");
                }
            }
        }
    }

    function writeFileSync(filePath, type) {
        num++;
        let content = fs.readFileSync(filePath, "utf-8");
        let obj = JSON.parse(content);
        obj['platformSettings'] = platformSettings;
        if (type == "pac")
        {
            obj['filterUnused'] = false;
        }
        if(type == "jpg")
        {
            obj['platformSettings'] = platformSettingsJPG;
        }
        fs.writeFileSync(filePath, JSON.stringify(obj, null, 2), "utf-8");
    }


    var time = Date.now();
    console.log('---开始查询---');
    checkImgDir(projectPath);
    console.log('---修改结束,耗时:' + (Date.now() - time) + "ms" + " 修改文件数:" + num);


     

  • 相关阅读:
    神经网络全连接层的作用,各种神经网络的优缺点
    C# 异步编程,有时候我们需要拿到异步任务计算体完成计算的数据,请使用task.AsyncState去获取。
    11 个需要避免的 React 错误用法
    技术层面上快速突破Servlet,带你快速上手HttpServlet,HttpServletRequest,HttpServletResponse
    React-Router link方式跳转
    代码随想录算法训练营Day25|leetcode216 组合总和III,leetcode17 电话号码的字母组合
    多源最短路径的原理及C++实现
    基于YOLOv8的车辆跟踪与车速计算应用
    Windows bat脚本启动jar包(亲测有效),,监控端口,如果没有,就启动jar包,自动退出cmd框
    LeetCode 每日一题 2023/11/13-2023/11/19
  • 原文地址:https://blog.csdn.net/baidu_34873973/article/details/136433388