之前续写抖音开发者接入字节小游戏的缓存一下,现在说一下在 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);

相关推荐
只会写bug的靓仔10 小时前
mac 设置飞书默认浏览器(解决系统设置默认浏览器无效)
macos·飞书
尽兴-1 天前
Mac「brew」快速安装Redis
数据库·redis·macos·brew
尽兴-1 天前
Mac 「brew」快速安装MySQL
mysql·macos·adb·brew
明似水1 天前
macOS 更新后找不到钥匙串访问工具的解决方案
macos
一牛1 天前
Appkit: 菜单是如何工作的
macos·ios·objective-c
tkevinjd1 天前
文件操作、流对象示例
macos·objective-c·cocoa
Dachui_11222 天前
MacOS上如何运行内网穿透详细教程
macos
Bruce_Liuxiaowei2 天前
使用Python脚本在Mac上彻底清除Chrome浏览历史:开发实战与隐私保护指南
chrome·python·macos
iFlyCai3 天前
对Mac文字双击或三击鼠标左键没有任何反应
macos·计算机外设
請你喝杯Java3 天前
Mac上Cursor无法安装插件解决方法
macos·cursor·vsode