command_name

command_name

【免费下载链接】tldr 📚 Collaborative cheatsheets for console commands 【免费下载链接】tldr 项目地址: https://gitcode.com/GitHub_Trending/tl/tldr

简短、精炼的命令描述。 最好一行;必要时可两行。 更多信息:https://example.com/command_name/help/page.

  • 命令描述1:

command_name options

  • 命令描述2:

command_name options

...


### 页面标题规范

页面标题使用一级Markdown标题(#),必须与命令名称完全匹配。文件名必须为小写,而页面标题可以保持原始大小写格式。

![mermaid](https://kroki.io/mermaid/svg/eNpLy8kvT85ILCpRCHHhUgACx-inE_c-2b3k5cKtL-cuetox--nuXbEKurp2Ck7VTzuWPJu2FiL_fOPup_O6a8F6nEDyNU937HixvAUiW6PgHP1k7_7nU1Y8W9D-tL3t2YqFz-buj0VW3bH66YRemGoXqGqIKKbqgPzy1KLgjNScHJgOV6gOhMzzzp1P180COaFjJkQvmHAGO94t-tm09ie7twFNt1JIzs_NTcxL0ctNgahzAStxR1aSmJOZWAxX4ApW4IGsIDOvLD87Vbc8NakotbA0tbgErhhMuIF1eEYDvf9y0QwrBWWYpRA17mBpLyRpsIUQSQ-wpDeSpCfEsvDUpCCIZbEAcKjABw)

### 描述部分详解

描述部分使用引用块格式(>),包含三个关键要素:

1. **简短描述**:用一句话概括命令的主要功能
2. **补充说明**:必要时提供额外信息
3. **参考链接**:指向官方文档或更多信息的链接

| 组成部分 | 语法要求 | 示例 |
|---------|---------|------|
| 主要描述 | 简短精炼,使用祈使语气 | `> Archiving utility.` |
| 补充说明 | 可选,提供额外上下文 | `> Often combined with a compression method.` |
| 参考链接 | 必须包含,使用标准格式 | `> More information: <https://example.com>.` |

### 示例部分规范

示例部分使用无序列表和代码块的组合,每个示例包含描述和对应的命令:

```markdown
- 创建归档文件并写入目标文件:

`tar cf {{path/to/target.tar}} {{path/to/file1 path/to/file2 ...}}`
占位符语法

tldr页面使用双花括号 {{}} 作为占位符,表示需要用户替换的部分:

mermaid

特殊页面类型

别名页面

对于命令别名,使用专门的别名页面模板:

# alias_name

> This command is an alias of `original_command`.

- View documentation for the original command:

`tldr original_command`
PowerShell命令页面

PowerShell命令有特殊的命名约定:

元素规范要求示例
文件名必须小写invoke-webrequest.md
页面标题保持原始大小写# Invoke-WebRequest
命令示例保持原始大小写Invoke-WebRequest -Uri
消歧页面

当多个命令同名时,使用消歧页面:

# command_name

> `command_name` can refer to multiple commands with the same name.

- View documentation for command_type1:

`tldr command_name.type1`

- View documentation for command_type2:

`tldr command_name.type2`

语法验证和格式化工具

tldr项目提供了专门的lint工具来验证页面格式:

# 安装tldr-lint
npm install --global tldr-lint

# 验证单个页面
tldr-lint path/to/tldr_page.md

# 验证整个目录
tldr-lint pages/common/

最佳实践指南

  1. 命令示例数量:每个页面最多包含8个命令示例
  2. 语言风格:所有描述使用祈使语气
  3. 占位符使用:对可能造成破坏性操作的命令必须使用占位符
  4. 平台适配:针对不同平台提供相应的命令变体
  5. 参考完整性:必须包含官方文档链接

通过遵循这些Markdown模板规范和语法规则,贡献者可以创建出格式统一、内容准确、易于理解的tldr页面,为用户提供最佳的命令行工具使用体验。

占位符使用规范和最佳实践示例

在tldr-pages项目中,占位符是Markdown格式规范的核心组成部分,它们为用户提供了清晰、可替换的命令参数示例。占位符使用双花括号{{}}包裹,旨在表示命令中需要用户根据实际情况替换的部分。

占位符基本语法规范

tldr-pages采用统一的占位符语法标准:

# 基本格式
`command {{placeholder}}`

# 多参数示例  
`command {{param1}} {{param2}} {{param3}}`

# 可选参数格式
`command {{[-s|--short]}} {{value}}`

占位符类型分类

根据参数的不同性质,tldr-pages定义了多种占位符类型:

占位符类型语法格式使用场景示例
路径参数{{path/to/file}}文件或目录路径ls {{path/to/directory}}
多文件参数{{file1 file2 ...}}多个文件参数cp {{source.txt dest.txt}}
数值参数{{number}}数字值参数sleep {{5}}
字符串参数{{text}}文本字符串echo {{"Hello World"}}
选项参数{{[-o|--option]}}命令行选项git commit {{[-m|--message]}}
设备参数{{/dev/sdXY}}块设备名称dd {{/dev/sdX}} {{/dev/sdY}}

最佳实践示例分析

1. 文件路径占位符
# 单文件操作
`cat {{path/to/file.txt}}`

# 目录操作  
`ls {{path/to/directory}}`

# 多文件操作
`cp {{source_file.txt destination_file.txt}}`
2. 数值参数占位符
# 时间参数
`sleep {{seconds}}`

# 端口参数
`ssh {{user}}@{{host}} -p {{port}}`

# 进程ID
`kill {{process_id}}`
3. 选项参数占位符
# 短选项和长选项
`git commit {{[-m|--message]}} {{"commit message"}}`

# 必需选项
`tar {{[-c|--create]}} {{[-f|--file]}} {{archive.tar}} {{files}}`

# 可选选项
`grep {{[-i|--ignore-case]}} {{pattern}} {{file}}`
4. 复杂参数组合
# 混合参数类型
`scp {{[-P|--port]}} {{port}} {{user}}@{{host}}:{{remote_path}} {{local_path}}`

# 正则表达式参数
`grep "{{.*pattern.*}}" {{file}}`

# 格式化字符串
`printf "{{%s\n}}" {{"text"}}`

占位符命名规范

为确保一致性和可读性,占位符命名遵循以下规则:

mermaid

特殊场景处理

1. 危险操作占位符

对于可能造成数据丢失的危险操作,必须使用占位符:

# 危险:直接指定设备
`dd if=/dev/sda of=/dev/sdb`

# 安全:使用占位符
`dd if={{/dev/sdX}} of={{/dev/sdY}}`
2. 转义字符处理

当占位符内容包含特殊字符时:

# 包含花括号的文本
`echo "{{text with {braces}}}"`

# 包含管道符号
`grep "{{pattern\|alternative}}"`
3. 多平台兼容性

考虑不同平台的路径格式:

# Unix路径
`ls {{/home/user/file.txt}}`

# Windows路径
`dir {{C:\Users\user\file.txt}}`

常见错误与修正

以下表格展示了常见的占位符使用错误及其正确写法:

错误示例正确写法问题描述
command path/to/filecommand {{path/to/file}}缺少占位符标记
command {{file}} {{file}}command {{file1}} {{file2}}重复占位符名称
command {{-o}} valuecommand {{[-o|--option]}} value选项格式不规范
command /dev/sda1command {{/dev/sdXY}}使用具体设备名

验证与测试

使用tldr-lint工具验证占位符规范:

# 安装lint工具
npm install -g tldr-lint

# 验证单个文件
tldr-lint pages/common/command.md

# 验证所有文件
tldr-lint pages/

通过遵循这些占位符使用规范和最佳实践,可以确保tldr-pages的命令示例既清晰易懂又安全可靠,为用户提供高质量的命令行使用指导。

子命令页面创建和引用机制解析

在tldr-pages项目中,子命令页面的创建和引用机制是一个精心设计的系统,它确保了复杂命令行工具(如Git、Docker等)能够以结构化和用户友好的方式呈现。这一机制不仅简化了用户的学习曲线,还为贡献者提供了清晰的贡献指南。

子命令页面的命名规范

tldr-pages采用统一的命名约定来处理子命令页面。当命令行工具使用子命令结构时,每个子命令都需要创建独立的Markdown文件,命名格式为:

主命令-子命令.md

例如,Git的子命令页面命名如下:

mermaid

这种命名策略的优势在于:

  1. 清晰的层级关系:文件名直观地反映了命令的层级结构
  2. 易于检索:用户和贡献者都能快速找到特定子命令的文档
  3. 自动化处理:tldr客户端能够自动解析这种命名模式

子命令页面的基本结构

每个子命令页面都遵循标准的tldr格式,但专注于特定子命令的功能。以git-commit.md为例:

# git commit

> Record changes to the repository.
> More information: <https://git-scm.com/docs/git-commit>.

- Commit staged changes with a message:

`git commit -m "{{message}}"`

- Commit staged changes and sign with GPG key:

`git commit -S -m "{{message}}"`

- Commit all changes (including unstaged) with a message:

`git commit -a -m "{{message}}"`

- Update the last commit by adding staged changes and changing the message:

`git commit --amend`

- Commit only specific (already staged) files:

`git commit {{path/to/file1}} {{path/to/file2}} -m "{{message}}"`

主命令页面的引用机制

主命令页面(如git.md)承担着重要的导航功能,它通过多种方式引用子命令页面:

1. 描述性引用

在主命令的描述部分明确指出哪些子命令有独立的文档:

# git

> Distributed version control system.
> Some subcommands such as `commit`, `add`, `branch`, `switch`, `push`, etc. have their own usage documentation.
2. 示例式引用

通过具体的tldr命令示例引导用户查看子命令文档:

- View documentation for creating commits:

`tldr git-commit`

- View documentation for managing branches:

`tldr git-branch`
3. See also引用

使用标准的"See also"模板来关联相关命令:

See also: `git-add`, `git-commit`, `git-push`.

引用机制的技术实现

tldr-pages的引用系统基于简单的Markdown语法,但背后有着精心的设计考虑:

引用类型语法格式使用场景优势
描述性引用Some subcommands such as \command`...`主命令页面顶部描述提供整体概览
示例式引用tldr command-subcommand具体操作示例直接可执行的指导
See also引用See also: \command1`, `command2`.`页面底部关联建立命令网络

子命令页面的创建流程

创建新的子命令页面需要遵循特定的贡献流程:

mermaid

最佳实践和注意事项

在创建和引用子命令页面时,需要注意以下最佳实践:

  1. 一致性:确保所有子命令页面的格式和风格保持一致
  2. 完整性:主命令页面应该引用所有可用的子命令页面
  3. 准确性:引用链接必须指向实际存在的页面
  4. 简洁性:避免过度引用,只引用最相关和常用的子命令

实际应用案例

让我们通过一个具体的例子来说明这个机制的实际应用。假设我们要为docker container命令创建子命令页面:

# docker-container

> Manage Docker containers.
> Some subcommands such as `run`, `start`, `stop`, `rm` have their own usage documentation.
> More information: <https://docs.docker.com/engine/reference/commandline/container/>.

- View documentation for running containers:

`tldr docker-container-run`

- View documentation for removing containers:

`tldr docker-container-rm`

- List all containers:

`docker container ls --all`

- Inspect a specific container:

`docker container inspect {{container_name}}`

相应的子命令页面docker-container-run.md

# docker container run

> Run a command in a new Docker container.
> More information: <https://docs.docker.com/engine/reference/commandline/run/>.

- Run a command in a new container and remove it after exit:

`docker container run --rm {{image_name}} {{command}}`

- Run a container in detached mode and publish ports:

`docker container run -d -p {{host_port}}:{{container_port}} {{image_name}}`

- Run a container with environment variables:

`docker container run -e "{{variable}}={{value}}" {{image_name}}`

- Run a container with mounted volumes:

`docker container run -v {{host_path}}:{{container_path}} {{image_name}}`

这种结构化的方法确保了用户能够轻松地在相关命令之间导航,同时保持了每个页面的专注性和简洁性。

贡献流程和代码审查标准说明

tldr-pages 项目采用严谨而友好的贡献流程,确保每个提交都经过充分审查,同时保持社区的高效协作。本节将详细介绍从提交到合并的完整流程以及代码审查的具体标准。

贡献流程概述

整个贡献流程遵循清晰的步骤,从本地测试到最终合并,每个环节都有明确的要求:

mermaid

本地测试与验证

在提交PR之前,贡献者必须使用 tldr-lint 工具进行本地语法检查:

【免费下载链接】tldr 📚 Collaborative cheatsheets for console commands 【免费下载链接】tldr 项目地址: https://gitcode.com/GitHub_Trending/tl/tldr

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

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

抵扣说明:

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

余额充值