
文档教程知识库【免费下载链接】tldrCollaborative cheatsheets for console commands .项目地址https://gitcode.com/GitHub_Trending/tl/tldr点击查看免费下载本篇文章以 tldr 仓库中的 pages.bg/common/npx.md 保加利亚语别名页为核心系统讲解 tldr 中别名页alias page的文档结构、多语言模板机制以及别名背后的真实命令npm exec的用法读完你既能理解 tldr 为什么用一页替代一页地维护npx这类别名也能直接上手用npx/npm exec执行任意 npm 包中的可执行文件还能掌握set-alias-page.py脚本批量生成与同步别名页的原理。一、这是一张什么样的文档npx别名页全貌在 tldr 仓库中npx并不是一份独立的、长篇的命令速查表而是一个别名页alias page。它存在的唯一目的是告诉读者npx就是npm exec的另一个名字然后把读者引导到原命令的完整文档。位于 pages.bg/common/npx.md 的保加利亚语版本完整内容如下# npx Тази команда е псевдоним на npm exec. - Виж документацията за оригиналната команда: tldr npm exec逐行解读行内容语义# npx页面标题与命令名严格一致由 set-page-title.py 校验 Тази команда е псевдоним на \npm exec.| 概述行以开头 | 说明这是npm exec 的别名- Виж документацията за оригиналната команда:示例描述查看原命令的文档tldr npm exec示例命令告诉用户用tldr npm exec查看真正详尽的文档对应地pages/common/npx.md 的英文原版为# npx This command is an alias of npm exec. - View documentation for the original command: tldr npm exec可以看到保加利亚语版本与英文版在结构上一一对应这正是 tldr 对翻译页面的硬性要求结构必须与英文原页完全一致详见后文 PR 检查机制。二、别名页背后的标准模板多语言骨架如何定义tldr 并没有为每一种语言分别发明别名页格式而是由一份权威模板统一约束 contributing-guides/translation-templates/alias-pages.md。该文件中收录了 en、ar、bg、bn、bs、ca、cs、da、de、el、es、fa、fi、fr、hi、id、it、ja、ko、lo、ml、nb、ne、nl、no、pl、pt_BR、pt_PT、ro、ru、si、sr、sv、sw、ta、th、tr、uk、uz、zh、zh_TW 共 40 余种语言的别名页模板。以英文模板为基准其标准格式为# example This command is an alias of example. - View documentation for the original command: tldr example保加利亚语bg模板对应为# example Тази команда е псевдоним на example. - Виж документацията за оригиналната команда: tldr example对比 pages.bg/common/npx.md 可以看出npx页就是把模板中的三个example占位符分别替换为——标题npx、原命令npm exec、文档命令npm exec。整个别名页刻意保持极简不承载任何示例命令因为所有细节都归原命令页负责避免同一命令的文档在两处重复、漂移。仓库中还有大量同类别名页例如 pages.bg/common/arch.md# arch Тази команда е псевдоним на uname --machine. - Виж документацията за оригиналната команда: tldr uname它把arch指向uname --machine但文档命令指向的是tldr uname注意文档命令与原命令可以不同指向信息量更大的页面。这也是别名页的三个要素——标题、原命令、文档命令彼此独立的原因。三、原命令npm execnpx背后的真实能力理解了npx是别名下一步就是看懂它指向的原命令。tldr 为npm exec维护了完整的速查页 pages/common/npm-exec.md其核心定义是 Execute binaries fromnpmpackages执行 npm 包中的可执行文件完整内容如下# npm exec Execute binaries from npm packages. More information: https://docs.npmjs.com/cli/npm-exec/. - Execute the command from a local or remote npm package: npm {{[x|exec]}} {{command}} {{argument1 argument2 ...}} - Specify the package explicitly (useful if multiple commands with the same name exist): npm {{[x|exec]}} --package {{package}} {{command}} - Run a command if it exists in the current path or in node_modules/.bin: npm {{[x|exec]}} --no-install {{command}} {{argument1 argument2 ...}} - Execute a specific command, suppressing any output from npm itself: npm {{[x|exec]}} --quiet {{command}} {{argument1 argument2 ...}} - Display help: npm {{[x|exec]}} --help这里 tldr 使用{{[x|exec]}}的语法标注x与exec两种写法等价——这正是npx与npm exec之间别名关系的官方体现。围绕这条主线npm exec的核心参数可以归纳为参数作用说明{{command}}要执行的命令来自本地或远程 npm 包argument1 argument2 ...传给命令的参数直接透传给目标可执行程序--package {{package}}显式指定包同名命令存在多个来源时消除歧义--no-install禁止自动安装仅当命令已存在于$PATH或node_modules/.bin时可用避免触发网络下载--quiet静默模式抑制 npm 自身的输出日志只保留命令真实输出--help显示帮助查看npm exec的全部选项实际使用示例由于npx与npm exec完全等价以下用npx演示最典型的三类场景临时执行远端包的命令最常用无需提前npm installnpx create-react-app my-app等价写法npm exec create-react-app my-app。显式指定包来源本地存在多个同名二进制时npx --package eslint eslint .仅运行本地已安装的命令不联网安装离线环境或 CI 中npx --no-install prettier --check .如果命令既不在$PATH也不在node_modules/.bin中--no-install会直接报错这正好用于验证依赖是否真的装齐了。四、别名页是怎么被创建和同步的set-alias-page.py源码解读tldr 提供了专门的维护脚本 scripts/set-alias-page.py它承担两项任务交互式创建单个别名页以及把英文别名页批量同步到所有已翻译语言。4.1 占位符替换的核心逻辑脚本从模板文件读取各语言模板后通过generate_alias_page_content()完成替换见 scripts/set-alias-page.pytemplate_command example result template_content.replace(template_command, page_content.title, 1) result result.replace(template_command, page_content.original_command, 1) result result.replace(template_command, page_content.documentation_command)即按顺序把模板中的第一个example换成页面标题、第二个换成原命令、剩余的全部换成文档命令。模板读取则由 scripts/_common.py 中的get_templates()完成它解析alias-pages.md中每个### 语言代码块下的 markdown 模板最终得到一个{语言: 模板字符串}映射。4.2 别名页的判定与批量同步get_alias_command_in_page()见 scripts/set-alias-page.py负责判断某个页面是否真的是别名页它要求页面恰好包含两行命令行一行是 ... alias of ...概述一行是tldr ...命令且存在标题同时提取出原命令与文档命令。get_english_alias_pages()见 scripts/set-alias-page.py遍历pages/common/、pages/linux/等平台目录找出所有符合判定条件的英文别名页main()中的--sync分支见 scripts/set-alias-page.py随后把这些别名页同步到每个翻译目录。因此像npx.md这样的别名页一旦英文版发生变化运行python3 scripts/set-alias-page.py -S即可自动更新所有语言的别名页只想更新保加利亚语时使用python3 scripts/set-alias-page.py -S -l bg新增单个别名页则用交互式向导以npx为例python3 scripts/set-alias-page.py -p common/npx脚本会依次询问页面标题、原命令、文档命令并在确认后按照 alias-pages.md 中的 bg 模板生成# npx、 Тази команда е псевдоним на ...、tldr ...三要素。五、质量保障别名页如何通过自动化检查别名页看似简单却受到仓库多道自动化检查的约束结构校验npx这类别名页的概述行与命令行必须严格匹配模板。set-alias-page.py在同步时会对现有页面做剥离化比较——把标题、反引号内容全部归一化后与模板比对见 scripts/set-alias-page.py非标准别名页会被判定为不是别名页并忽略。PR 同步检查CI 中运行的 scripts/check-pr.sh 会对每个改动页面执行check_outdated_page()见 scripts/check-pr.sh翻译页的命令数量、命令内容剥离占位符后与概述行数量都必须与英文页一致否则报 is outdated。这保证了 pages.bg/common/npx.md 这样的翻译页不会落后于英文原页。语言相关 lint 规则翻译页由tldr-lint校验scripts/test-tldr-lint.sh 针对不同语言配置了不同的忽略规则如阿拉伯语、日语等需要额外检查排版规则而英文页全量检查。此外 CONTRIBUTING.md 明确要求新页面提交遵循规范命名如docker-container-rm: add alias page并指向 alias-pages.md 作为别名页的唯一模板来源。六、从一页别名看 tldr 的文档设计哲学npx别名页是一个小而美的案例集中体现了 tldr 的三条核心设计原则单一信息源别名本身不重复原命令的任何示例全部细节收敛到npm exec页面避免同一命令多份文档漂移、失同步。可机械校验别名页的极简结构标题 概述行 一个tldr引导命令使得脚本可以精确识别、批量生成、逐语言同步CI 也能逐字段比对。多语言平等保加利亚语等 40 余种语言共享同一套模板骨架翻译只需要替换文本结构永不走样。结语从 pages.bg/common/npx.md 出发本文完整梳理了 tldr 别名页的文档结构、别名页多语言模板、npx指向的原命令 npm exec 速查页 及其参数实战、set-alias-page.py 的生成同步原理以及 check-pr.sh 的自动化质量保障。当你在终端里敲下tldr npx看到Тази команда е псевдоним наnpm exec或英文版 This command is an alias ofnpm exec 时就知道这不是一份偷懒的文档而是整个 tldr 体系中保证别名命令文档准确、一致、可维护的关键一环。赞分享文档教程知识库【免费下载链接】tldrCollaborative cheatsheets for console commands .项目地址https://gitcode.com/GitHub_Trending/tl/tldr点击查看免费下载相关推荐tldr 中的 uname26 别名页解读 setarch uname26 命令别名与 tldr 别名文档机制tldr 中的 uname26 别名页解读 setarch uname26 命令别名与 tldr 别名文档机制 导读 uname26 是 Linux 下 se文档教程知识库tldr 仓库中的 fdfind 别名页命令别名文档机制与 fd 命令速查tldr 仓库中的 fdfind 别名页命令别名文档机制与 fd 命令速查 导读 本文围绕 fdfind.md https://link.gitcode.co文档教程知识库tldr 别名页解析从保加利亚语 chdir 页面读懂 tldr 的别名命令文档机制tldr 别名页解析从保加利亚语 chdir 页面读懂 tldr 的别名命令文档机制 chdir 是 cd 命令的别名在 tldr 仓库中通过一种被称为别文档教程知识库创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考