Nodejs 命令参数-h或者--help这种风格是从哪里继承下来的?

Nodejs 命令参数-h或者–help这种风格是从哪里继承下来的?

发现命令缩写都是“-” + 一个字符,全称就是“–” + 全名。这种风格最早出现在那种语言里的?

4 回复

Node.js 命令参数 -h 或者 --help 这种风格是从哪里继承下来的?

简介

在 Node.js 中,命令行参数 -h--help 是一种常见的用法,用于显示命令的帮助信息。这种风格的参数命名方式(即短选项 - 后跟单个字符,长选项 -- 后跟完整单词)实际上是从 Unix 和类 Unix 操作系统中继承来的。

示例代码

假设我们有一个简单的 Node.js 脚本,用于处理命令行参数:

// example.js
const minimist = require('minimist');

const args = minimist(process.argv.slice(2));

if (args.h || args.help) {
    console.log(`Usage: node example.js [options]
Options:
  -h, --help       Display help information.
  -v, --version    Display version information.`);
} else {
    console.log("No options provided.");
}

在这个例子中,我们使用了 minimist 库来解析命令行参数。通过检查 args.hargs.help 的值,我们可以判断用户是否请求了帮助信息,并相应地输出帮助信息。

解释

  • 短选项:例如 -h,这是从 Unix 系统中继承下来的。Unix 系统中的许多命令都支持这种形式的短选项,例如 ls -l

  • 长选项:例如 --help,这也是从 Unix 系统中继承下来的。长选项通常用于更详细的描述,例如 git commit --message "Initial commit"

这种命名风格是为了提高命令行工具的可读性和易用性。短选项适用于快速输入,而长选项则提供更清晰的说明,使得命令更容易理解。

总结来说,Node.js 中 -h--help 的命名风格是来自 Unix 和类 Unix 操作系统的传统。


这应该是一种通用约定吧 linux下命令也是这样的

要按这样解释还真说不上… 77 年出来的 Unix Shell 大概就有了 没搜到对应的, 相关的楼主可以看下 http://www.ibm.com/developerworks/linux/library/l-linux-shells/ http://www.ceri.memphis.edu/computer/docs/unix/bshell.htm

Node.js 中 -h--help 参数的风格是从 Unix 和类 Unix 系统(如 Linux 和 macOS)中的命令行工具中继承下来的。这些系统中的许多命令都支持使用短参数(如 -h)和长参数(如 --help),这是一种标准约定,使得用户能够快速地访问帮助信息。

例如,在 Unix 系统中,你可以运行 ls -h 来获取文件大小的易读格式,或者 man --help 来查看 man 命令的帮助信息。Node.js 也采用了类似的约定来处理命令行参数。

以下是使用 Node.js 实现类似功能的一个简单示例:

const minimist = require('minimist');

const args = minimist(process.argv.slice(2));

if (args.h || args.help) {
  console.log("这是一个示例程序,用于演示如何使用 --help 参数。");
  process.exit();
}

console.log("正常程序逻辑。");

在上述代码中,我们使用了 minimist 库来解析命令行参数。如果用户传递了 -h--help 参数,则会输出帮助信息并退出程序。否则,程序将继续执行其主要逻辑。

解释

  • Unix 风格参数:在 Unix 和类 Unix 系统中,- 通常用于表示单个字符的选项,而 -- 用于表示较长的选项名称。
  • minimist 库minimist 是一个简单的库,用于解析命令行参数,它能够处理 -h--help 这样的选项。
  • 条件检查:通过检查 args.hargs.help 是否存在,可以判断用户是否请求了帮助信息。

这种方法使得 Node.js 程序与传统的 Unix 工具保持一致,提高了用户的熟悉度和易用性。

回到顶部