代码拉取完成,页面将自动刷新
import fs from 'fs-extra'
import { join, parse } from 'path'
import childProcess from 'child_process'
async function clean(rootDir: string) {
const projectFilePath = join.bind(null, rootDir)
const pkgFilePath = join.bind(null, projectFilePath('node_modules'))
// 需要保留的文件列表
const reservedFiles = [
pkgFilePath('ajv-i18n/localize/es'),
pkgFilePath('svgo/.svgo.yml'),
pkgFilePath('.bin'),
].map((filePath) => {
const { dir, base } = parse(filePath)
return {
from: filePath,
to: join(dir, 'r_' + base.replace(/\./g, '')),
}
})
await Promise.all(
reservedFiles.map(async ({ from, to }) => {
await fs.rename(from, to).catch(() => {})
}),
)
childProcess.execSync(
`
cd ${rootDir}
shopt -s globstar
rm -rf \\
**/*.{map,lock,log,md,yml,yaml,ts,tsx,vue,txt} \\
**/.[!.]* \\
**/__*__ \\
**/{tsconfig.json,package-lock.json,Makefile,CHANGELOG} \\
**/*.{test,spec,es,esm}.* \\
**/{test,tests,example,examples,doc,docs,coverage,demo,umd,es,esm}/
`,
{ shell: '/bin/bash' },
)
await Promise.all(
reservedFiles.map(async ({ from, to }) => {
await fs.rename(to, from).catch(() => {})
}),
)
}
clean(process.argv[2])
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。