gzip-size-cli 项目教程

gzip-size-cli 项目教程

gzip-size-cliGet the gzipped size of a file or stdin项目地址:https://gitcode.com/gh_mirrors/gz/gzip-size-cli

1. 项目的目录结构及介绍

gzip-size-cli/
├── cli.js
├── package.json
└── README.md
  • cli.js: 项目的启动文件,用于执行 gzip 压缩大小检查的命令行工具。
  • package.json: 项目的配置文件,包含项目的基本信息、依赖、脚本等。
  • README.md: 项目的说明文档,提供项目的基本使用说明和介绍。

2. 项目的启动文件介绍

cli.js 是项目的启动文件,它是一个命令行工具,用于获取文件或标准输入的 gzip 压缩大小。以下是 cli.js 的基本结构和功能介绍:

#!/usr/bin/env node
import chalk from 'chalk';
import getStdin from 'get-stdin';
import gzipSize from 'gzip-size';
import meow from 'meow';
import prettyBytes from 'pretty-bytes';

const cli = meow(`
	Usage
	  $ gzip-size <file>
	  $ cat <file> | gzip-size

	Options
	  --pretty  Pretty print the size (default: true)

	Examples
	  $ gzip-size app.js
	  293 B
	  $ cat app.js | gzip-size
	  293 B
`, {
	importMeta: import.meta,
	flags: {
		pretty: {
			type: 'boolean',
			default: true
		}
	}
});

(async () => {
	let input;

	if (process.stdin.isTTY) {
		input = cli.input[0];
	} else {
		input = await getStdin();
	}

	const size = await gzipSize(input);

	if (cli.flags.pretty) {
		console.log(prettyBytes(size));
	} else {
		console.log(size);
	}
})();
  • #!/usr/bin/env node: 指定使用 Node.js 运行该脚本。
  • chalk, getStdin, gzipSize, meow, prettyBytes: 导入所需的依赖模块。
  • meow: 用于解析命令行参数和选项。
  • gzipSize: 计算 gzip 压缩大小。
  • prettyBytes: 将字节数转换为更易读的格式。

3. 项目的配置文件介绍

package.json 是项目的配置文件,包含项目的基本信息、依赖、脚本等。以下是 package.json 的基本内容和功能介绍:

{
  "name": "gzip-size-cli",
  "version": "5.1.0",
  "description": "Get the gzipped size of a file or stdin",
  "license": "MIT",
  "repository": "sindresorhus/gzip-size-cli",
  "funding": "https://github.com/sponsors/sindresorhus",
  "author": {
    "name": "Sindre Sorhus",
    "email": "sindresorhus@gmail.com",
    "url": "https://sindresorhus.com"
  },
  "type": "module",
  "bin": {
    "gzip-size": "cli.js"
  },
  "engines": {
    "node": ">=12"
  },
  "scripts": {
    "test": "xo && ava"
  },
  "files": [
    "cli.js"
  ],
  "keywords": [
    "cli-app",
    "cli",
    "zlib",
    "gzip",
    "compressed",
    "size",
    "file",
    "stdin"
  ],
  "dependencies": {
    "chalk": "^4.1.2",
    "get-stdin": "^9.0.0",
    "gzip-size": "^7.0.0",
    "meow": "^10.1.2",
    "pretty-bytes": "^5.6.0"
  },
  "devDependencies": {
    "ava": "^3.15.0",
    "execa": "^6.0.0",
    "xo": "^0.46.

gzip-size-cliGet the gzipped size of a file or stdin项目地址:https://gitcode.com/gh_mirrors/gz/gzip-size-cli

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

舒莲菲Peace

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值