diff --git a/.vuepress/configs/sidebar/zh-CN.ts b/.vuepress/configs/sidebar/zh-CN.ts index 8db194312f4..851b6445b94 100644 --- a/.vuepress/configs/sidebar/zh-CN.ts +++ b/.vuepress/configs/sidebar/zh-CN.ts @@ -64,6 +64,7 @@ export const sidebarZhCN: SidebarConfig = { '/zh-CN/book/overlays.md', '/zh-CN/book/sorting.md', '/zh-CN/book/testing.md', + '/zh-CN/book/debugging.md', '/zh-CN/book/style_guide.md', ], }, @@ -93,6 +94,7 @@ export const sidebarZhCN: SidebarConfig = { children: [ '/zh-CN/book/coming_from_bash.md', '/zh-CN/book/coming_from_cmd.md', + '/zh-CN/book/coming_from_powershell.md', '/zh-CN/book/nushell_map.md', '/zh-CN/book/nushell_map_imperative.md', '/zh-CN/book/nushell_map_functional.md', @@ -117,6 +119,8 @@ export const sidebarZhCN: SidebarConfig = { '/zh-CN/book/parallelism.md', '/zh-CN/book/plugins.md', '/zh-CN/book/explore.md', + '/zh-CN/book/tui.md', + '/zh-CN/book/mcp.md', ], }, ], diff --git a/tools/i18n-meta.json b/tools/i18n-meta.json index 5f693d46cda..ff2ac9abcf5 100644 --- a/tools/i18n-meta.json +++ b/tools/i18n-meta.json @@ -116,6 +116,19 @@ "ru": "-", "ko": "-" }, + { + "name": "coming_from_powershell.md", + "en": "Completed", + "zh-CN": "e9317a86@passionworkeer", + "fr": "-", + "de": "-", + "tr": "-", + "ja": "-", + "es": "-", + "pt-BR": "-", + "ru": "-", + "ko": "-" + }, { "name": "coming_to_nu.md", "en": "In progress", @@ -207,6 +220,19 @@ "ru": "-", "ko": "-" }, + { + "name": "debugging.md", + "en": "Completed", + "zh-CN": "ff1c4786@passionworkeer", + "fr": "-", + "de": "-", + "tr": "-", + "ja": "-", + "es": "-", + "pt-BR": "-", + "ru": "-", + "ko": "-" + }, { "name": "dataframes.md", "en": "Completed", @@ -376,6 +402,19 @@ "ru": "-", "ko": "-" }, + { + "name": "mcp.md", + "en": "Completed", + "zh-CN": "ff1c4786@passionworkeer", + "fr": "-", + "de": "-", + "tr": "-", + "ja": "-", + "es": "-", + "pt-BR": "-", + "ru": "-", + "ko": "-" + }, { "name": "metadata.md", "en": "Completed", @@ -701,6 +740,19 @@ "ru": "-", "ko": "-" }, + { + "name": "tui.md", + "en": "Completed", + "zh-CN": "ff1c4786@passionworkeer", + "fr": "-", + "de": "-", + "tr": "-", + "ja": "-", + "es": "-", + "pt-BR": "-", + "ru": "-", + "ko": "-" + }, { "name": "types_of_data.md", "en": "Completed", diff --git a/zh-CN/book/advanced.md b/zh-CN/book/advanced.md index 3dbadfbdaf0..eb55f4c5d86 100644 --- a/zh-CN/book/advanced.md +++ b/zh-CN/book/advanced.md @@ -14,7 +14,9 @@ Nushell 中的值包含一些额外的[元数据](metadata.md)。 由于 Nushell 严格的作用域规则,[并行迭代集合](parallelism.md)非常容易,这可以帮助你通过只输入几个字符来加速长时间运行的脚本。 -你可以使用 [`explore`](/commands/docs/explore.md) 命令[交互式地探索数据](explore.md)。 +你可以使用 [`explore`](/commands/docs/explore.md) 命令[交互式地探索数据](explore.md),也可以通过 `tui` 命令族[构建你专属的终端用户界面](tui.md)(如选择器、对话框和监控仪表盘)。 -最后,你可以使用[插件](plugins.md)来扩展 Nushell 的功能。 +你可以使用[插件](plugins.md)来扩展 Nushell 的功能。 几乎任何东西都可以成为插件,只要它以 Nushell 理解的协议与 Nushell 通信。 + +最后,Nushell 可以作为 [MCP 服务器](mcp.md)运行,使 AI Agent 和其他 Model Context Protocol 客户端能够查询其命令并执行 Nushell 代码。 diff --git a/zh-CN/book/coming_from_powershell.md b/zh-CN/book/coming_from_powershell.md new file mode 100644 index 00000000000..ad7aad6f317 --- /dev/null +++ b/zh-CN/book/coming_from_powershell.md @@ -0,0 +1,82 @@ +# 从 PowerShell 到 Nu + +::: tip +PowerShell 管道传递的是丰富的 **.NET 对象**,支持通过 `$process.Name` 等语法直接访问属性,或者直接将对象通过管道传递给支持该对象的 cmdlet。 + +相比之下,Nushell 管道传递的是表格、列表和值等**结构化数据**。 +这意味着: + +- 不支持 `.PropertyName` 语法访问属性 +- 改用 `get column`、`select`、`$it.column` 或表格操作 +- 命令始终接收可预测的结构化输入,而非字符串或 .NET 类型 + ::: + +## 等价命令参考: + +| PowerShell | Nu | 任务 | +| --------------------------------------------------------------- | -------------------------------------------- | ---------------------------------- | +| `Get-ChildItem` | `ls` | 列出当前目录中的文件 | +| `Get-ChildItem