From 635103a88cd3a1c76b3286b8d872d4c48bb65cab Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sun, 13 Feb 2022 23:12:09 +0800 Subject: [PATCH 001/566] chore: update .github/workflows/ci.yml --- .github/workflows/ci.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cc0e3616733..51bab3ae200 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,7 @@ jobs: - name: Generate Changelog id: changelog - uses: jaywcjlove/changelog-generator@v1.4.6 + uses: jaywcjlove/changelog-generator@v1.4.8 with: token: ${{ secrets.GITHUB_TOKEN }} filter-author: (小弟调调™|Renovate Bot) @@ -27,6 +27,13 @@ jobs: - run: npm run dash - run: rm -rf .deploy/linux-command.docset + - name: Generate Contributors Images + uses: jaywcjlove/github-action-contributors@main + with: + filter-author: (renovate\[bot\]|renovate-bot|dependabot\[bot\]) + output: .deploy/CONTRIBUTORS.svg + avatarSize: 42 + - run: npm install @jsdevtools/npm-publish -g - run: npm-publish --token="${{ secrets.NPM_TOKEN }}" ./package.json @@ -40,7 +47,7 @@ jobs: - name: Create Tag id: create_tag - uses: jaywcjlove/create-tag-action@v1.2.1 + uses: jaywcjlove/create-tag-action@v1.3.5 with: token: ${{ secrets.GITHUB_TOKEN }} package-path: ./package.json From c3a24f2a316e5ef4e21c7a340f43d0b3f77799c1 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sun, 13 Feb 2022 23:16:43 +0800 Subject: [PATCH 002/566] doc: Update README.md --- README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/README.md b/README.md index 04d92550b54..39f42cac71d 100644 --- a/README.md +++ b/README.md @@ -253,3 +253,17 @@ https://raw.githubusercontent.com/jaywcjlove/linux-command/master/command/<命 [![小弟调调™](https://github.com/jaywcjlove.png?size=100)](https://github.com/jaywcjlove) | [![ZhuangZhu-74](https://github.com/ZhuangZhu-74.png?size=100)](https://github.com/ZhuangZhu-74) | [![Huck Huang](https://github.com/huckhuang.png?size=100)](https://github.com/huckhuang) ---|---|--- [小弟调调™](http://wangchujiang.com) | [ZhuangZhu-74](https://github.com/ZhuangZhu-74) | [Huck Huang](https://github.com/huckhuang) + +## Contributors + +As always, thanks to our amazing contributors! + + + + + +Made with [github-action-contributors](https://github.com/jaywcjlove/github-action-contributors). + +## License + +Licensed under the MIT License. \ No newline at end of file From bc49f6f7e74487940b71f8fc815a796444b906ab Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Mon, 14 Feb 2022 10:44:19 +0800 Subject: [PATCH 003/566] feat: Add contributors pages. --- build/build.mjs | 19 +++++++++++++++++++ template/contributors.ejs | 8 ++++++++ template/styl/index.styl | 9 ++++++++- template/widget/footer.ejs | 2 +- 4 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 template/contributors.ejs diff --git a/build/build.mjs b/build/build.mjs index ef04b022a75..c8aaa2ddce7 100644 --- a/build/build.mjs +++ b/build/build.mjs @@ -12,6 +12,7 @@ const rootIndexJSPath = path.resolve(process.cwd(), 'template', 'js', 'index.js' const dataJsonPath = path.resolve(process.cwd(), 'dist', 'data.json'); const dataJsonMinPath = path.resolve(process.cwd(), 'dist', 'data.min.json'); const cssPath = path.resolve(deployDir, 'css', 'index.css'); +const contributorsPath = path.resolve(deployDir, 'CONTRIBUTORS.svg'); ;(async () => { try { @@ -71,6 +72,24 @@ const cssPath = path.resolve(deployDir, 'css', 'index.css'); command_length: jsonData.data.length } ); + + let svgStr = ''; + if (FS.existsSync(contributorsPath)) { + svgStr = (await FS.readFile(contributorsPath)).toString(); + } + + await createTmpToHTML( + path.resolve(process.cwd(), 'template', 'contributors.ejs'), + path.resolve(deployDir, 'contributors.html'), + { + p: '/contributors.html', + n: '搜索', + d: '最专业的Linux命令大全,命令搜索引擎,内容包含Linux命令手册、详解、学习,值得收藏的Linux命令速查手册。', + arr: jsonData.data, + command_length: jsonData.data.length, + contributors: svgStr, + } + ); await Promise.all(jsonData.data.map(async (item, idx) => { item.command_length = jsonData.data.length; diff --git a/template/contributors.ejs b/template/contributors.ejs new file mode 100644 index 00000000000..cfdb75dbd4c --- /dev/null +++ b/template/contributors.ejs @@ -0,0 +1,8 @@ +<%- include('partial/header'); %> +<%- include('widget/search',{type: "list"}); %> +
+

Contributors

+
<%=describe.contributors ? describe.contributors : '' %>
+
+<%- include('widget/footer',{type: "list"}); %> +<%- include('partial/footer'); %> diff --git a/template/styl/index.styl b/template/styl/index.styl index c61b8283ea6..7548edc80cc 100644 --- a/template/styl/index.styl +++ b/template/styl/index.styl @@ -295,11 +295,18 @@ a { } } -.header_inner, .hotlist, .search_list { +.header_inner, .hotlist, .search_list, .contributors { max-width 920px margin 0 auto } +.contributors { + padding 79px 27px + a { + font-weight: bold; + } +} + @media mq-mobile { .header{ width inherit diff --git a/template/widget/footer.ejs b/template/widget/footer.ejs index d442a410688..a749792631c 100644 --- a/template/widget/footer.ejs +++ b/template/widget/footer.ejs @@ -15,5 +15,5 @@
共搜集到 <%=describe.command_length?describe.command_length:''%> - 个Linux命令 + 个Linux命令,超过 50+ 的贡献者 \ No newline at end of file From cabc3b036a305f69580ea3280f6b407149b339f7 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Mon, 14 Feb 2022 10:50:31 +0800 Subject: [PATCH 004/566] fix: Fixed reading issue with CONTRIBUTORS.svg file. --- .github/workflows/ci.yml | 14 +++++++------- build/build.mjs | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 51bab3ae200..a46ff895af3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,19 +21,19 @@ jobs: filter-author: (小弟调调™|Renovate Bot) filter: (^[\s]+?[R|r]elease)|(^[R|r]elease) - - - run: npm install - - run: npm run build - - run: npm run dash - - run: rm -rf .deploy/linux-command.docset - - name: Generate Contributors Images uses: jaywcjlove/github-action-contributors@main with: filter-author: (renovate\[bot\]|renovate-bot|dependabot\[bot\]) - output: .deploy/CONTRIBUTORS.svg + output: CONTRIBUTORS.svg avatarSize: 42 + - run: npm install + - run: npm run build + - run: npm run dash + - run: rm -rf .deploy/linux-command.docset + - run: cp -rp CONTRIBUTORS.svg .deploy/ + - run: npm install @jsdevtools/npm-publish -g - run: npm-publish --token="${{ secrets.NPM_TOKEN }}" ./package.json diff --git a/build/build.mjs b/build/build.mjs index c8aaa2ddce7..cec0024695f 100644 --- a/build/build.mjs +++ b/build/build.mjs @@ -12,7 +12,7 @@ const rootIndexJSPath = path.resolve(process.cwd(), 'template', 'js', 'index.js' const dataJsonPath = path.resolve(process.cwd(), 'dist', 'data.json'); const dataJsonMinPath = path.resolve(process.cwd(), 'dist', 'data.min.json'); const cssPath = path.resolve(deployDir, 'css', 'index.css'); -const contributorsPath = path.resolve(deployDir, 'CONTRIBUTORS.svg'); +const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); ;(async () => { try { From e19ed19e8fa44b2c7358583bcc1787656fefed4e Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Mon, 14 Feb 2022 10:57:30 +0800 Subject: [PATCH 005/566] fix: Fix template/contributors.ejs issue. --- template/contributors.ejs | 5 ++++- template/widget/footer.ejs | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index cfdb75dbd4c..66dca26ab5b 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -2,7 +2,10 @@ <%- include('widget/search',{type: "list"}); %>

Contributors

-
<%=describe.contributors ? describe.contributors : '' %>
+
<%-describe.contributors ? describe.contributors : '' %>
+

+ 数据来源于 GitHub Contributors,使用github-action-contributors创建。 +

<%- include('widget/footer',{type: "list"}); %> <%- include('partial/footer'); %> diff --git a/template/widget/footer.ejs b/template/widget/footer.ejs index a749792631c..3fbc6d6ac19 100644 --- a/template/widget/footer.ejs +++ b/template/widget/footer.ejs @@ -15,5 +15,5 @@
共搜集到 <%=describe.command_length?describe.command_length:''%> - 个Linux命令,超过 50+ 的贡献者 + 个Linux命令,超过 50+ 贡献者 \ No newline at end of file From f708e394049895949dc44542853b239f30aff0e8 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Mon, 14 Feb 2022 11:03:02 +0800 Subject: [PATCH 006/566] website: update website style. --- template/styl/index.styl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/template/styl/index.styl b/template/styl/index.styl index 7548edc80cc..dcde15b46ed 100644 --- a/template/styl/index.styl +++ b/template/styl/index.styl @@ -301,7 +301,8 @@ a { } .contributors { - padding 79px 27px + padding 79px 27px + font-size: 16px a { font-weight: bold; } From bb4d67a71b053c44a96cb96269d658d548853fcc Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Mon, 14 Feb 2022 11:19:03 +0800 Subject: [PATCH 007/566] website: update website style. --- template/styl/index.styl | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/template/styl/index.styl b/template/styl/index.styl index dcde15b46ed..10c811a16b9 100644 --- a/template/styl/index.styl +++ b/template/styl/index.styl @@ -302,7 +302,14 @@ a { .contributors { padding 79px 27px - font-size: 16px + max-width: 960px; + margin: 28px auto 60px auto; + color: #24292f; + background-color: #ffffff; + font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"; + font-size: 16px; + line-height: 1.5; + word-wrap: break-word; a { font-weight: bold; } From 94ed285caa5afa3527c0e82d67635901359bc853 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Mon, 14 Feb 2022 13:58:31 +0800 Subject: [PATCH 008/566] website: update website style. --- template/styl/index.styl | 1 - 1 file changed, 1 deletion(-) diff --git a/template/styl/index.styl b/template/styl/index.styl index 10c811a16b9..4a26bc9270d 100644 --- a/template/styl/index.styl +++ b/template/styl/index.styl @@ -303,7 +303,6 @@ a { .contributors { padding 79px 27px max-width: 960px; - margin: 28px auto 60px auto; color: #24292f; background-color: #ffffff; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"; From a78e4a0cda07ec95c84a1eb25f12f145cc7f405d Mon Sep 17 00:00:00 2001 From: Marnm <2461590502@qq.com> Date: Sat, 19 Feb 2022 21:42:47 +0800 Subject: [PATCH 009/566] Update nmcli.md (#333) --- command/nmcli.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/command/nmcli.md b/command/nmcli.md index 6258e3a6cc0..ccf4cf5bcb6 100644 --- a/command/nmcli.md +++ b/command/nmcli.md @@ -53,3 +53,14 @@ nmcli con add help # 查看帮助 ``` +### 创建网络会话 +```shell +nmcli connection add con-name company ifname ens33 autoconnect no type ethernet ip4 192.168.1.2/24 gw4 192.168.1.1 +# con-name 指定会话名称, +# ifname 指定本机网卡 +# autoconnect no 是否自动连接 +# ethernet 指定网卡类型 +# ip4/ip6 +# gw4/gw5 +``` + From 710a833cf3d76fb4214ace3f03598a1e086e27f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Sat, 19 Feb 2022 21:43:07 +0800 Subject: [PATCH 010/566] Update nmcli.md --- command/nmcli.md | 1 + 1 file changed, 1 insertion(+) diff --git a/command/nmcli.md b/command/nmcli.md index ccf4cf5bcb6..1a30fdf2ca5 100644 --- a/command/nmcli.md +++ b/command/nmcli.md @@ -54,6 +54,7 @@ nmcli con add help # 查看帮助 ``` ### 创建网络会话 + ```shell nmcli connection add con-name company ifname ens33 autoconnect no type ethernet ip4 192.168.1.2/24 gw4 192.168.1.1 # con-name 指定会话名称, From a49d92b298cba5f12774fd118a8008e40233a6fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Sun, 20 Feb 2022 02:23:57 +0800 Subject: [PATCH 011/566] Update nmcli.md --- command/nmcli.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/command/nmcli.md b/command/nmcli.md index 1a30fdf2ca5..f340f7ed2a2 100644 --- a/command/nmcli.md +++ b/command/nmcli.md @@ -40,16 +40,16 @@ OBJECT ### 实例 ```shell -nmcli connection show # 查看当前连接状态 -nmcli connection reload # 重启服务 -nmcli connection show -active # 显示活动的连接 -nmcli connection show "lan eth0"# 显示指定一个网络连接配置 -nmcli device status # 显示设备状态 -nmcli device show eno16777736 # 显示指定接口属性 -nmcli device show # 显示全部接口属性 -nmcli con up static # 启用static连接配置 -nmcli con up default # 启用default连接配置 -nmcli con add help # 查看帮助 +nmcli connection show # 查看当前连接状态 +nmcli connection reload # 重启服务 +nmcli connection show -active # 显示活动的连接 +nmcli connection show "lan eth0" # 显示指定一个网络连接配置 +nmcli device status # 显示设备状态 +nmcli device show eno16777736 # 显示指定接口属性 +nmcli device show # 显示全部接口属性 +nmcli con up static # 启用static连接配置 +nmcli con up default # 启用default连接配置 +nmcli con add help # 查看帮助 ``` From 5cf755b37b8df126d54d5706a15084883a5fd2a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Tue, 22 Feb 2022 17:09:40 +0800 Subject: [PATCH 012/566] Update ln.md --- command/ln.md | 71 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 53 insertions(+), 18 deletions(-) diff --git a/command/ln.md b/command/ln.md index 264d059d7e4..f1afe832443 100644 --- a/command/ln.md +++ b/command/ln.md @@ -21,22 +21,22 @@ ln [选项]... [-T] 目标 链接名 (第一种格式) ### 选项 ```shell - --backup[=CONTROL] 为每个已存在的目标文件创建备份文件 --b 类似--backup,但不接受任何参数 --d, -F, --directory 创建指向目录的硬链接(只适用于超级用户) --f, --force 强行删除任何已存在的目标文件 --i, --interactive 覆盖既有文件之前先询问用户 --L, --logical 取消引用作为符号链接的目标 --n, --no-dereference 把符号链接的目的目录视为一般文件 --P, --physical 直接将硬链接到符号链接 --r, --relative 创建相对于链接位置的符号链接 --s, --symbolic 对源文件建立符号链接,而非硬链接 --S, --suffix=SUFFIX 用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,预设的备份字符串是符号“~”,用户可通过“-S”参数来改变它 --t, --target-directory=DIRECTORY 指定要在其中创建链接的DIRECTORY --T, --no-target-directory 将“LINK_NAME”视为常规文件 --v, --verbose 打印每个链接文件的名称 - --help 显示此帮助信息并退出 - --version 显示版本信息并退出 +--backup[=CONTROL] # 为每个已存在的目标文件创建备份文件 +-b # 类似--backup,但不接受任何参数 +-d, -F, --directory # 创建指向目录的硬链接(只适用于超级用户) +-f, --force # 强行删除任何已存在的目标文件 +-i, --interactive # 覆盖既有文件之前先询问用户 +-L, --logical # 取消引用作为符号链接的目标 +-n, --no-dereference # 把符号链接的目的目录视为一般文件 +-P, --physical # 直接将硬链接到符号链接 +-r, --relative # 创建相对于链接位置的符号链接 +-s, --symbolic # 对源文件建立符号链接,而非硬链接 +-S, --suffix=SUFFIX # 用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,预设的备份字符串是符号“~”,用户可通过“-S”参数来改变它 +-t, --target-directory=DIRECTORY # 指定要在其中创建链接的DIRECTORY +-T, --no-target-directory # 将“LINK_NAME”视为常规文件 +-v, --verbose # 打印每个链接文件的名称 +--help # 显示此帮助信息并退出 +--version # 显示版本信息并退出 ``` ### 参数 @@ -53,7 +53,7 @@ simple, never # 永远使用普通方式备份 ### 实例 -将目录`/usr/mengqc/mub1`下的文件m2.c链接到目录`/usr/liu`下的文件a2.c +将目录`/usr/mengqc/mub1` 下的文件 m2.c 链接到目录 `/usr/liu` 下的文件 a2.c ```shell cd /usr/mengqc @@ -62,6 +62,8 @@ ln /mub1/m2.c /usr/liu/a2.c 在执行ln命令之前,目录`/usr/liu`中不存在a2.c文件。执行ln之后,在`/usr/liu`目录中才有a2.c这一项,表明m2.c和a2.c链接起来(注意,二者在物理上是同一文件),利用`ls -l`命令可以看到链接数的变化。 +**创建软链接** + 在目录`/usr/liu`下建立一个符号链接文件abc,使它指向目录`/usr/mengqc/mub1` ```shell @@ -70,6 +72,27 @@ ln -s /usr/mengqc/mub1 /usr/liu/abc 执行该命令后,`/usr/mengqc/mub1`代表的路径将存放在名为`/usr/liu/abc`的文件中。 +**创建硬链接** + +给文件创建硬链接,为 `log2022.log` 创建硬链接 `ln2022`,`log2022.log` 与 `ln2022` 的各项属性相同 + +```shell +ln log2022.log ln2022 +``` + +输出: + +``` +[root@localhost test]# ll +lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2022.log +-rw-r--r-- 1 root bin 61 11-13 06:03 log2022.log +[root@localhost test]# ln log2022.log ln2022 +[root@localhost test]# ll +lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2022.log +-rw-r--r-- 2 root bin 61 11-13 06:03 ln2022 +-rw-r--r-- 2 root bin 61 11-13 06:03 log2022.log +``` + ## 扩展知识 Linux具有为一个文件起多个名字的功能,称为链接。被链接的文件可以存放在相同的目录下,但是必须有不同的文件名,而不用在硬盘上为同样的数据重复备份。另外,被链接的文件也可以有相同的文件名,但是存放在不同的目录下,这样只要对一个目录下的该文件进行修改,就可以完成对所有目录下同名链接文件的修改。对于某个文件的各链接文件,我们可以给它们指定不同的存取权限,以控制对信息的共享和增强安全性。 @@ -80,10 +103,22 @@ ln功能说明:是为某一个文件在另外一个位置建立一个同步的 > :warning: ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化。 +### 软链接: + +1. 软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式 +2. 软链接可以 跨文件系统 ,硬链接不可以 +3. 软链接可以对一个不存在的文件名进行链接 +4. 软链接可以对目录进行链接 + ### 硬链接 建立硬链接时,在另外的目录或本目录中增加目标文件的一个目录项,这样,一个文件就登记在多个目录中。如下所示的m2.c文件就在目录mub1和liu中都建立了目录项。 + +1. 硬链接,以文件副本的形式存在。但不占用实际空间。 +2. 不允许给目录创建硬链接 +3. 硬链接只有在同一个文件系统中才能创建 + ```shell ls -ailR .: @@ -116,7 +151,7 @@ total 8 * 不能对目录文件做硬链接。 * 不能在不同的文件系统之间做硬链接。就是说,链接文件和被链接文件必须位于同一个文件系统中。 -### 符号链接 +### 符号链接(软连接) 符号链接也称为软链接,是将一个路径名链接到一个文件。这些文件是一种特别类型的文件。事实上,它只是一个文本文件(如下所示的abc文件),其中包含它提供链接的另一个文件的路径名,如虚线箭头所示。另一个文件是实际包含所有数据的文件。所有读、写文件内容的命令被用于符号链接时,将沿着链接方向前进来访问实际的文件。 From 17ac6121d94244cfade5e95041c907d06e25a22e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Wed, 23 Feb 2022 10:15:45 +0800 Subject: [PATCH 013/566] Update alias.md --- command/alias.md | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/command/alias.md b/command/alias.md index e7c8f282d59..b586cef39d4 100644 --- a/command/alias.md +++ b/command/alias.md @@ -21,17 +21,13 @@ alias [-p] [name[=value] ...] ```shell -p:显示全部已定义的别名。 -``` - -## 参数 - name(可选):指定要(定义、修改、显示)的别名。 - value(可选):别名的值。 +``` ### 返回值 -alias返回true除非您要显示的别名未定义。 +alias 返回 true 除非您要显示的别名未定义。 ## 例子 @@ -73,7 +69,6 @@ alias ls='ls --color=never' grep='grep --color=never' ## 错误用法 - 要显示的别名未定义。 - - 当您定义(修改)别名的值的时候,由于值的字符串有空格但您没有用**单引号扩起**,那么会导致严重的问题: ```shell @@ -112,19 +107,13 @@ A:运行cd依然会切换目录,运行ls依然会列出文件夹的内容; ### 注意 -1. **执行脚本时请注意:** - -> 使用`source`命令执行的bash脚本如果执行了`alias`或`unalias`命令,那么有可能会对终端环境的别名设置产生影响;终端环境的别名设置也可能改变运行结果; -> -> 通过`sh`方式调用的bash脚本或直接运行当前用户有执行权限的脚本不受终端环境的别名影响。 - +1. 执行脚本时请注意: + 1. 使用 `source` 命令执行的bash脚本如果执行了 `alias` 或 `unalias` 命令,那么有可能会对终端环境的别名设置产生影响;终端环境的别名设置也可能改变运行结果; + 2. 通过 `sh` 方式调用的 bash 脚本或直接运行当前用户有执行权限的脚本不受终端环境的别名影响。 2. 删除别名,请查看`unalias`命令。 - -2. 建议您不要对`mv cp rm`等命令的别名设置危险的`-f`选项,比如`alias rm='rm -f'`。 - -3. 需要注意别名是否和其他命令有冲突的情况。 - -4. 该命令是bash内建命令,相关的帮助信息请查看`help`命令。 +3. 建议您不要对 `mv cp rm` 等命令的别名设置危险的 `-f` 选项,比如 `alias rm='rm -f'`。 +4. 需要注意别名是否和其他命令有冲突的情况。 +5. 该命令是 bash 内建命令,相关的帮助信息请查看 `help` 命令。 ### 其他参考链接 From bde70a417f0f5df90886e01bfd090d71c0ec5f43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Wed, 23 Feb 2022 10:16:45 +0800 Subject: [PATCH 014/566] Update alias.md --- command/alias.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/command/alias.md b/command/alias.md index b586cef39d4..77e5f2b173c 100644 --- a/command/alias.md +++ b/command/alias.md @@ -108,8 +108,8 @@ A:运行cd依然会切换目录,运行ls依然会列出文件夹的内容; ### 注意 1. 执行脚本时请注意: - 1. 使用 `source` 命令执行的bash脚本如果执行了 `alias` 或 `unalias` 命令,那么有可能会对终端环境的别名设置产生影响;终端环境的别名设置也可能改变运行结果; - 2. 通过 `sh` 方式调用的 bash 脚本或直接运行当前用户有执行权限的脚本不受终端环境的别名影响。 + - 使用 `source` 命令执行的bash脚本如果执行了 `alias` 或 `unalias` 命令,那么有可能会对终端环境的别名设置产生影响;终端环境的别名设置也可能改变运行结果; + - 通过 `sh` 方式调用的 bash 脚本或直接运行当前用户有执行权限的脚本不受终端环境的别名影响。 2. 删除别名,请查看`unalias`命令。 3. 建议您不要对 `mv cp rm` 等命令的别名设置危险的 `-f` 选项,比如 `alias rm='rm -f'`。 4. 需要注意别名是否和其他命令有冲突的情况。 From aabe4285d3d403e5a0eecf6bd582174f3bde86cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BF=9C=E6=96=B9?= Date: Thu, 24 Feb 2022 00:37:15 +0800 Subject: [PATCH 015/566] =?UTF-8?q?=E6=9B=B4=E6=AD=A3=20`ls`=20=E4=B8=AD?= =?UTF-8?q?=E9=94=99=E5=88=AB=E5=AD=97=20`=E5=BD=B1=E8=97=8F`=20=E4=B8=BA?= =?UTF-8?q?=20`=E9=9A=90=E8=97=8F`=20(#335)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- command/ls.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/command/ls.md b/command/ls.md index e55bb4ab878..cf09d587b1a 100644 --- a/command/ls.md +++ b/command/ls.md @@ -186,7 +186,7 @@ $ ls --human-readable --size -1 -S --classify # 按文件大小排序 $ du -sh * | sort -h # 按文件大小排序(同上) ``` -显示当前目录下包括影藏文件在内的所有文件列表 +显示当前目录下包括隐藏文件在内的所有文件列表 ```shell [root@localhost ~]# ls -a From c816a0a2eb5f3f9348f48c0ffb5ad21c81b9c127 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= <398188662@qq.com> Date: Thu, 24 Feb 2022 23:10:34 +0800 Subject: [PATCH 016/566] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 39f42cac71d..ed99420f2e1 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@

[![Web](https://jaywcjlove.github.io/sb/ico/linux.svg)](https://jaywcjlove.github.io/linux-command/) [![weibo](https://jaywcjlove.github.io/sb/ico/weibo.svg)](http://weibo.com/pc175) [![Get this with npm](https://jaywcjlove.github.io/sb/ico/npm.svg)](https://www.npmjs.com/package/linux-command) [![NPM Download](https://img.shields.io/npm/dm/linux-command.svg?style=flat)](https://www.npmjs.com/package/linux-command) +[![jsdelivr cdn](https://data.jsdelivr.com/v1/package/npm/linux-command/badge)](https://www.jsdelivr.com/package/npm/linux-command) 当前仓库搜集了 570 多个 Linux 命令,是一个非盈利性的仓库,生成了一个 web 网站方便使用,目前网站没有任何广告,内容包含 Linux 命令手册、详解、学习,内容来自网络和网友的补充,非常值得收藏的 Linux 命令速查手册。版权归属原作者,对任何法律问题及风险不承担任何责任,没有任何商业目的,如果认为侵犯了您的版权,请来信告知。我不能完全保证内容的正确性。通过使用本站内容带来的风险与我无关。当使用本站时,代表您已接受了本站的使用条款和隐私条款。 @@ -266,4 +267,4 @@ Made with [github-action-contributors](https://github.com/jaywcjlove/github-acti ## License -Licensed under the MIT License. \ No newline at end of file +Licensed under the MIT License. From 3572d9f2c553ad4ee3601bb3c575e92934be9bee Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Thu, 3 Mar 2022 19:13:38 +0800 Subject: [PATCH 017/566] chore: update workflows config. --- .github/workflows/ci.yml | 50 ++++++++++++++++++++++------------------ 1 file changed, 28 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a46ff895af3..b6c4b8c673d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,44 +13,43 @@ jobs: with: node-version: 14 - - name: Generate Changelog - id: changelog - uses: jaywcjlove/changelog-generator@v1.4.8 - with: - token: ${{ secrets.GITHUB_TOKEN }} - filter-author: (小弟调调™|Renovate Bot) - filter: (^[\s]+?[R|r]elease)|(^[R|r]elease) + - run: npm install + - run: npm run build + - run: npm run dash + - run: rm -rf .deploy/linux-command.docset - name: Generate Contributors Images uses: jaywcjlove/github-action-contributors@main with: filter-author: (renovate\[bot\]|renovate-bot|dependabot\[bot\]) - output: CONTRIBUTORS.svg + output: .deploy/CONTRIBUTORS.svg avatarSize: 42 - - run: npm install - - run: npm run build - - run: npm run dash - - run: rm -rf .deploy/linux-command.docset - - run: cp -rp CONTRIBUTORS.svg .deploy/ + - name: Create Tag + id: create_tag + uses: jaywcjlove/create-tag-action@v1.3.6 + with: + package-path: ./package.json - - run: npm install @jsdevtools/npm-publish -g - - run: npm-publish --token="${{ secrets.NPM_TOKEN }}" ./package.json + - name: get tag version + id: tag_version + uses: jaywcjlove/changelog-generator@v1.5.0 - name: Deploy uses: peaceiris/actions-gh-pages@v3 with: + commit_message: '[${{steps.tag_version.outputs.tag}}] ${{ github.event.head_commit.message }}' github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./.deploy user_name: github-actions[bot] user_email: github-actions[bot]@users.noreply.github.com - - - name: Create Tag - id: create_tag - uses: jaywcjlove/create-tag-action@v1.3.5 + + - name: Generate Changelog + id: changelog + uses: jaywcjlove/changelog-generator@v1.5.0 with: - token: ${{ secrets.GITHUB_TOKEN }} - package-path: ./package.json + filter-author: (小弟调调™) + filter: (^[\s]+?[R|r]elease)|(^[R|r]elease) - name: Create Release uses: ncipollo/release-action@v1 @@ -68,4 +67,11 @@ jobs: ${{ steps.changelog.outputs.compareurl }} - ${{ steps.changelog.outputs.changelog }} \ No newline at end of file + ${{ steps.changelog.outputs.changelog }} + + + Document uiw@${{ steps.changelog.outputs.tag }}: + https://raw.githack.com/jaywcjlove/linux-command/${{ steps.changelog.outputs.gh-pages-short-hash }}/index.html + + - run: npm install @jsdevtools/npm-publish -g + - run: npm-publish --token="${{ secrets.NPM_TOKEN }}" ./package.json \ No newline at end of file From 81d58b3c4046b224c2490b196641cf8e53672bf1 Mon Sep 17 00:00:00 2001 From: noodles2hg <57032282+z-anshun@users.noreply.github.com> Date: Fri, 4 Mar 2022 00:30:02 +0800 Subject: [PATCH 018/566] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20ls=20=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E9=94=99=E8=AF=AF=E7=A4=BA=E4=BE=8B=20(#337)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 应该为`ls *.jpg | xargs -n1 -I{} cp {} /data/images` --- command/xargs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/command/xargs.md b/command/xargs.md index e511cf51891..9f5a2357f61 100644 --- a/command/xargs.md +++ b/command/xargs.md @@ -102,7 +102,7 @@ cat arg.txt | xargs -I {} ./sk.sh -p {} -l 复制所有图片文件到 /data/images 目录下: ```shell -ls *.jpg | xargs -n1 -I cp {} /data/images +ls *.jpg | xargs -n1 -I{} cp {} /data/images ``` #### 结合 find 命令使用 From 34e17422a275d669b2e21b8d4d7bb9082ffa6652 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 5 Mar 2022 23:47:48 +0800 Subject: [PATCH 019/566] chore: update workflows config --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b6c4b8c673d..015bf8c024b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -70,7 +70,7 @@ jobs: ${{ steps.changelog.outputs.changelog }} - Document uiw@${{ steps.changelog.outputs.tag }}: + Document linux-command@${{ steps.changelog.outputs.tag }}: https://raw.githack.com/jaywcjlove/linux-command/${{ steps.changelog.outputs.gh-pages-short-hash }}/index.html - run: npm install @jsdevtools/npm-publish -g From a5b5344b43532af5feedcd652b318b8b0b3e3456 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 5 Mar 2022 23:48:02 +0800 Subject: [PATCH 020/566] released v1.8.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 400c37592e7..b2bf39deba5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "linux-command", - "version": "1.8.2", + "version": "1.8.3", "description": "Linux Command", "homepage": "https://jaywcjlove.github.io/linux-command/", "main": "dist/data.json", From a775db6dd0eb36c53bdd5afe0873e1b559dfd8ef Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 5 Mar 2022 23:53:51 +0800 Subject: [PATCH 021/566] chore: update devDependencies. --- package.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index b2bf39deba5..6471d2fce2b 100644 --- a/package.json +++ b/package.json @@ -25,15 +25,15 @@ "url": "git+https://github.com/jaywcjlove/linux-command.git" }, "devDependencies": { - "archiver": "5.3.0", - "colors-cli": "1.0.28", - "ejs": "3.1.6", - "fs-extra": "10.0.0", - "markdown-to-html-cli": "3.2.5", - "sitemap-generator": "8.5.1", - "sqlite3": "5.0.2", - "stylus": "0.55.0", - "uglify-js": "3.14.4" + "archiver": "~5.3.0", + "colors-cli": "~1.0.28", + "ejs": "~3.1.6", + "fs-extra": "~10.0.1", + "markdown-to-html-cli": "~3.2.5", + "sitemap-generator": "~8.5.1", + "sqlite3": "~5.0.2", + "stylus": "~0.56.0", + "uglify-js": "~3.15.2" }, "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" From 754727a96159a371e9444f74e831892b70276d2f Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 5 Mar 2022 23:55:03 +0800 Subject: [PATCH 022/566] chore: update renovate.json --- renovate.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/renovate.json b/renovate.json index f45d8f110c3..5fe6b173781 100644 --- a/renovate.json +++ b/renovate.json @@ -1,5 +1,11 @@ { "extends": [ "config:base" + ], + "packageRules": [ + { + "matchPackagePatterns": ["*"], + "rangeStrategy": "replace" + } ] } From 0dce51630b96c382a79227caa4128f64116d61ca Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Thu, 10 Mar 2022 11:34:03 +0800 Subject: [PATCH 023/566] chore: update workflow config. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 015bf8c024b..c9fa6b6b6a9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -name: GitHub Actions Build and Deploy linux-command +name: CI on: push: branches: From 777dc5b18ff19a01f9a8ba055993b3e82c76d1bb Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Thu, 10 Mar 2022 11:34:45 +0800 Subject: [PATCH 024/566] chore: Update README.md (#341) --- README.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ed99420f2e1..e1ad1a9e812 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,11 @@

Linux Command

-[![Web](https://jaywcjlove.github.io/sb/ico/linux.svg)](https://jaywcjlove.github.io/linux-command/) [![weibo](https://jaywcjlove.github.io/sb/ico/weibo.svg)](http://weibo.com/pc175) [![Get this with npm](https://jaywcjlove.github.io/sb/ico/npm.svg)](https://www.npmjs.com/package/linux-command) [![NPM Download](https://img.shields.io/npm/dm/linux-command.svg?style=flat)](https://www.npmjs.com/package/linux-command) +[![CI](https://github.com/jaywcjlove/linux-command/actions/workflows/ci.yml/badge.svg)](https://github.com/jaywcjlove/linux-command/actions/workflows/ci.yml) +[![Web](https://jaywcjlove.github.io/sb/ico/linux.svg)](https://jaywcjlove.github.io/linux-command/) +[![weibo](https://jaywcjlove.github.io/sb/ico/weibo.svg)](http://weibo.com/pc175) +[![Get this with npm](https://jaywcjlove.github.io/sb/ico/npm.svg)](https://www.npmjs.com/package/linux-command) +[![NPM Download](https://img.shields.io/npm/dm/linux-command.svg?style=flat)](https://www.npmjs.com/package/linux-command) [![jsdelivr cdn](https://data.jsdelivr.com/v1/package/npm/linux-command/badge)](https://www.jsdelivr.com/package/npm/linux-command) 当前仓库搜集了 570 多个 Linux 命令,是一个非盈利性的仓库,生成了一个 web 网站方便使用,目前网站没有任何广告,内容包含 Linux 命令手册、详解、学习,内容来自网络和网友的补充,非常值得收藏的 Linux 命令速查手册。版权归属原作者,对任何法律问题及风险不承担任何责任,没有任何商业目的,如果认为侵犯了您的版权,请来信告知。我不能完全保证内容的正确性。通过使用本站内容带来的风险与我无关。当使用本站时,代表您已接受了本站的使用条款和隐私条款。 @@ -30,7 +34,7 @@ ⚠️ 你们拿过去部署的静态网站,还是希望挂个 GitHub 地址,这样大家共同维护命令文档,让文档更加完善,更加丰富,当然你删除本站所有信息相关信息,其实我也不太在意,默认允许你们随意搞,我不负任何负责。如果您也部署了一份,可以将网址放到下面 :)。 -[`linux.devonline.net`](http://linux.devonline.net/),[`linux.ftqq.com`](https://linux.ftqq.com/),[`linux.gaomeluo.com`](https://linux.gaomeluo.com),[`atoolbox.net`](http://www.atoolbox.net/Tool.php?Id=826),[`xiaoshanseo.com`](https://tools.xiaoshanseo.com/Tools/linux-command/),[`262235.xyz`](https://262235.xyz/linux-command/),[`cmsblogs.cn`](https://linux.cmsblogs.cn/),[`loquy.cn`](https://www.loquy.cn/linux-command/),[`bqrdh.com`](https://tools.bqrdh.com/linux-command/),[`buyao.vip`](https://demo.buyao.vip/linux/),[`hezhiqiang.gitbook.io`](https://hezhiqiang.gitbook.io/linux/) +[`linux.devonline.net`](http://linux.devonline.net/),[`linux.ftqq.com`](https://linux.ftqq.com/),[`linux.gaomeluo.com`](https://linux.gaomeluo.com),[`atoolbox.net`](http://www.atoolbox.net/Tool.php?Id=826),[`xiaoshanseo.com`](https://tools.xiaoshanseo.com/Tools/linux-command/),[`262235.xyz`](https://262235.xyz/linux-command/),[`cmsblogs.cn`](https://linux.cmsblogs.cn/),[`loquy.cn`](https://www.loquy.cn/linux-command/),[`bqrdh.com`](https://tools.bqrdh.com/linux-command/),[`buyao.vip`](https://demo.buyao.vip/linux/),[`hezhiqiang.gitbook.io`](https://hezhiqiang.gitbook.io/linux/),[`linux.mmoke.com`](https://linux.mmoke.com) ### 微信小程序版本 From 432b3abb4fa3e04fefa018afc5b87958fda8d21c Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Thu, 10 Mar 2022 11:39:30 +0800 Subject: [PATCH 025/566] =?UTF-8?q?chore:=20=E5=88=A0=E9=99=A4=E7=99=BE?= =?UTF-8?q?=E5=BA=A6=E7=BB=9F=E8=AE=A1=20(#341)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/partial/footer.ejs | 2 -- 1 file changed, 2 deletions(-) diff --git a/template/partial/footer.ejs b/template/partial/footer.ejs index 8297e0a5f05..a8359a9ba4a 100644 --- a/template/partial/footer.ejs +++ b/template/partial/footer.ejs @@ -1,5 +1,3 @@ - From b7095693ac9f534621276741f6150d5a0d81df98 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Thu, 10 Mar 2022 11:44:04 +0800 Subject: [PATCH 026/566] chore: remove the cdn script (#341). --- template/details.ejs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/template/details.ejs b/template/details.ejs index 38f5febecd5..93101ab53d8 100644 --- a/template/details.ejs +++ b/template/details.ejs @@ -1,7 +1,9 @@ <%- include('partial/header'); %> <%- include('widget/search',{type: "list"}); %> - +
<% if(md_path){ %> diff --git a/template/js/copy-to-clipboard.js b/template/js/copy-to-clipboard.js new file mode 100644 index 00000000000..8647fc1c6c1 --- /dev/null +++ b/template/js/copy-to-clipboard.js @@ -0,0 +1,11 @@ +/*! @uiw/copy-to-clipboard v1.0.12 | MIT (c) 2021 Kenny Wang | https://github.com/uiwjs/copy-to-clipboard.git */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).copyTextToClipboard=t()}(this,(function(){"use strict";return function(e,t){const o=document.createElement("textarea");o.value=e,o.setAttribute("readonly",""),o.style={position:"absolute",left:"-9999px"},document.body.appendChild(o);const n=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);o.select();let c=!1;try{c=!!document.execCommand("copy")}catch(e){c=!1}document.body.removeChild(o),n&&document.getSelection&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(n)),t&&t(c)}})); + +function copied(target, str) { + target.classList.add('active'); + copyTextToClipboard(target.dataset.code, function() { + setTimeout(() => { + target.classList.remove('active'); + }, 2000); + }); +} \ No newline at end of file From 538bd511e7c027f573482803ba2942d97ec3a1b4 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Fri, 11 Mar 2022 23:24:47 +0800 Subject: [PATCH 028/566] doc: Update README.md (#338) --- README.md | 42 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index e1ad1a9e812..ce6891c130f 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ 当前仓库搜集了 570 多个 Linux 命令,是一个非盈利性的仓库,生成了一个 web 网站方便使用,目前网站没有任何广告,内容包含 Linux 命令手册、详解、学习,内容来自网络和网友的补充,非常值得收藏的 Linux 命令速查手册。版权归属原作者,对任何法律问题及风险不承担任何责任,没有任何商业目的,如果认为侵犯了您的版权,请来信告知。我不能完全保证内容的正确性。通过使用本站内容带来的风险与我无关。当使用本站时,代表您已接受了本站的使用条款和隐私条款。 -[Web](#web-版本) | [微信小程序](#微信小程序版本) | [Dash](#dash-版本) | [Alfred](#alfred-版本) | [KDE/Krunner](https://github.com/roachsinai/krunner-linuxcommands) | [Android](https://github.com/Ernest-su/LinuxCmd.git) | [Mac/Win/Linux](https://github.com/haloislet/linux-command) | [Chrome Plugin](#chrome-插件) | [命令行工具](#命令行工具) +[Web](#web-版本) | [微信小程序](#微信小程序版本) | [Dash](#dash-版本) | [Raycast](#raycast-版本) | [Alfred](#alfred-版本) | [KDE/Krunner](https://github.com/roachsinai/krunner-linuxcommands) | [Android](https://github.com/Ernest-su/LinuxCmd.git) | [Mac/Win/Linux](https://github.com/haloislet/linux-command) | [Chrome Plugin](#chrome-插件) | [命令行工具](#命令行工具) ### Web 版本 @@ -48,19 +48,53 @@ [![Chrome Web Store 下载](http://jaywcjlove.github.io/sb/download/chrome-web-store.svg)](https://chrome.google.com/webstore/detail/oscnews/iheapfheanfjcemgneblljhaebonakbg) -[![Chrome Web Store 下载](./assets/chrome-extensions.gif)](https://github.com/jaywcjlove/oscnews) +
+Chrome 插件截图 + +Chrome 插件截图 + +
+ +### Raycast 版本 + +[Raycast 版本安装](https://www.raycast.com/jaywcjlove/linux-command), ([**#338**](https://github.com/jaywcjlove/linux-command/issues/338))下图是界面效果: + +
+Raycast 版本截图 + +Raycast 版本截图 + +Raycast 版本截图 + +Raycast 版本截图 + +Raycast 版本截图 + +
+ ### Alfred 版本 [Alfred 版本下载](https://github.com/jaywcjlove/linux-command/releases), 下图是界面效果。 -[![Linux 命令大全](./assets/alfred.png)](https://github.com/jaywcjlove/linux-command/releases) +
+Alfred 版本截图 + +Alfred 版本截图 + +
### Dash 版本 由 [**@SHANG殇**](https://github.com/xinshangshangxin) 提供的 `Dash` 版本 [#91](https://github.com/jaywcjlove/linux-command/pull/91),可配合 `alfred` 玩耍,下载 [linux-command.docset.zip](https://jaywcjlove.github.io/linux-command/linux-command.docset.zip) 文件解压,点击安装即可。 -[![](https://user-images.githubusercontent.com/8779091/57193499-5b475d00-6f6e-11e9-879d-e7e8fdc40ced.gif)](https://github.com/jaywcjlove/linux-command/releases) + +
+Dash 版本截图 + +Dash 版本截图 + +
### 命令行工具 From 1640e5d7480529e228cc9d7ffcc2fdeb53899cf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= Date: Sat, 12 Mar 2022 12:10:32 +0800 Subject: [PATCH 029/566] Update and rename telint.md to telinit.md --- command/telinit.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++ command/telint.md | 26 ------------------------ 2 files changed, 50 insertions(+), 26 deletions(-) create mode 100644 command/telinit.md delete mode 100644 command/telint.md diff --git a/command/telinit.md b/command/telinit.md new file mode 100644 index 00000000000..d158967531d --- /dev/null +++ b/command/telinit.md @@ -0,0 +1,50 @@ +telinit +=== + +切换当前正在运行系统的运行等级 + +## 补充说明 + +**telinit命令** 用于切换当前正在运行的Linux系统的运行等级。 + +_RUNLEVEL_ 参数应该是多用户运行级别 `2-5` 之一,`0` 用于停止系统,`6` 用于重新启动系统,或 `1` 用于使系统进入单用户模式。 + +通常您会使用 `shutdown(8)` 工具来停止或重新启动系统,或者将其降低到单用户模式。 + +_RUNLEVEL_ 也可能是 S 或 s ,这会将系统直接置于单用户模式,而无需先实际停止进程,您可能不希望这样。 + +通过发出 `runlevel(7)` 事件来更改运行级别,该事件包括 _RUNLEVEL_ 环境变量中的新运行级别以及 PREVLEVEL 变量中的先前运行级别(从环境或 `/var/run/utmp` 获得)。 + +**telinit** 会将新的运行级别写入 `/var/run/utmp` 并将新条目附加到 `/var/log/wtmp`。 + +### 语法 + +```shell +telint(选项)(参数) +telinit [OPTION]... RUNLEVEL +``` + +### 选项 + +```shell +-t:指定等待的秒数。 +-e 键=值 +``` + +这指定了与 _RUNLEVEL_ 和 _PREVLEVEL_ 一起包含在事件中的附加环境变量。 + +### 参数 + +运行等级:指定要切换的运行等级。 + +### Environment + +RUNLEVEL + +如果设置优先于从 `/var/run/utmp` 读取,`telinit` 将从该环境变量读取当前运行级别 + +### Files + +- `/var/run/utmp` 将从哪里读取当前运行级别; 此文件也将使用新的运行级别进行更新。 +- `/var/log/wtmp` 新的运行级别记录将附加到此文件中以获取新的运行级别。 + diff --git a/command/telint.md b/command/telint.md deleted file mode 100644 index c502a91f532..00000000000 --- a/command/telint.md +++ /dev/null @@ -1,26 +0,0 @@ -telint -=== - -切换当前正在运行系统的运行等级 - -## 补充说明 - -**telint命令** 用于切换当前正在运行的Linux系统的运行等级。 - -### 语法 - -```shell -telint(选项)(参数) -``` - -### 选项 - -```shell --t:指定等待的秒数。 -``` - -### 参数 - -运行等级:指定要切换的运行等级。 - - From b51523639026aa53ae1d00c72d633a8e22bf33c3 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Wed, 16 Mar 2022 02:25:38 +0800 Subject: [PATCH 030/566] chore: update build script. --- build/build.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/build.mjs b/build/build.mjs index 90045013bf6..5054e828115 100644 --- a/build/build.mjs +++ b/build/build.mjs @@ -12,7 +12,7 @@ const rootIndexJSPath = path.resolve(process.cwd(), 'template', 'js', 'index.js' const dataJsonPath = path.resolve(process.cwd(), 'dist', 'data.json'); const dataJsonMinPath = path.resolve(process.cwd(), 'dist', 'data.min.json'); const cssPath = path.resolve(deployDir, 'css', 'index.css'); -const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); +const contributorsPath = path.resolve(deployDir, 'CONTRIBUTORS.svg'); ;(async () => { try { From 551306eca226605ed4f66cc8edc6c51ee1f8a325 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Wed, 16 Mar 2022 02:33:50 +0800 Subject: [PATCH 031/566] chore: update build script. --- build/build.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/build.mjs b/build/build.mjs index 5054e828115..90045013bf6 100644 --- a/build/build.mjs +++ b/build/build.mjs @@ -12,7 +12,7 @@ const rootIndexJSPath = path.resolve(process.cwd(), 'template', 'js', 'index.js' const dataJsonPath = path.resolve(process.cwd(), 'dist', 'data.json'); const dataJsonMinPath = path.resolve(process.cwd(), 'dist', 'data.min.json'); const cssPath = path.resolve(deployDir, 'css', 'index.css'); -const contributorsPath = path.resolve(deployDir, 'CONTRIBUTORS.svg'); +const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); ;(async () => { try { From ad0a3c1a99548418d4c557431d107f71005958ba Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Wed, 16 Mar 2022 02:34:09 +0800 Subject: [PATCH 032/566] chore: update workflows config. --- .github/workflows/ci.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c9fa6b6b6a9..536d393beca 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,18 +13,18 @@ jobs: with: node-version: 14 - - run: npm install - - run: npm run build - - run: npm run dash - - run: rm -rf .deploy/linux-command.docset - - name: Generate Contributors Images uses: jaywcjlove/github-action-contributors@main with: filter-author: (renovate\[bot\]|renovate-bot|dependabot\[bot\]) - output: .deploy/CONTRIBUTORS.svg avatarSize: 42 + - run: npm install + - run: npm run build + - run: npm run dash + - run: rm -rf .deploy/linux-command.docset + - run: cp CONTRIBUTORS.svg .deploy + - name: Create Tag id: create_tag uses: jaywcjlove/create-tag-action@v1.3.6 From 78c7b04208edf1e626bb6e3a703212e274918645 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Wed, 16 Mar 2022 02:34:54 +0800 Subject: [PATCH 033/566] released v1.9.0 --- dist/data.json | 6 +++--- dist/data.min.json | 2 +- package.json | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/data.json b/dist/data.json index 78b8ec79223..ba5ccfcb019 100644 --- a/dist/data.json +++ b/dist/data.json @@ -2434,9 +2434,9 @@ "p": "/tee", "d": "从标准输入读取数据并重定向到标准输出和文件。" }, - "telint": { - "n": "telint", - "p": "/telint", + "telinit": { + "n": "telinit", + "p": "/telinit", "d": "切换当前正在运行系统的运行等级" }, "telnet": { diff --git a/dist/data.min.json b/dist/data.min.json index 845b5670ce2..694dc0edede 100644 --- a/dist/data.min.json +++ b/dist/data.min.json @@ -1 +1 @@ -{"ab":{"n":"ab","p":"/ab","d":"Apache服务器的性能测试工具"},"accept":{"n":"accept","p":"/accept","d":"指示打印系统接受发往指定目标打印机的打印任务"},"ack":{"n":"ack","p":"/ack","d":"比grep好用的文本搜索工具"},"alias":{"n":"alias","p":"/alias","d":"定义或显示别名。"},"apachectl":{"n":"apachectl","p":"/apachectl","d":"Apache服务器前端控制工具"},"apk":{"n":"apk","p":"/apk","d":"Alpine Linux 下的包管理工具"},"apropos":{"n":"apropos","p":"/apropos","d":"在 whatis 数据库中查找字符串"},"apt-get":{"n":"apt-get","p":"/apt-get","d":"Debian Linux发行版中的APT软件包管理工具"},"apt-key":{"n":"apt-key","p":"/apt-key","d":"管理Debian Linux系统中的软件包密钥"},"apt-sortpkgs":{"n":"apt-sortpkgs","p":"/apt-sortpkgs","d":"Debian Linux下对软件包索引文件进行排序的工具"},"aptitude":{"n":"aptitude","p":"/aptitude","d":"Debian Linux系统中软件包管理工具"},"ar":{"n":"ar","p":"/ar","d":"建立或修改备存文件,或是从备存文件中抽取文件"},"arch":{"n":"arch","p":"/arch","d":"显示当前主机的硬件架构类型"},"arj":{"n":"arj","p":"/arj","d":"用于创建和管理.arj压缩包"},"arp":{"n":"arp","p":"/arp","d":"arp 命令用于显示和修改 IP 到 MAC 转换表"},"arpd":{"n":"arpd","p":"/arpd","d":"收集免费ARP信息"},"arping":{"n":"arping","p":"/arping","d":"通过发送ARP协议报文测试网络"},"arptables":{"n":"arptables","p":"/arptables","d":"管理ARP包过滤规则表"},"arpwatch":{"n":"arpwatch","p":"/arpwatch","d":"监听网络上ARP的记录"},"as":{"n":"as","p":"/as","d":"汇编语言编译器"},"at":{"n":"at","p":"/at","d":"在指定时间执行一个任务"},"atop":{"n":"atop","p":"/atop","d":"监控Linux系统资源与进程的工具"},"atq":{"n":"atq","p":"/atq","d":"列出当前用户的at任务列表"},"atrm":{"n":"atrm","p":"/atrm","d":"删除待执行任务队列中的指定任务"},"awk":{"n":"awk","p":"/awk","d":"文本和数据进行处理的编程语言"},"axel":{"n":"axel","p":"/axel","d":"多线程下载工具"},"badblocks":{"n":"badblocks","p":"/badblocks","d":"查找磁盘中损坏的区块"},"base64":{"n":"base64","p":"/base64","d":"base64 编码/解码文件或标准输入输出"},"basename":{"n":"basename","p":"/basename","d":"打印目录或者文件的基本名称"},"batch":{"n":"batch","p":"/batch","d":"在系统不繁忙的时候执行定时任务"},"bc":{"n":"bc","p":"/bc","d":"算术操作精密运算工具"},"bg":{"n":"bg","p":"/bg","d":"将前台终端作业移动到后台运行"},"bind":{"n":"bind","p":"/bind","d":"显示或设置键盘按键与其相关的功能"},"blkid":{"n":"blkid","p":"/blkid","d":"查看块设备的文件系统类型、LABEL、UUID等信息"},"blockdev":{"n":"blockdev","p":"/blockdev","d":"从命令行调用区块设备控制程序"},"bmodinfo":{"n":"bmodinfo","p":"/bmodinfo","d":"显示给定模块的详细信息"},"break":{"n":"break","p":"/break","d":"结束for,while或until循环。"},"builtin":{"n":"builtin","p":"/builtin","d":"执行bash内建命令。"},"bunzip2":{"n":"bunzip2","p":"/bunzip2","d":"创一个bz2文件压缩包"},"bye":{"n":"bye","p":"/bye","d":"命令用于中断FTP连线并结束程序"},"bzcat":{"n":"bzcat","p":"/bzcat","d":"解压缩指定的.bz2文件"},"bzcmp":{"n":"bzcmp","p":"/bzcmp","d":"比较两个压缩包中的文件"},"bzdiff":{"n":"bzdiff","p":"/bzdiff","d":"直接比较两个.bz2压缩包中文件的不同"},"bzgrep":{"n":"bzgrep","p":"/bzgrep","d":"使用正则表达式搜索.bz2压缩包中文件"},"bzip2":{"n":"bzip2","p":"/bzip2","d":"将文件压缩成bz2格式"},"bzip2recover":{"n":"bzip2recover","p":"/bzip2recover","d":"恢复被破坏的.bz2压缩包中的文件"},"bzless":{"n":"bzless","p":"/bzless","d":"增强.bz2压缩包查看器"},"bzmore":{"n":"bzmore","p":"/bzmore","d":"查看bzip2压缩过的文本文件的内容"},"cal":{"n":"cal","p":"/cal","d":"显示当前日历或指定日期的日历"},"cancel":{"n":"cancel","p":"/cancel","d":"取消已存在的打印任务"},"cat":{"n":"cat","p":"/cat","d":"连接多个文件并打印到标准输出。"},"cd":{"n":"cd","p":"/cd","d":"切换用户当前工作目录。"},"cdrecord":{"n":"cdrecord","p":"/cdrecord","d":"Linux系统下光盘刻录功能命令"},"chage":{"n":"chage","p":"/chage","d":"修改帐号和密码的有效期限"},"chattr":{"n":"chattr","p":"/chattr","d":"用来改变文件属性"},"chcon":{"n":"chcon","p":"/chcon","d":"修改对象(文件)的安全上下文"},"chfn":{"n":"chfn","p":"/chfn","d":"用来改变finger命令显示的信息"},"chgrp":{"n":"chgrp","p":"/chgrp","d":"用来变更文件或目录的所属群组"},"chkconfig":{"n":"chkconfig","p":"/chkconfig","d":"检查或设置系统的各种服务"},"chmod":{"n":"chmod","p":"/chmod","d":"用来变更文件或目录的权限"},"chown":{"n":"chown","p":"/chown","d":"用来变更文件或目录的拥有者或所属群组"},"chpasswd":{"n":"chpasswd","p":"/chpasswd","d":"批量更新用户口令的工具"},"chroot":{"n":"chroot","p":"/chroot","d":"把根目录换成指定的目的目录"},"chsh":{"n":"chsh","p":"/chsh","d":"用来更换登录系统时使用的shell"},"cksum":{"n":"cksum","p":"/cksum","d":"检查文件的CRC是否正确"},"clear":{"n":"clear","p":"/clear","d":"清除当前屏幕终端上的任何信息"},"clock":{"n":"clock","p":"/clock","d":"用于调整 RTC 时间"},"clockdiff":{"n":"clockdiff","p":"/clockdiff","d":"检测两台linux主机的时间差"},"cmp":{"n":"cmp","p":"/cmp","d":"比较两个文件是否有差异"},"col":{"n":"col","p":"/col","d":"过滤控制字符"},"colrm":{"n":"colrm","p":"/colrm","d":"删除文件中的指定列"},"comm":{"n":"comm","p":"/comm","d":"按行比较两个已排序的文件。"},"command":{"n":"command","p":"/command","d":"调用并执行指定的命令"},"compress":{"n":"compress","p":"/compress","d":"使用Lempress-Ziv编码压缩数据文件"},"consoletype":{"n":"consoletype","p":"/consoletype","d":"输出已连接的终端类型"},"continue":{"n":"continue","p":"/continue","d":"结束本次循环,继续执行下一个for,while或until循环。"},"convertquota":{"n":"convertquota","p":"/convertquota","d":"把老的配额文件转换为新的格式"},"cp":{"n":"cp","p":"/cp","d":"将源文件或目录复制到目标文件或目录中"},"cpio":{"n":"cpio","p":"/cpio","d":"用来建立、还原备份档的工具程序"},"crontab":{"n":"crontab","p":"/crontab","d":"提交和管理用户的需要周期性执行的任务"},"csplit":{"n":"csplit","p":"/csplit","d":"将一个大文件分割成小的碎片文件"},"cu":{"n":"cu","p":"/cu","d":"用于连接另一个系统主机"},"cupsdisable":{"n":"cupsdisable","p":"/cupsdisable","d":"停止指定的打印机"},"cupsenable":{"n":"cupsenable","p":"/cupsenable","d":"启动指定的打印机"},"curl":{"n":"curl","p":"/curl","d":"利用URL规则在命令行下工作的文件传输工具"},"cut":{"n":"cut","p":"/cut","d":"连接文件并打印到标准输出设备上"},"date":{"n":"date","p":"/date","d":"显示或设置系统时间与日期"},"dd":{"n":"dd","p":"/dd","d":"复制文件并对原文件的内容进行转换和格式化处理"},"declare":{"n":"declare","p":"/declare","d":"声明变量,设置或显示变量的值和属性。"},"depmod":{"n":"depmod","p":"/depmod","d":"分析可载入模块的相依性"},"df":{"n":"df","p":"/df","d":"显示磁盘的相关信息"},"dhclient":{"n":"dhclient","p":"/dhclient","d":"动态获取或释放IP地址"},"dhcpd":{"n":"dhcpd","p":"/dhcpd","d":"运行DHCP服务器"},"dhcrelay":{"n":"dhcrelay","p":"/dhcrelay","d":"使用dhcrelay命令可以提供中继DHCP和BOOTP请求"},"diff":{"n":"diff","p":"/diff","d":"比较给定的两个文件的不同"},"diff3":{"n":"diff3","p":"/diff3","d":"比较3个文件不同的地方"},"diffstat":{"n":"diffstat","p":"/diffstat","d":"显示diff命令输出信息的柱状图"},"dig":{"n":"dig","p":"/dig","d":"域名查询工具"},"dircolors":{"n":"dircolors","p":"/dircolors","d":"置ls命令在显示目录或文件时所用的色彩"},"dirname":{"n":"dirname","p":"/dirname","d":"去除文件名中的非目录部分"},"dirs":{"n":"dirs","p":"/dirs","d":"显示目录堆栈。"},"disown":{"n":"disown","p":"/disown","d":"从当前的shell中移除作业。"},"dmesg":{"n":"dmesg","p":"/dmesg","d":"显示Linux系统启动信息"},"dmidecode":{"n":"dmidecode","p":"/dmidecode","d":"在Linux系统下获取有关硬件方面的信息"},"dnf":{"n":"dnf","p":"/dnf","d":"新一代的RPM软件包管理器"},"dnsdomainname":{"n":"dnsdomainname","p":"/dnsdomainname","d":"定义DNS系统中FQDN名称的域名"},"domainname":{"n":"domainname","p":"/domainname","d":"显示和设置系统的NIS域名"},"dos2unix":{"n":"dos2unix","p":"/dos2unix","d":"将DOS格式文本文件转换成Unix格式"},"dpkg-deb":{"n":"dpkg-deb","p":"/dpkg-deb","d":"Debian Linux下的软件包管理工具"},"dpkg-divert":{"n":"dpkg-divert","p":"/dpkg-divert","d":"Debian Linux中创建并管理一个转向列表"},"dpkg-preconfigure":{"n":"dpkg-preconfigure","p":"/dpkg-preconfigure","d":"Debian Linux中软件包安装之前询问问题"},"dpkg-query":{"n":"dpkg-query","p":"/dpkg-query","d":"Debian Linux中软件包的查询工具"},"dpkg-reconfigure":{"n":"dpkg-reconfigure","p":"/dpkg-reconfigure","d":"Debian Linux中重新配制一个已经安装的软件包"},"dpkg-split":{"n":"dpkg-split","p":"/dpkg-split","d":"Debian Linux中将大软件包分割成小包"},"dpkg-statoverride":{"n":"dpkg-statoverride","p":"/dpkg-statoverride","d":"Debian Linux中覆盖文件的所有权和模式"},"dpkg-trigger":{"n":"dpkg-trigger","p":"/dpkg-trigger","d":"Debian Linux下的软件包触发器"},"dpkg":{"n":"dpkg","p":"/dpkg","d":"Debian Linux系统上安装、创建和管理软件包"},"dris":{"n":"dris","p":"/dris","d":"显示和清空目录堆栈中的内容"},"dstat":{"n":"dstat","p":"/dstat","d":"通用的系统资源统计工具"},"du":{"n":"du","p":"/du","d":"显示每个文件和目录的磁盘使用空间"},"dump":{"n":"dump","p":"/dump","d":"用于备份ext2或者ext3文件系统"},"e2fsck":{"n":"e2fsck","p":"/e2fsck","d":"用于检查第二扩展文件系统的完整性"},"e2label":{"n":"e2label","p":"/e2label","d":"设置第二扩展文件系统的卷标"},"echo":{"n":"echo","p":"/echo","d":"输出指定的字符串或者变量"},"ed":{"n":"ed","p":"/ed","d":"单行纯文本编辑器"},"edquota":{"n":"edquota","p":"/edquota","d":"用于编辑指定用户或工作组磁盘配额"},"egrep":{"n":"egrep","p":"/egrep","d":"在文件内查找指定的字符串"},"eject":{"n":"eject","p":"/eject","d":"用来退出抽取式设备"},"elinks":{"n":"elinks","p":"/elinks","d":"纯文本界面的WWW浏览器"},"elm":{"n":"elm","p":"/elm","d":"纯文本邮件客户端程序"},"emacs":{"n":"emacs","p":"/emacs","d":"功能强大的全屏文本编辑器"},"enable":{"n":"enable","p":"/enable","d":"启动或禁用shell内建命令"},"env":{"n":"env","p":"/env","d":"显示系统中已存在的环境变量"},"ethtool":{"n":"ethtool","p":"/ethtool","d":"显示或修改以太网卡的配置信息"},"ex":{"n":"ex","p":"/ex","d":"启动vim编辑器的ex编辑模式"},"exec":{"n":"exec","p":"/exec","d":"调用并执行指定的命令"},"exit":{"n":"exit","p":"/exit","d":"退出当前的shell。"},"expand":{"n":"expand","p":"/expand","d":"将文件的制表符转换为空白字符"},"export":{"n":"export","p":"/export","d":"为shell变量或函数设置导出属性。"},"exportfs":{"n":"exportfs","p":"/exportfs","d":"管理NFS共享文件系统列表"},"expr":{"n":"expr","p":"/expr","d":"一款表达式计算工具"},"false":{"n":"false","p":"/false","d":"返回状态为失败。"},"fc":{"n":"fc","p":"/fc","d":"显示历史列表中的命令或修改指定的历史命令并执行。"},"fdisk":{"n":"fdisk","p":"/fdisk","d":"查看磁盘使用情况和磁盘分区"},"fg":{"n":"fg","p":"/fg","d":"将后台作业移动到前台终端运行"},"fgrep":{"n":"fgrep","p":"/fgrep","d":"为文件搜索文字字符串"},"file":{"n":"file","p":"/file","d":"用来探测给定文件的类型"},"find":{"n":"find","p":"/find","d":"在指定目录下查找文件"},"findfs":{"n":"findfs","p":"/findfs","d":"标签或UUID查找文件系统"},"finger":{"n":"finger","p":"/finger","d":"用于查找并显示用户信息"},"firewall-cmd":{"n":"firewall-cmd","p":"/firewall-cmd","d":"Linux上新用的防火墙软件,跟iptables差不多的工具"},"fishshell":{"n":"fishshell","p":"/fishshell","d":"比 bash 更好用的 shell"},"fmt":{"n":"fmt","p":"/fmt","d":"读取文件后优化处理并输出"},"fold":{"n":"fold","p":"/fold","d":"控制文件内容输出时所占用的屏幕宽度"},"fping":{"n":"fping","p":"/fping","d":"fping检测主机是否存在"},"free":{"n":"free","p":"/free","d":"显示内存的使用情况"},"fsck":{"n":"fsck","p":"/fsck","d":"检查并且试图修复文件系统中的错误"},"ftp":{"n":"ftp","p":"/ftp","d":"用来设置文件系统相关功能"},"ftpcount":{"n":"ftpcount","p":"/ftpcount","d":"显示目前已FTP登入的用户人数"},"ftpshut":{"n":"ftpshut","p":"/ftpshut","d":"在指定的时间关闭FTP服务器"},"ftptop":{"n":"ftptop","p":"/ftptop","d":"proftpd服务器的连接状态"},"ftpwho":{"n":"ftpwho","p":"/ftpwho","d":"显示当前每个ftp会话信息"},"fuser":{"n":"fuser","p":"/fuser","d":"使用文件或文件结构识别进程"},"gcc":{"n":"gcc","p":"/gcc","d":"基于C/C++的编译器"},"gcov":{"n":"gcov","p":"/gcov","d":"测试程序的代码覆盖率的工具"},"gdb":{"n":"gdb","p":"/gdb","d":"功能强大的程序调试器"},"get_module":{"n":"get_module","p":"/get_module","d":"获取Linux内核模块的详细信息"},"getenforce":{"n":"getenforce","p":"/getenforce","d":"显示当前SELinux的应用模式,是强制、执行还是停用"},"getsebool":{"n":"getsebool","p":"/getsebool","d":"查询SElinux策略内各项规则的布尔值"},"git":{"n":"git","p":"/git","d":"是目前世界上最先进的分布式版本控制系统"},"gpasswd":{"n":"gpasswd","p":"/gpasswd","d":"Linux下工作组文件的管理工具"},"gpm":{"n":"gpm","p":"/gpm","d":"提供文字模式下的滑鼠事件处理"},"grep":{"n":"grep","p":"/grep","d":"强大的文本搜索工具"},"groupadd":{"n":"groupadd","p":"/groupadd","d":"用于创建一个新的工作组"},"groupdel":{"n":"groupdel","p":"/groupdel","d":"用于删除指定的工作组"},"groupmod":{"n":"groupmod","p":"/groupmod","d":"更改群组识别码或名称"},"groups":{"n":"groups","p":"/groups","d":"打印指定用户所在组的名称。"},"grpck":{"n":"grpck","p":"/grpck","d":"用于验证组文件的完整性"},"grpconv":{"n":"grpconv","p":"/grpconv","d":"用来开启群组的投影密码"},"grpunconv":{"n":"grpunconv","p":"/grpunconv","d":"用来关闭群组的投影密码"},"grub":{"n":"grub","p":"/grub","d":"多重引导程序grub的命令行shell工具"},"gunzip":{"n":"gunzip","p":"/gunzip","d":"用来解压缩文件"},"gzexe":{"n":"gzexe","p":"/gzexe","d":"用来压缩可执行文件"},"gzip":{"n":"gzip","p":"/gzip","d":"用来压缩文件"},"halt":{"n":"halt","p":"/halt","d":"关闭正在运行的Linux操作系统"},"hdparm":{"n":"hdparm","p":"/hdparm","d":"显示与设定硬盘的参数"},"head":{"n":"head","p":"/head","d":"显示文件的开头部分。"},"help":{"n":"help","p":"/help","d":"该命令是bash内建命令,用于显示bash内建命令的帮助信息。"},"hexdump":{"n":"hexdump","p":"/hexdump","d":"显示文件十六进制格式"},"history":{"n":"history","p":"/history","d":"显示或操作历史列表。"},"host":{"n":"host","p":"/host","d":"常用的分析域名查询工具"},"hostid":{"n":"hostid","p":"/hostid","d":"显示当前主机的十六进制数字标识。"},"hostname":{"n":"hostname","p":"/hostname","d":"显示和设置系统的主机名"},"hostnamectl":{"n":"hostnamectl","p":"/hostnamectl","d":"查询或更改系统主机名"},"hping3":{"n":"hping3","p":"/hping3","d":"测试网络及主机的安全"},"htdigest":{"n":"htdigest","p":"/htdigest","d":"Apache服务器内置工具"},"htop":{"n":"htop","p":"/htop","d":"[非内部命令]一个互动的进程查看器,可以动态观察系统进程状况"},"htpasswd":{"n":"htpasswd","p":"/htpasswd","d":"apache服务器创建密码认证文件"},"hwclock":{"n":"hwclock","p":"/hwclock","d":"显示与设定硬件时钟"},"iconv":{"n":"iconv","p":"/iconv","d":"转换文件的编码方式"},"id":{"n":"id","p":"/id","d":"打印真实以及有效的用户和所在组的信息"},"ifcfg":{"n":"ifcfg","p":"/ifcfg","d":"置Linux中的网络接口参数"},"ifconfig":{"n":"ifconfig","p":"/ifconfig","d":"配置和显示Linux系统网卡的网络参数"},"ifdown":{"n":"ifdown","p":"/ifdown","d":"禁用指定的网络接口"},"ifstat":{"n":"ifstat","p":"/ifstat","d":"统计网络接口流量状态"},"iftop":{"n":"iftop","p":"/iftop","d":"一款实时流量监控工具"},"ifup":{"n":"ifup","p":"/ifup","d":"激活指定的网络接口"},"indent":{"n":"indent","p":"/indent","d":"格式化C语言的源文件"},"info":{"n":"info","p":"/info","d":"Linux下info格式的帮助指令"},"init":{"n":"init","p":"/init","d":"init进程是所有Linux进程的父进程"},"inotifywait":{"n":"inotifywait","p":"/inotifywait","d":"异步文件系统监控机制"},"insmod":{"n":"insmod","p":"/insmod","d":"将给定的模块加载到内核中"},"install":{"n":"install","p":"/install","d":"安装或升级软件或备份数据"},"iostat":{"n":"iostat","p":"/iostat","d":"监视系统输入输出设备和CPU的使用情况"},"iotop":{"n":"iotop","p":"/iotop","d":"用来监视磁盘I/O使用状况的工具"},"ip":{"n":"ip","p":"/ip","d":"网络配置工具"},"ip6tables-restore":{"n":"ip6tables-restore","p":"/ip6tables-restore","d":"还原ip6tables表"},"ip6tables-save":{"n":"ip6tables-save","p":"/ip6tables-save","d":"保存ip6tables表配置"},"ip6tables":{"n":"ip6tables","p":"/ip6tables","d":"linux中防火墙软件"},"ipcalc":{"n":"ipcalc","p":"/ipcalc","d":"简单的IP地址计算器"},"ipcrm":{"n":"ipcrm","p":"/ipcrm","d":"删除消息队列、信号集、或者共享内存标识"},"ipcs":{"n":"ipcs","p":"/ipcs","d":"分析消息队列共享内存和信号量"},"iperf":{"n":"iperf","p":"/iperf","d":"网络性能测试工具"},"iptables-restore":{"n":"iptables-restore","p":"/iptables-restore","d":"还原iptables表的配置"},"iptables-save":{"n":"iptables-save","p":"/iptables-save","d":"备份iptables的表配置"},"iptables":{"n":"iptables","p":"/iptables","d":"Linux上常用的防火墙软件"},"iptraf":{"n":"iptraf","p":"/iptraf","d":"实时地监视网卡流量"},"iptstate":{"n":"iptstate","p":"/iptstate","d":"显示iptables的工作状态"},"ispell":{"n":"ispell","p":"/ispell","d":"检查文件中出现的拼写错误"},"jed":{"n":"jed","p":"/jed","d":"主要用于编辑代码的编辑器"},"jobs":{"n":"jobs","p":"/jobs","d":"显示作业的状态。"},"joe":{"n":"joe","p":"/joe","d":"强大的纯文本编辑器"},"join":{"n":"join","p":"/join","d":"两个文件中指定栏位内容相同的行连接起来"},"jq":{"n":"jq","p":"/jq","d":"一个灵活的轻量级命令行JSON处理器"},"jwhois":{"n":"jwhois","p":"/jwhois","d":"whois 客户端服务"},"kernelversion":{"n":"kernelversion","p":"/kernelversion","d":"打印当前内核的主版本号"},"kexec":{"n":"kexec","p":"/kexec","d":"从当前正在运行的内核引导到一个新内核"},"kill":{"n":"kill","p":"/kill","d":"发送信号到进程。"},"killall":{"n":"killall","p":"/killall","d":"使用进程的名称来杀死一组进程"},"last":{"n":"last","p":"/last","d":"列出目前与过去登入系统的用户相关信息"},"lastb":{"n":"lastb","p":"/lastb","d":"列出登入系统失败的用户相关信息"},"lastlog":{"n":"lastlog","p":"/lastlog","d":"显示系统中所有用户最近一次登录信息"},"ld":{"n":"ld","p":"/ld","d":"将目标文件连接为可执行程序"},"ldconfig":{"n":"ldconfig","p":"/ldconfig","d":"动态链接库管理命令"},"ldd":{"n":"ldd","p":"/ldd","d":"打印程序或者库文件所依赖的共享库列表"},"less":{"n":"less","p":"/less","d":"分屏上下翻页浏览文件内容"},"let":{"n":"let","p":"/let","d":"简单的计算器,执行算术表达式。"},"lftp":{"n":"lftp","p":"/lftp","d":"优秀的文件客户端程序"},"lftpget":{"n":"lftpget","p":"/lftpget","d":"调用lftp指令下载指定的文件"},"lha":{"n":"lha","p":"/lha","d":"压缩或解压缩lzh格式文件"},"lilo":{"n":"lilo","p":"/lilo","d":"安装核心载入开机管理程序"},"ln":{"n":"ln","p":"/ln","d":"用来为文件创建链接"},"lnstat":{"n":"lnstat","p":"/lnstat","d":"显示Linux系统的网路状态"},"local":{"n":"local","p":"/local","d":"在函数内定义局部变量。"},"locate":{"n":"locate","p":"/locate","d":"比 find 好用的文件查找工具"},"logger":{"n":"logger","p":"/logger","d":"在系统日志中记录相应条目"},"login":{"n":"login","p":"/login","d":"登录系统或切换用户身份"},"logname":{"n":"logname","p":"/logname","d":"打印当前终端登录用户的名称。"},"logout":{"n":"logout","p":"/logout","d":"退出当前登录的Shell"},"logrotate":{"n":"logrotate","p":"/logrotate","d":"系统日志进行轮转、压缩和删除"},"logsave":{"n":"logsave","p":"/logsave","d":"将命令的输出信息保存到指定的日志文件"},"logwatch":{"n":"logwatch","p":"/logwatch","d":"可定制和可插入式的日志监视系统"},"look":{"n":"look","p":"/look","d":"显示文件中以指定字符串开头的任意行"},"losetup":{"n":"losetup","p":"/losetup","d":"设定与控制循环(loop)设备"},"lp":{"n":"lp","p":"/lp","d":"打印文件或修改排队的打印任务"},"lpadmin":{"n":"lpadmin","p":"/lpadmin","d":"配置CUPS套件中的打印机和类"},"lpc":{"n":"lpc","p":"/lpc","d":"命令行方式打印机控制程序"},"lpq":{"n":"lpq","p":"/lpq","d":"显示打印队列中的打印任务的状态信息"},"lpr":{"n":"lpr","p":"/lpr","d":"将文件发送给指定打印机进行打印"},"lprm":{"n":"lprm","p":"/lprm","d":"删除打印队列中的打印任务"},"lpstat":{"n":"lpstat","p":"/lpstat","d":"显示CUPS中打印机的状态信息"},"ls":{"n":"ls","p":"/ls","d":"显示目录内容列表"},"lsattr":{"n":"lsattr","p":"/lsattr","d":"查看文件的第二扩展文件系统属性"},"lsb_release":{"n":"lsb_release","p":"/lsb_release","d":"显示发行版本信息"},"lsblk":{"n":"lsblk","p":"/lsblk","d":"列出块设备信息"},"lscpu":{"n":"lscpu","p":"/lscpu","d":"显示有关CPU架构的信息"},"lsmod":{"n":"lsmod","p":"/lsmod","d":"显示已载入系统的模块"},"lsof":{"n":"lsof","p":"/lsof","d":"显示Linux系统当前已打开的所有文件列表 `lsof -p pid`"},"lspci":{"n":"lspci","p":"/lspci","d":"显示当前主机的所有PCI总线信息"},"lsusb":{"n":"lsusb","p":"/lsusb","d":"显示本机的USB设备列表信息"},"ltrace":{"n":"ltrace","p":"/ltrace","d":"用来跟踪进程调用库函数的情况"},"lvcreate":{"n":"lvcreate","p":"/lvcreate","d":"用于创建LVM的逻辑卷"},"lvdisplay":{"n":"lvdisplay","p":"/lvdisplay","d":"显示逻辑卷属性"},"lvextend":{"n":"lvextend","p":"/lvextend","d":"扩展逻辑卷空间"},"lvreduce":{"n":"lvreduce","p":"/lvreduce","d":"收缩逻辑卷空间"},"lvremove":{"n":"lvremove","p":"/lvremove","d":"删除指定LVM逻辑卷"},"lvresize":{"n":"lvresize","p":"/lvresize","d":"调整逻辑卷空间大小"},"lvscan":{"n":"lvscan","p":"/lvscan","d":"扫描逻辑卷"},"lynx":{"n":"lynx","p":"/lynx","d":"纯文本模式的网页浏览器"},"mail":{"n":"mail","p":"/mail","d":"命令行下发送和接收电子邮件"},"mailq":{"n":"mailq","p":"/mailq","d":"显示待发送的邮件队列"},"mailstat":{"n":"mailstat","p":"/mailstat","d":"显示到达的邮件状态"},"make":{"n":"make","p":"/make","d":"GNU的工程化编译工具"},"man":{"n":"man","p":"/man","d":"查看Linux中的指令帮助"},"mapfile":{"n":"mapfile","p":"/mapfile","d":"从标准输入读取行并赋值到数组。"},"md5sum":{"n":"md5sum","p":"/md5sum","d":"计算和校验文件报文摘要的工具程序"},"mesg":{"n":"mesg","p":"/mesg","d":"设置当前终端的写权限"},"mii-tool":{"n":"mii-tool","p":"/mii-tool","d":"配置网络设备协商方式的工具"},"mkbootdisk":{"n":"mkbootdisk","p":"/mkbootdisk","d":"可建立目前系统的启动盘"},"mkdir":{"n":"mkdir","p":"/mkdir","d":"用来创建目录"},"mke2fs":{"n":"mke2fs","p":"/mke2fs","d":"创建磁盘分区上的“etc2/etc3”文件系统"},"mkfs":{"n":"mkfs","p":"/mkfs","d":"用于在设备上创建Linux文件系统"},"mkinitrd":{"n":"mkinitrd","p":"/mkinitrd","d":"建立要载入ramdisk的映像文件"},"mkisofs":{"n":"mkisofs","p":"/mkisofs","d":"建立ISO 9660映像文件"},"mknod":{"n":"mknod","p":"/mknod","d":"创建字符设备文件和块设备文件"},"mkswap":{"n":"mkswap","p":"/mkswap","d":"建立和设置SWAP交换分区"},"mktemp":{"n":"mktemp","p":"/mktemp","d":"创建临时文件供shell脚本使用"},"modprobe":{"n":"modprobe","p":"/modprobe","d":"自动处理可载入模块"},"more":{"n":"more","p":"/more","d":"显示文件内容,每次显示一屏"},"mount":{"n":"mount","p":"/mount","d":"用于挂载Linux系统外的文件"},"mpstat":{"n":"mpstat","p":"/mpstat","d":"显示各个可用CPU的状态"},"mtools":{"n":"mtools","p":"/mtools","d":"显示mtools支持的指令"},"mv":{"n":"mv","p":"/mv","d":"用来对文件或目录重新命名"},"mysql":{"n":"mysql","p":"/mysql","d":"MySQL服务器客户端工具"},"mysqladmin":{"n":"mysqladmin","p":"/mysqladmin","d":"MySQL服务器管理客户端"},"mysqldump":{"n":"mysqldump","p":"/mysqldump","d":"MySQL数据库中备份工具"},"mysqlimport":{"n":"mysqlimport","p":"/mysqlimport","d":"为MySQL服务器用命令行方式导入数据"},"mysqlshow":{"n":"mysqlshow","p":"/mysqlshow","d":"显示MySQL中数据库相关信息"},"named-checkzone":{"n":"named-checkzone","p":"/named-checkzone","d":"使用named-checkzone命令可以进行区域文件有效性检查和转换,必须指定区域名称和区域文件名称"},"nano":{"n":"nano","p":"/nano","d":"字符终端文本编辑器"},"nc":{"n":"nc","p":"/nc","d":"用于设置路由器,是网络工具中的瑞士军刀。"},"ncftp":{"n":"ncftp","p":"/ncftp","d":"是增强的的FTP工具"},"nethogs":{"n":"nethogs","p":"/nethogs","d":"终端下的网络流量监控工具"},"netstat":{"n":"netstat","p":"/netstat","d":"查看Linux中网络系统状态信息"},"newusers":{"n":"newusers","p":"/newusers","d":"用于批处理的方式一次创建多个命令"},"nfsstat":{"n":"nfsstat","p":"/nfsstat","d":"列出NFS客户端和服务器的工作状态"},"ngrep":{"n":"ngrep","p":"/ngrep","d":"方便的数据包匹配和显示工具"},"nice":{"n":"nice","p":"/nice","d":"改变程序执行的优先权等级"},"nisdomainname":{"n":"nisdomainname","p":"/nisdomainname","d":"显示主机NIS的域名"},"nl":{"n":"nl","p":"/nl","d":"为每一个文件添加行号。"},"nm":{"n":"nm","p":"/nm","d":"显示二进制目标文件的符号表"},"nmap":{"n":"nmap","p":"/nmap","d":"网络探测和安全审核"},"nmcli":{"n":"nmcli","p":"/nmcli","d":"地址配置工具"},"nohup":{"n":"nohup","p":"/nohup","d":"将程序以忽略挂起信号的方式运行起来"},"nologin":{"n":"nologin","p":"/nologin","d":"拒绝用户登录系统"},"nproc":{"n":"nproc","p":"/nproc","d":"打印可用的处理器单元数量。"},"nslookup":{"n":"nslookup","p":"/nslookup","d":"查询域名DNS信息的工具"},"ntpdate":{"n":"ntpdate","p":"/ntpdate","d":"使用网络计时协议(NTP)设置日期和时间"},"ntsysv":{"n":"ntsysv","p":"/ntsysv","d":"集中管理系统的各种服务"},"objdump":{"n":"objdump","p":"/objdump","d":"显示二进制文件信息"},"od":{"n":"od","p":"/od","d":"输出文件的八进制、十六进制等格式编码的字节"},"openssl":{"n":"openssl","p":"/openssl","d":"强大的安全套接字层密码库"},"parted":{"n":"parted","p":"/parted","d":"磁盘分区和分区大小调整工具"},"partprobe":{"n":"partprobe","p":"/partprobe","d":"不重启的情况下重读分区"},"passwd":{"n":"passwd","p":"/passwd","d":"用于让用户可以更改自己的密码"},"paste":{"n":"paste","p":"/paste","d":"将多个文件按列队列合并"},"patch":{"n":"patch","p":"/patch","d":"为开放源代码软件安装补丁程序"},"pathchk":{"n":"pathchk","p":"/pathchk","d":"检查文件中不可移植的部分"},"perl":{"n":"perl","p":"/perl","d":"perl语言解释器"},"pfctl":{"n":"pfctl","p":"/pfctl","d":"PF防火墙的配置命令"},"pgrep":{"n":"pgrep","p":"/pgrep","d":"根据用户给出的信息在当前运行进程中查找并列出符合条件的进程ID(PID)"},"php":{"n":"php","p":"/php","d":"PHP语言的命令行接口"},"pico":{"n":"pico","p":"/pico","d":"功能强大全屏幕的文本编辑器"},"pidof":{"n":"pidof","p":"/pidof","d":"查找指定名称的进程的进程号ID号"},"pigz":{"n":"pigz","p":"/pigz","d":"可以用来解压缩文件,gzip的并行实现升级版"},"ping":{"n":"ping","p":"/ping","d":"测试主机之间网络的连通性"},"pkill":{"n":"pkill","p":"/pkill","d":"可以按照进程名杀死进程"},"pmap":{"n":"pmap","p":"/pmap","d":"报告进程的内存映射关系"},"popd":{"n":"popd","p":"/popd","d":"从目录堆栈中删除目录。"},"poweroff":{"n":"poweroff","p":"/poweroff","d":"关闭Linux系统,关闭记录会被写入到/var/log/wtmp日志文件中"},"ppp-off":{"n":"ppp-off","p":"/ppp-off","d":"关闭ppp连线"},"pr":{"n":"pr","p":"/pr","d":"将文本文件转换成适合打印的格式"},"printf":{"n":"printf","p":"/printf","d":"格式化并输出结果。"},"protoize":{"n":"protoize","p":"/protoize","d":"GNU-C代码转换为ANSI-C代码"},"ps":{"n":"ps","p":"/ps","d":"报告当前系统的进程状态"},"pssh":{"n":"pssh","p":"/pssh","d":"批量管理执行"},"pstack":{"n":"pstack","p":"/pstack","d":"显示每个进程的栈跟踪"},"pstree":{"n":"pstree","p":"/pstree","d":"以树状图的方式展现进程之间的派生关系"},"pushd":{"n":"pushd","p":"/pushd","d":"将目录添加到目录堆栈顶部。"},"pv":{"n":"pv","p":"/pv","d":"显示当前在命令行执行的命令的进度信息,管道查看器"},"pvchange":{"n":"pvchange","p":"/pvchange","d":"修改物理卷属性"},"pvck":{"n":"pvck","p":"/pvck","d":"检测物理卷的LVM元数据的一致性"},"pvcreate":{"n":"pvcreate","p":"/pvcreate","d":"将物理硬盘分区初始化为物理卷"},"pvdisplay":{"n":"pvdisplay","p":"/pvdisplay","d":"显示物理卷的属性"},"pvremove":{"n":"pvremove","p":"/pvremove","d":"删除一个存在的物理卷"},"pvs":{"n":"pvs","p":"/pvs","d":"输出物理卷信息报表"},"pvscan":{"n":"pvscan","p":"/pvscan","d":"扫描系统中所有硬盘的物理卷列表"},"pwck":{"n":"pwck","p":"/pwck","d":"用来验证系统认证文件内容和格式的完整性"},"pwconv":{"n":"pwconv","p":"/pwconv","d":"用来开启用户的投影密码"},"pwd":{"n":"pwd","p":"/pwd","d":"显示当前工作目录的绝对路径。"},"pwunconv":{"n":"pwunconv","p":"/pwunconv","d":"用来关闭用户的投影密码"},"quota":{"n":"quota","p":"/quota","d":"显示磁盘已使用的空间与限制"},"quotacheck":{"n":"quotacheck","p":"/quotacheck","d":"检查磁盘的使用空间与限制"},"quotaoff":{"n":"quotaoff","p":"/quotaoff","d":"关闭Linux内核中指定文件系统的磁盘配额功能"},"quotaon":{"n":"quotaon","p":"/quotaon","d":"激活Linux内核中指定文件系统的磁盘配额功能"},"rcconf":{"n":"rcconf","p":"/rcconf","d":"Debian Linux下的运行等级服务配置工具"},"rcp":{"n":"rcp","p":"/rcp","d":"使在两台Linux主机之间的文件复制操作更简单"},"read":{"n":"read","p":"/read","d":"从键盘读取变量值"},"readelf":{"n":"readelf","p":"/readelf","d":"用于显示elf格式文件的信息"},"readonly":{"n":"readonly","p":"/readonly","d":"标记shell变量或函数为只读"},"reboot":{"n":"reboot","p":"/reboot","d":"重新启动正在运行的Linux操作系统"},"reject":{"n":"reject","p":"/reject","d":"指示打印系统拒绝发往指定目标打印机的打印任务"},"rename":{"n":"rename","p":"/rename","d":"用字符串替换的方式批量改变文件名"},"renice":{"n":"renice","p":"/renice","d":"修改正在运行的进程的调度优先级"},"repquota":{"n":"repquota","p":"/repquota","d":"报表的格式输出磁盘空间限制的状态"},"resize":{"n":"resize","p":"/resize","d":"命令设置终端机视窗的大小"},"restore":{"n":"restore","p":"/restore","d":"所进行的操作和dump指令相反"},"restorecon":{"n":"restorecon","p":"/restorecon","d":"恢复文件的安全上下文"},"return":{"n":"return","p":"/return","d":"从函数中退出并返回数值。"},"rev":{"n":"rev","p":"/rev","d":"将文件内容以字符为单位反序输出"},"rexec":{"n":"rexec","p":"/rexec","d":"远程执行Linux系统下命令"},"rlogin":{"n":"rlogin","p":"/rlogin","d":"从当前终端登录到远程Linux主机"},"rm":{"n":"rm","p":"/rm","d":"用于删除给定的文件和目录"},"rmdir":{"n":"rmdir","p":"/rmdir","d":"用来删除空目录"},"rmmod":{"n":"rmmod","p":"/rmmod","d":"从运行的内核中移除指定的内核模块"},"route":{"n":"route","p":"/route","d":"显示并设置Linux中静态路由表"},"rpm":{"n":"rpm","p":"/rpm","d":"RPM软件包的管理工具"},"rpm2cpio":{"n":"rpm2cpio","p":"/rpm2cpio","d":"将RPM软件包转换为cpio格式的文件"},"rpmbuild":{"n":"rpmbuild","p":"/rpmbuild","d":"创建RPM的二进制软件包和源码软件包"},"rpmdb":{"n":"rpmdb","p":"/rpmdb","d":"初始化和重建RPM数据库"},"rpmquery":{"n":"rpmquery","p":"/rpmquery","d":"从RPM数据库中查询软件包信息"},"rpmsign":{"n":"rpmsign","p":"/rpmsign","d":"使用RPM软件包的签名管理工具"},"rpmverify":{"n":"rpmverify","p":"/rpmverify","d":"验证已安装的RPM软件包的正确性"},"rsh":{"n":"rsh","p":"/rsh","d":"连接远程主机并执行命令"},"rsync":{"n":"rsync","p":"/rsync","d":"远程数据同步工具"},"runlevel":{"n":"runlevel","p":"/runlevel","d":"打印当前Linux系统的运行等级"},"sar":{"n":"sar","p":"/sar","d":"系统运行状态统计工具"},"scp":{"n":"scp","p":"/scp","d":"加密的方式在本地主机和远程主机之间复制文件"},"screen":{"n":"screen","p":"/screen","d":"用于命令行终端切换"},"script":{"n":"script","p":"/script","d":"记录终端会话的所有操作"},"scriptreplay":{"n":"scriptreplay","p":"/scriptreplay","d":"重新播放终端会话的所有操作"},"sed":{"n":"sed","p":"/sed","d":"功能强大的流式文本编辑器"},"seinfo":{"n":"seinfo","p":"/seinfo","d":"查询SELinux的策略提供多少相关规则"},"semanage":{"n":"semanage","p":"/semanage","d":"默认目录的安全上下文查询与修改"},"sendmail":{"n":"sendmail","p":"/sendmail","d":"著名电子邮件服务器"},"seq":{"n":"seq","p":"/seq","d":"以指定增量从首数开始打印数字到尾数"},"service":{"n":"service","p":"/service","d":"控制系统服务的实用工具"},"sesearch":{"n":"sesearch","p":"/sesearch","d":"查询SELinux策略的规则详情"},"set":{"n":"set","p":"/set","d":"显示或设置shell特性及shell变量"},"setfacl":{"n":"setfacl","p":"/setfacl","d":"设置文件访问控制列表"},"setpci":{"n":"setpci","p":"/setpci","d":"查询和配置PCI设备的使用工具"},"setsebool":{"n":"setsebool","p":"/setsebool","d":"修改SElinux策略内各项规则的布尔值"},"setsid":{"n":"setsid","p":"/setsid","d":"在新的会话中运行程序"},"sftp-server":{"n":"sftp-server","p":"/sftp-server","d":"sftp协议的服务器端程序"},"sftp":{"n":"sftp","p":"/sftp","d":"交互式的文件传输程序"},"sh":{"n":"sh","p":"/sh","d":"shell命令解释器"},"shift":{"n":"shift","p":"/shift","d":"移动位置参数。"},"shopt":{"n":"shopt","p":"/shopt","d":"显示和设置shell操作选项"},"showmount":{"n":"showmount","p":"/showmount","d":"显示NFS服务器加载的信息"},"shuf":{"n":"shuf","p":"/shuf","d":"产生随机的排列。"},"shutdown":{"n":"shutdown","p":"/shutdown","d":"用来执行系统关机的命令"},"skill":{"n":"skill","p":"/skill","d":"向选定的进程发送信号冻结进程"},"slabtop":{"n":"slabtop","p":"/slabtop","d":"实时显示内核slab内存缓存信息"},"sleep":{"n":"sleep","p":"/sleep","d":"将目前动作延迟一段时间"},"slocate":{"n":"slocate","p":"/slocate","d":"命令查找文件或目录"},"smbclient":{"n":"smbclient","p":"/smbclient","d":"交互方式访问samba服务器"},"smbpasswd":{"n":"smbpasswd","p":"/smbpasswd","d":"samba用户和密码管理工具"},"sort":{"n":"sort","p":"/sort","d":"对文本文件中所有行进行排序。"},"source":{"n":"source","p":"/source","d":"在当前Shell环境中从指定文件读取和执行命令。"},"speedtest-cli":{"n":"speedtest-cli","p":"/speedtest-cli","d":"命令行下测试服务器外网速度"},"spell":{"n":"spell","p":"/spell","d":"对文件进行拼写检查"},"split":{"n":"split","p":"/split","d":"分割任意大小的文件"},"squid":{"n":"squid","p":"/squid","d":"squid服务器守护进程"},"squidclient":{"n":"squidclient","p":"/squidclient","d":"squid服务器的客户端管理工具"},"ss":{"n":"ss","p":"/ss","d":"比 netstat 好用的socket统计信息,iproute2 包附带的另一个工具,允许你查询 socket 的有关统计信息"},"ssh-add":{"n":"ssh-add","p":"/ssh-add","d":"把专用密钥添加到ssh-agent的高速缓存中"},"ssh-agent":{"n":"ssh-agent","p":"/ssh-agent","d":"ssh密钥管理器"},"ssh-copy-id":{"n":"ssh-copy-id","p":"/ssh-copy-id","d":"把本地的ssh公钥文件安装到远程主机对应的账户下"},"ssh-keygen":{"n":"ssh-keygen","p":"/ssh-keygen","d":"为ssh生成、管理和转换认证密钥"},"ssh-keyscan":{"n":"ssh-keyscan","p":"/ssh-keyscan","d":"收集主机公钥的使用工具"},"ssh":{"n":"ssh","p":"/ssh","d":"openssh套件中的客户端连接工具"},"sshd":{"n":"sshd","p":"/sshd","d":"openssh软件套件中的服务器守护进程"},"startx":{"n":"startx","p":"/startx","d":"用来启动X Window"},"stat":{"n":"stat","p":"/stat","d":"用于显示文件的状态信息"},"strace":{"n":"strace","p":"/strace","d":"跟踪系统调用和信号"},"strings":{"n":"strings","p":"/strings","d":"在对象文件或二进制文件中查找可打印的字符串"},"stty":{"n":"stty","p":"/stty","d":"修改终端命令行的相关设置"},"su":{"n":"su","p":"/su","d":"用于切换当前用户身份到其他用户身份"},"sudo":{"n":"sudo","p":"/sudo","d":"以其他身份来执行命令"},"sum":{"n":"sum","p":"/sum","d":"计算文件的校验码和显示块数"},"supervisord":{"n":"supervisord","p":"/supervisord","d":"配置后台服务/常驻进程的进程管家工具"},"suspend":{"n":"suspend","p":"/suspend","d":"挂起shell的执行。"},"swapoff":{"n":"swapoff","p":"/swapoff","d":"关闭指定的交换空间"},"swapon":{"n":"swapon","p":"/swapon","d":"激活Linux系统中交换空间"},"sync":{"n":"sync","p":"/sync","d":"用于强制被改变的内容立刻写入磁盘"},"sysctl":{"n":"sysctl","p":"/sysctl","d":"时动态地修改内核的运行参数"},"syslog":{"n":"syslog","p":"/syslog","d":"系统默认的日志守护进程"},"systemctl":{"n":"systemctl","p":"/systemctl","d":"系统服务管理器指令"},"systool":{"n":"systool","p":"/systool","d":"显示基于总线、类和拓扑显示系统中设备的信息"},"tac":{"n":"tac","p":"/tac","d":"连接多个文件并以行为单位反向打印到标准输出。"},"tail":{"n":"tail","p":"/tail","d":"在屏幕上显示指定文件的末尾若干行"},"tailf":{"n":"tailf","p":"/tailf","d":"在屏幕上显示指定文件的末尾若干行内容,通常用于日志文件的跟踪输出"},"talk":{"n":"talk","p":"/talk","d":"让用户和其他用户聊天"},"tar":{"n":"tar","p":"/tar","d":"将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。"},"tcpdump":{"n":"tcpdump","p":"/tcpdump","d":"一款sniffer工具,是Linux上的抓包工具,嗅探器"},"tcpreplay":{"n":"tcpreplay","p":"/tcpreplay","d":"将PCAP包重新发送,用于性能或者功能测试"},"tee":{"n":"tee","p":"/tee","d":"从标准输入读取数据并重定向到标准输出和文件。"},"telint":{"n":"telint","p":"/telint","d":"切换当前正在运行系统的运行等级"},"telnet":{"n":"telnet","p":"/telnet","d":"登录远程主机和管理(测试ip端口是否连通)"},"tempfile":{"n":"tempfile","p":"/tempfile","d":"shell中给临时文件命名"},"test":{"n":"test","p":"/test","d":"执行条件表达式。"},"tftp":{"n":"tftp","p":"/tftp","d":"在本机和tftp服务器之间使用TFTP协议传输文件"},"time":{"n":"time","p":"/time","d":"统计给定命令所花费的总时间"},"times":{"n":"times","p":"/times","d":"显示进程累计时间。"},"tload":{"n":"tload","p":"/tload","d":"显示系统负载状况"},"tmux":{"n":"tmux","p":"/tmux","d":"Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权"},"top":{"n":"top","p":"/top","d":"显示或管理执行中的程序"},"touch":{"n":"touch","p":"/touch","d":"创建新的空文件"},"tput":{"n":"tput","p":"/tput","d":"通过terminfo数据库对终端会话进行初始化和操作"},"tr":{"n":"tr","p":"/tr","d":"将字符进行替换压缩和删除"},"tracepath":{"n":"tracepath","p":"/tracepath","d":"追踪目的主机经过的路由信息"},"traceroute":{"n":"traceroute","p":"/traceroute","d":"显示数据包到主机间的路径"},"trap":{"n":"trap","p":"/trap","d":"捕捉信号和其他事件并执行命令。"},"tree":{"n":"tree","p":"/tree","d":"树状图列出目录的内容"},"true":{"n":"true","p":"/true","d":"返回状态为成功。"},"tty":{"n":"tty","p":"/tty","d":"显示连接到当前标准输入的终端设备文件名"},"type":{"n":"type","p":"/type","d":"显示指定命令的类型。"},"ulimit":{"n":"ulimit","p":"/ulimit","d":"控制shell程序的资源"},"umask":{"n":"umask","p":"/umask","d":"显示或设置创建文件的权限掩码。"},"umount":{"n":"umount","p":"/umount","d":"用于卸载已经加载的文件系统"},"unalias":{"n":"unalias","p":"/unalias","d":"删除由alias设置的别名"},"uname":{"n":"uname","p":"/uname","d":"打印系统信息。"},"unarj":{"n":"unarj","p":"/unarj","d":"解压缩由arj命令创建的压缩包"},"uncompress":{"n":"uncompress","p":"/uncompress","d":"用来解压.Z文件"},"unexpand":{"n":"unexpand","p":"/unexpand","d":"将文件的空白字符转换为制表符"},"uniq":{"n":"uniq","p":"/uniq","d":"显示或忽略重复的行。"},"unlink":{"n":"unlink","p":"/unlink","d":"系统调用函数unlink去删除指定的文件"},"unprotoize":{"n":"unprotoize","p":"/unprotoize","d":"删除C语言源代码文件中的函数原型"},"unrar":{"n":"unrar","p":"/unrar","d":"解压rar文件命令,从 rar 压缩包中提取文件"},"unset":{"n":"unset","p":"/unset","d":"删除指定的shell变量或函数。"},"unzip":{"n":"unzip","p":"/unzip","d":"用于解压缩由zip命令压缩的压缩包"},"updatedb":{"n":"updatedb","p":"/updatedb","d":"创建或更新slocate命令所必需的数据库文件"},"uptime":{"n":"uptime","p":"/uptime","d":"查看Linux系统负载信息"},"useradd":{"n":"useradd","p":"/useradd","d":"创建的新的系统用户"},"userdel":{"n":"userdel","p":"/userdel","d":"用于删除给定的用户以及与用户相关的文件"},"usermod":{"n":"usermod","p":"/usermod","d":"用于修改用户的基本信息"},"usernetctl":{"n":"usernetctl","p":"/usernetctl","d":"被允许时操作指定的网络接口"},"users":{"n":"users","p":"/users","d":"打印当前主机所有登陆用户的名称。"},"uucico":{"n":"uucico","p":"/uucico","d":"UUCP文件传输服务程序"},"uupick":{"n":"uupick","p":"/uupick","d":"命令处理传送进来的文件"},"uuto":{"n":"uuto","p":"/uuto","d":"将文件传送到远端的UUCP主机"},"vdfuse":{"n":"vdfuse","p":"/vdfuse","d":"VirtualBox软件挂载VDI分区文件工具"},"vgchange":{"n":"vgchange","p":"/vgchange","d":"修改卷组属性"},"vgconvert":{"n":"vgconvert","p":"/vgconvert","d":"转换卷组元数据格式"},"vgcreate":{"n":"vgcreate","p":"/vgcreate","d":"用于创建LVM卷组"},"vgdisplay":{"n":"vgdisplay","p":"/vgdisplay","d":"显示LVM卷组的信息"},"vgextend":{"n":"vgextend","p":"/vgextend","d":"向卷组中添加物理卷"},"vgreduce":{"n":"vgreduce","p":"/vgreduce","d":"从卷组中删除物理卷"},"vgremove":{"n":"vgremove","p":"/vgremove","d":"用于用户删除LVM卷组"},"vgrename":{"n":"vgrename","p":"/vgrename","d":"使用vgrename命令可以重命名卷组的名称"},"vgscan":{"n":"vgscan","p":"/vgscan","d":"扫描并显示系统中的卷组"},"vi":{"n":"vi","p":"/vi","d":"功能强大的纯文本编辑器"},"vmstat":{"n":"vmstat","p":"/vmstat","d":"显示虚拟内存状态"},"volname":{"n":"volname","p":"/volname","d":"显示指定的ISO-9660格式的设备的卷名称"},"w":{"n":"w","p":"/w","d":"显示目前登入系统的用户信息"},"wait":{"n":"wait","p":"/wait","d":"等待进程执行完后返回"},"wall":{"n":"wall","p":"/wall","d":"向系统当前所有打开的终端上输出信息"},"watch":{"n":"watch","p":"/watch","d":"可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令"},"wc":{"n":"wc","p":"/wc","d":"统计文件的字节数、字数、行数"},"wget":{"n":"wget","p":"/wget","d":"Linux系统下载文件工具"},"whatis":{"n":"whatis","p":"/whatis","d":"查询一个命令执行什么功能"},"whereis":{"n":"whereis","p":"/whereis","d":"查找二进制程序、代码等相关文件路径"},"which":{"n":"which","p":"/which","d":"查找并显示给定命令的绝对路径"},"who":{"n":"who","p":"/who","d":"显示当前所有登陆用户的信息。"},"whoami":{"n":"whoami","p":"/whoami","d":"打印当前有效的用户ID对应的名称"},"write":{"n":"write","p":"/write","d":"向指定登录用户终端上发送信息"},"xargs":{"n":"xargs","p":"/xargs","d":"给其他命令传递参数的一个过滤器"},"xauth":{"n":"xauth","p":"/xauth","d":"显示和编辑被用于连接X服务器的认证信息"},"xclip":{"n":"xclip","p":"/xclip","d":"管理 X 粘贴板"},"xhost":{"n":"xhost","p":"/xhost","d":"制哪些X客户端能够在X服务器上显示"},"xinit":{"n":"xinit","p":"/xinit","d":"是Linux下X-Window系统的初始化程序"},"xlsatoms":{"n":"xlsatoms","p":"/xlsatoms","d":"列出X服务器内部所有定义的原子成分"},"xlsclients":{"n":"xlsclients","p":"/xlsclients","d":"列出显示器中的客户端应用程序"},"xlsfonts":{"n":"xlsfonts","p":"/xlsfonts","d":"列出X Server使用的字体"},"xset":{"n":"xset","p":"/xset","d":"设置X-Window系统中的用户爱好的实用工具"},"xz":{"n":"xz","p":"/xz","d":"POSIX 平台开发具有高压缩率的工具"},"yes":{"n":"yes","p":"/yes","d":"重复打印指定字符串"},"ypdomainname":{"n":"ypdomainname","p":"/ypdomainname","d":"显示主机的NIS的域名"},"yum":{"n":"yum","p":"/yum","d":"基于RPM的软件包管理器"},"zcat":{"n":"zcat","p":"/zcat","d":"显示压缩包中文件的内容"},"zfore":{"n":"zfore","p":"/zfore","d":"强制为gzip格式的压缩文件添加.gz后缀"},"zip":{"n":"zip","p":"/zip","d":"可以用来解压缩文件"},"zipinfo":{"n":"zipinfo","p":"/zipinfo","d":"用来列出压缩文件信息"},"zipsplit":{"n":"zipsplit","p":"/zipsplit","d":"将较大的zip压缩包分割成各个较小的压缩包"},"znew":{"n":"znew","p":"/znew","d":"将.Z压缩包重新转化为gzip命令压缩的.gz压缩包"}} \ No newline at end of file +{"ab":{"n":"ab","p":"/ab","d":"Apache服务器的性能测试工具"},"accept":{"n":"accept","p":"/accept","d":"指示打印系统接受发往指定目标打印机的打印任务"},"ack":{"n":"ack","p":"/ack","d":"比grep好用的文本搜索工具"},"alias":{"n":"alias","p":"/alias","d":"定义或显示别名。"},"apachectl":{"n":"apachectl","p":"/apachectl","d":"Apache服务器前端控制工具"},"apk":{"n":"apk","p":"/apk","d":"Alpine Linux 下的包管理工具"},"apropos":{"n":"apropos","p":"/apropos","d":"在 whatis 数据库中查找字符串"},"apt-get":{"n":"apt-get","p":"/apt-get","d":"Debian Linux发行版中的APT软件包管理工具"},"apt-key":{"n":"apt-key","p":"/apt-key","d":"管理Debian Linux系统中的软件包密钥"},"apt-sortpkgs":{"n":"apt-sortpkgs","p":"/apt-sortpkgs","d":"Debian Linux下对软件包索引文件进行排序的工具"},"aptitude":{"n":"aptitude","p":"/aptitude","d":"Debian Linux系统中软件包管理工具"},"ar":{"n":"ar","p":"/ar","d":"建立或修改备存文件,或是从备存文件中抽取文件"},"arch":{"n":"arch","p":"/arch","d":"显示当前主机的硬件架构类型"},"arj":{"n":"arj","p":"/arj","d":"用于创建和管理.arj压缩包"},"arp":{"n":"arp","p":"/arp","d":"arp 命令用于显示和修改 IP 到 MAC 转换表"},"arpd":{"n":"arpd","p":"/arpd","d":"收集免费ARP信息"},"arping":{"n":"arping","p":"/arping","d":"通过发送ARP协议报文测试网络"},"arptables":{"n":"arptables","p":"/arptables","d":"管理ARP包过滤规则表"},"arpwatch":{"n":"arpwatch","p":"/arpwatch","d":"监听网络上ARP的记录"},"as":{"n":"as","p":"/as","d":"汇编语言编译器"},"at":{"n":"at","p":"/at","d":"在指定时间执行一个任务"},"atop":{"n":"atop","p":"/atop","d":"监控Linux系统资源与进程的工具"},"atq":{"n":"atq","p":"/atq","d":"列出当前用户的at任务列表"},"atrm":{"n":"atrm","p":"/atrm","d":"删除待执行任务队列中的指定任务"},"awk":{"n":"awk","p":"/awk","d":"文本和数据进行处理的编程语言"},"axel":{"n":"axel","p":"/axel","d":"多线程下载工具"},"badblocks":{"n":"badblocks","p":"/badblocks","d":"查找磁盘中损坏的区块"},"base64":{"n":"base64","p":"/base64","d":"base64 编码/解码文件或标准输入输出"},"basename":{"n":"basename","p":"/basename","d":"打印目录或者文件的基本名称"},"batch":{"n":"batch","p":"/batch","d":"在系统不繁忙的时候执行定时任务"},"bc":{"n":"bc","p":"/bc","d":"算术操作精密运算工具"},"bg":{"n":"bg","p":"/bg","d":"将前台终端作业移动到后台运行"},"bind":{"n":"bind","p":"/bind","d":"显示或设置键盘按键与其相关的功能"},"blkid":{"n":"blkid","p":"/blkid","d":"查看块设备的文件系统类型、LABEL、UUID等信息"},"blockdev":{"n":"blockdev","p":"/blockdev","d":"从命令行调用区块设备控制程序"},"bmodinfo":{"n":"bmodinfo","p":"/bmodinfo","d":"显示给定模块的详细信息"},"break":{"n":"break","p":"/break","d":"结束for,while或until循环。"},"builtin":{"n":"builtin","p":"/builtin","d":"执行bash内建命令。"},"bunzip2":{"n":"bunzip2","p":"/bunzip2","d":"创一个bz2文件压缩包"},"bye":{"n":"bye","p":"/bye","d":"命令用于中断FTP连线并结束程序"},"bzcat":{"n":"bzcat","p":"/bzcat","d":"解压缩指定的.bz2文件"},"bzcmp":{"n":"bzcmp","p":"/bzcmp","d":"比较两个压缩包中的文件"},"bzdiff":{"n":"bzdiff","p":"/bzdiff","d":"直接比较两个.bz2压缩包中文件的不同"},"bzgrep":{"n":"bzgrep","p":"/bzgrep","d":"使用正则表达式搜索.bz2压缩包中文件"},"bzip2":{"n":"bzip2","p":"/bzip2","d":"将文件压缩成bz2格式"},"bzip2recover":{"n":"bzip2recover","p":"/bzip2recover","d":"恢复被破坏的.bz2压缩包中的文件"},"bzless":{"n":"bzless","p":"/bzless","d":"增强.bz2压缩包查看器"},"bzmore":{"n":"bzmore","p":"/bzmore","d":"查看bzip2压缩过的文本文件的内容"},"cal":{"n":"cal","p":"/cal","d":"显示当前日历或指定日期的日历"},"cancel":{"n":"cancel","p":"/cancel","d":"取消已存在的打印任务"},"cat":{"n":"cat","p":"/cat","d":"连接多个文件并打印到标准输出。"},"cd":{"n":"cd","p":"/cd","d":"切换用户当前工作目录。"},"cdrecord":{"n":"cdrecord","p":"/cdrecord","d":"Linux系统下光盘刻录功能命令"},"chage":{"n":"chage","p":"/chage","d":"修改帐号和密码的有效期限"},"chattr":{"n":"chattr","p":"/chattr","d":"用来改变文件属性"},"chcon":{"n":"chcon","p":"/chcon","d":"修改对象(文件)的安全上下文"},"chfn":{"n":"chfn","p":"/chfn","d":"用来改变finger命令显示的信息"},"chgrp":{"n":"chgrp","p":"/chgrp","d":"用来变更文件或目录的所属群组"},"chkconfig":{"n":"chkconfig","p":"/chkconfig","d":"检查或设置系统的各种服务"},"chmod":{"n":"chmod","p":"/chmod","d":"用来变更文件或目录的权限"},"chown":{"n":"chown","p":"/chown","d":"用来变更文件或目录的拥有者或所属群组"},"chpasswd":{"n":"chpasswd","p":"/chpasswd","d":"批量更新用户口令的工具"},"chroot":{"n":"chroot","p":"/chroot","d":"把根目录换成指定的目的目录"},"chsh":{"n":"chsh","p":"/chsh","d":"用来更换登录系统时使用的shell"},"cksum":{"n":"cksum","p":"/cksum","d":"检查文件的CRC是否正确"},"clear":{"n":"clear","p":"/clear","d":"清除当前屏幕终端上的任何信息"},"clock":{"n":"clock","p":"/clock","d":"用于调整 RTC 时间"},"clockdiff":{"n":"clockdiff","p":"/clockdiff","d":"检测两台linux主机的时间差"},"cmp":{"n":"cmp","p":"/cmp","d":"比较两个文件是否有差异"},"col":{"n":"col","p":"/col","d":"过滤控制字符"},"colrm":{"n":"colrm","p":"/colrm","d":"删除文件中的指定列"},"comm":{"n":"comm","p":"/comm","d":"按行比较两个已排序的文件。"},"command":{"n":"command","p":"/command","d":"调用并执行指定的命令"},"compress":{"n":"compress","p":"/compress","d":"使用Lempress-Ziv编码压缩数据文件"},"consoletype":{"n":"consoletype","p":"/consoletype","d":"输出已连接的终端类型"},"continue":{"n":"continue","p":"/continue","d":"结束本次循环,继续执行下一个for,while或until循环。"},"convertquota":{"n":"convertquota","p":"/convertquota","d":"把老的配额文件转换为新的格式"},"cp":{"n":"cp","p":"/cp","d":"将源文件或目录复制到目标文件或目录中"},"cpio":{"n":"cpio","p":"/cpio","d":"用来建立、还原备份档的工具程序"},"crontab":{"n":"crontab","p":"/crontab","d":"提交和管理用户的需要周期性执行的任务"},"csplit":{"n":"csplit","p":"/csplit","d":"将一个大文件分割成小的碎片文件"},"cu":{"n":"cu","p":"/cu","d":"用于连接另一个系统主机"},"cupsdisable":{"n":"cupsdisable","p":"/cupsdisable","d":"停止指定的打印机"},"cupsenable":{"n":"cupsenable","p":"/cupsenable","d":"启动指定的打印机"},"curl":{"n":"curl","p":"/curl","d":"利用URL规则在命令行下工作的文件传输工具"},"cut":{"n":"cut","p":"/cut","d":"连接文件并打印到标准输出设备上"},"date":{"n":"date","p":"/date","d":"显示或设置系统时间与日期"},"dd":{"n":"dd","p":"/dd","d":"复制文件并对原文件的内容进行转换和格式化处理"},"declare":{"n":"declare","p":"/declare","d":"声明变量,设置或显示变量的值和属性。"},"depmod":{"n":"depmod","p":"/depmod","d":"分析可载入模块的相依性"},"df":{"n":"df","p":"/df","d":"显示磁盘的相关信息"},"dhclient":{"n":"dhclient","p":"/dhclient","d":"动态获取或释放IP地址"},"dhcpd":{"n":"dhcpd","p":"/dhcpd","d":"运行DHCP服务器"},"dhcrelay":{"n":"dhcrelay","p":"/dhcrelay","d":"使用dhcrelay命令可以提供中继DHCP和BOOTP请求"},"diff":{"n":"diff","p":"/diff","d":"比较给定的两个文件的不同"},"diff3":{"n":"diff3","p":"/diff3","d":"比较3个文件不同的地方"},"diffstat":{"n":"diffstat","p":"/diffstat","d":"显示diff命令输出信息的柱状图"},"dig":{"n":"dig","p":"/dig","d":"域名查询工具"},"dircolors":{"n":"dircolors","p":"/dircolors","d":"置ls命令在显示目录或文件时所用的色彩"},"dirname":{"n":"dirname","p":"/dirname","d":"去除文件名中的非目录部分"},"dirs":{"n":"dirs","p":"/dirs","d":"显示目录堆栈。"},"disown":{"n":"disown","p":"/disown","d":"从当前的shell中移除作业。"},"dmesg":{"n":"dmesg","p":"/dmesg","d":"显示Linux系统启动信息"},"dmidecode":{"n":"dmidecode","p":"/dmidecode","d":"在Linux系统下获取有关硬件方面的信息"},"dnf":{"n":"dnf","p":"/dnf","d":"新一代的RPM软件包管理器"},"dnsdomainname":{"n":"dnsdomainname","p":"/dnsdomainname","d":"定义DNS系统中FQDN名称的域名"},"domainname":{"n":"domainname","p":"/domainname","d":"显示和设置系统的NIS域名"},"dos2unix":{"n":"dos2unix","p":"/dos2unix","d":"将DOS格式文本文件转换成Unix格式"},"dpkg-deb":{"n":"dpkg-deb","p":"/dpkg-deb","d":"Debian Linux下的软件包管理工具"},"dpkg-divert":{"n":"dpkg-divert","p":"/dpkg-divert","d":"Debian Linux中创建并管理一个转向列表"},"dpkg-preconfigure":{"n":"dpkg-preconfigure","p":"/dpkg-preconfigure","d":"Debian Linux中软件包安装之前询问问题"},"dpkg-query":{"n":"dpkg-query","p":"/dpkg-query","d":"Debian Linux中软件包的查询工具"},"dpkg-reconfigure":{"n":"dpkg-reconfigure","p":"/dpkg-reconfigure","d":"Debian Linux中重新配制一个已经安装的软件包"},"dpkg-split":{"n":"dpkg-split","p":"/dpkg-split","d":"Debian Linux中将大软件包分割成小包"},"dpkg-statoverride":{"n":"dpkg-statoverride","p":"/dpkg-statoverride","d":"Debian Linux中覆盖文件的所有权和模式"},"dpkg-trigger":{"n":"dpkg-trigger","p":"/dpkg-trigger","d":"Debian Linux下的软件包触发器"},"dpkg":{"n":"dpkg","p":"/dpkg","d":"Debian Linux系统上安装、创建和管理软件包"},"dris":{"n":"dris","p":"/dris","d":"显示和清空目录堆栈中的内容"},"dstat":{"n":"dstat","p":"/dstat","d":"通用的系统资源统计工具"},"du":{"n":"du","p":"/du","d":"显示每个文件和目录的磁盘使用空间"},"dump":{"n":"dump","p":"/dump","d":"用于备份ext2或者ext3文件系统"},"e2fsck":{"n":"e2fsck","p":"/e2fsck","d":"用于检查第二扩展文件系统的完整性"},"e2label":{"n":"e2label","p":"/e2label","d":"设置第二扩展文件系统的卷标"},"echo":{"n":"echo","p":"/echo","d":"输出指定的字符串或者变量"},"ed":{"n":"ed","p":"/ed","d":"单行纯文本编辑器"},"edquota":{"n":"edquota","p":"/edquota","d":"用于编辑指定用户或工作组磁盘配额"},"egrep":{"n":"egrep","p":"/egrep","d":"在文件内查找指定的字符串"},"eject":{"n":"eject","p":"/eject","d":"用来退出抽取式设备"},"elinks":{"n":"elinks","p":"/elinks","d":"纯文本界面的WWW浏览器"},"elm":{"n":"elm","p":"/elm","d":"纯文本邮件客户端程序"},"emacs":{"n":"emacs","p":"/emacs","d":"功能强大的全屏文本编辑器"},"enable":{"n":"enable","p":"/enable","d":"启动或禁用shell内建命令"},"env":{"n":"env","p":"/env","d":"显示系统中已存在的环境变量"},"ethtool":{"n":"ethtool","p":"/ethtool","d":"显示或修改以太网卡的配置信息"},"ex":{"n":"ex","p":"/ex","d":"启动vim编辑器的ex编辑模式"},"exec":{"n":"exec","p":"/exec","d":"调用并执行指定的命令"},"exit":{"n":"exit","p":"/exit","d":"退出当前的shell。"},"expand":{"n":"expand","p":"/expand","d":"将文件的制表符转换为空白字符"},"export":{"n":"export","p":"/export","d":"为shell变量或函数设置导出属性。"},"exportfs":{"n":"exportfs","p":"/exportfs","d":"管理NFS共享文件系统列表"},"expr":{"n":"expr","p":"/expr","d":"一款表达式计算工具"},"false":{"n":"false","p":"/false","d":"返回状态为失败。"},"fc":{"n":"fc","p":"/fc","d":"显示历史列表中的命令或修改指定的历史命令并执行。"},"fdisk":{"n":"fdisk","p":"/fdisk","d":"查看磁盘使用情况和磁盘分区"},"fg":{"n":"fg","p":"/fg","d":"将后台作业移动到前台终端运行"},"fgrep":{"n":"fgrep","p":"/fgrep","d":"为文件搜索文字字符串"},"file":{"n":"file","p":"/file","d":"用来探测给定文件的类型"},"find":{"n":"find","p":"/find","d":"在指定目录下查找文件"},"findfs":{"n":"findfs","p":"/findfs","d":"标签或UUID查找文件系统"},"finger":{"n":"finger","p":"/finger","d":"用于查找并显示用户信息"},"firewall-cmd":{"n":"firewall-cmd","p":"/firewall-cmd","d":"Linux上新用的防火墙软件,跟iptables差不多的工具"},"fishshell":{"n":"fishshell","p":"/fishshell","d":"比 bash 更好用的 shell"},"fmt":{"n":"fmt","p":"/fmt","d":"读取文件后优化处理并输出"},"fold":{"n":"fold","p":"/fold","d":"控制文件内容输出时所占用的屏幕宽度"},"fping":{"n":"fping","p":"/fping","d":"fping检测主机是否存在"},"free":{"n":"free","p":"/free","d":"显示内存的使用情况"},"fsck":{"n":"fsck","p":"/fsck","d":"检查并且试图修复文件系统中的错误"},"ftp":{"n":"ftp","p":"/ftp","d":"用来设置文件系统相关功能"},"ftpcount":{"n":"ftpcount","p":"/ftpcount","d":"显示目前已FTP登入的用户人数"},"ftpshut":{"n":"ftpshut","p":"/ftpshut","d":"在指定的时间关闭FTP服务器"},"ftptop":{"n":"ftptop","p":"/ftptop","d":"proftpd服务器的连接状态"},"ftpwho":{"n":"ftpwho","p":"/ftpwho","d":"显示当前每个ftp会话信息"},"fuser":{"n":"fuser","p":"/fuser","d":"使用文件或文件结构识别进程"},"gcc":{"n":"gcc","p":"/gcc","d":"基于C/C++的编译器"},"gcov":{"n":"gcov","p":"/gcov","d":"测试程序的代码覆盖率的工具"},"gdb":{"n":"gdb","p":"/gdb","d":"功能强大的程序调试器"},"get_module":{"n":"get_module","p":"/get_module","d":"获取Linux内核模块的详细信息"},"getenforce":{"n":"getenforce","p":"/getenforce","d":"显示当前SELinux的应用模式,是强制、执行还是停用"},"getsebool":{"n":"getsebool","p":"/getsebool","d":"查询SElinux策略内各项规则的布尔值"},"git":{"n":"git","p":"/git","d":"是目前世界上最先进的分布式版本控制系统"},"gpasswd":{"n":"gpasswd","p":"/gpasswd","d":"Linux下工作组文件的管理工具"},"gpm":{"n":"gpm","p":"/gpm","d":"提供文字模式下的滑鼠事件处理"},"grep":{"n":"grep","p":"/grep","d":"强大的文本搜索工具"},"groupadd":{"n":"groupadd","p":"/groupadd","d":"用于创建一个新的工作组"},"groupdel":{"n":"groupdel","p":"/groupdel","d":"用于删除指定的工作组"},"groupmod":{"n":"groupmod","p":"/groupmod","d":"更改群组识别码或名称"},"groups":{"n":"groups","p":"/groups","d":"打印指定用户所在组的名称。"},"grpck":{"n":"grpck","p":"/grpck","d":"用于验证组文件的完整性"},"grpconv":{"n":"grpconv","p":"/grpconv","d":"用来开启群组的投影密码"},"grpunconv":{"n":"grpunconv","p":"/grpunconv","d":"用来关闭群组的投影密码"},"grub":{"n":"grub","p":"/grub","d":"多重引导程序grub的命令行shell工具"},"gunzip":{"n":"gunzip","p":"/gunzip","d":"用来解压缩文件"},"gzexe":{"n":"gzexe","p":"/gzexe","d":"用来压缩可执行文件"},"gzip":{"n":"gzip","p":"/gzip","d":"用来压缩文件"},"halt":{"n":"halt","p":"/halt","d":"关闭正在运行的Linux操作系统"},"hdparm":{"n":"hdparm","p":"/hdparm","d":"显示与设定硬盘的参数"},"head":{"n":"head","p":"/head","d":"显示文件的开头部分。"},"help":{"n":"help","p":"/help","d":"该命令是bash内建命令,用于显示bash内建命令的帮助信息。"},"hexdump":{"n":"hexdump","p":"/hexdump","d":"显示文件十六进制格式"},"history":{"n":"history","p":"/history","d":"显示或操作历史列表。"},"host":{"n":"host","p":"/host","d":"常用的分析域名查询工具"},"hostid":{"n":"hostid","p":"/hostid","d":"显示当前主机的十六进制数字标识。"},"hostname":{"n":"hostname","p":"/hostname","d":"显示和设置系统的主机名"},"hostnamectl":{"n":"hostnamectl","p":"/hostnamectl","d":"查询或更改系统主机名"},"hping3":{"n":"hping3","p":"/hping3","d":"测试网络及主机的安全"},"htdigest":{"n":"htdigest","p":"/htdigest","d":"Apache服务器内置工具"},"htop":{"n":"htop","p":"/htop","d":"[非内部命令]一个互动的进程查看器,可以动态观察系统进程状况"},"htpasswd":{"n":"htpasswd","p":"/htpasswd","d":"apache服务器创建密码认证文件"},"hwclock":{"n":"hwclock","p":"/hwclock","d":"显示与设定硬件时钟"},"iconv":{"n":"iconv","p":"/iconv","d":"转换文件的编码方式"},"id":{"n":"id","p":"/id","d":"打印真实以及有效的用户和所在组的信息"},"ifcfg":{"n":"ifcfg","p":"/ifcfg","d":"置Linux中的网络接口参数"},"ifconfig":{"n":"ifconfig","p":"/ifconfig","d":"配置和显示Linux系统网卡的网络参数"},"ifdown":{"n":"ifdown","p":"/ifdown","d":"禁用指定的网络接口"},"ifstat":{"n":"ifstat","p":"/ifstat","d":"统计网络接口流量状态"},"iftop":{"n":"iftop","p":"/iftop","d":"一款实时流量监控工具"},"ifup":{"n":"ifup","p":"/ifup","d":"激活指定的网络接口"},"indent":{"n":"indent","p":"/indent","d":"格式化C语言的源文件"},"info":{"n":"info","p":"/info","d":"Linux下info格式的帮助指令"},"init":{"n":"init","p":"/init","d":"init进程是所有Linux进程的父进程"},"inotifywait":{"n":"inotifywait","p":"/inotifywait","d":"异步文件系统监控机制"},"insmod":{"n":"insmod","p":"/insmod","d":"将给定的模块加载到内核中"},"install":{"n":"install","p":"/install","d":"安装或升级软件或备份数据"},"iostat":{"n":"iostat","p":"/iostat","d":"监视系统输入输出设备和CPU的使用情况"},"iotop":{"n":"iotop","p":"/iotop","d":"用来监视磁盘I/O使用状况的工具"},"ip":{"n":"ip","p":"/ip","d":"网络配置工具"},"ip6tables-restore":{"n":"ip6tables-restore","p":"/ip6tables-restore","d":"还原ip6tables表"},"ip6tables-save":{"n":"ip6tables-save","p":"/ip6tables-save","d":"保存ip6tables表配置"},"ip6tables":{"n":"ip6tables","p":"/ip6tables","d":"linux中防火墙软件"},"ipcalc":{"n":"ipcalc","p":"/ipcalc","d":"简单的IP地址计算器"},"ipcrm":{"n":"ipcrm","p":"/ipcrm","d":"删除消息队列、信号集、或者共享内存标识"},"ipcs":{"n":"ipcs","p":"/ipcs","d":"分析消息队列共享内存和信号量"},"iperf":{"n":"iperf","p":"/iperf","d":"网络性能测试工具"},"iptables-restore":{"n":"iptables-restore","p":"/iptables-restore","d":"还原iptables表的配置"},"iptables-save":{"n":"iptables-save","p":"/iptables-save","d":"备份iptables的表配置"},"iptables":{"n":"iptables","p":"/iptables","d":"Linux上常用的防火墙软件"},"iptraf":{"n":"iptraf","p":"/iptraf","d":"实时地监视网卡流量"},"iptstate":{"n":"iptstate","p":"/iptstate","d":"显示iptables的工作状态"},"ispell":{"n":"ispell","p":"/ispell","d":"检查文件中出现的拼写错误"},"jed":{"n":"jed","p":"/jed","d":"主要用于编辑代码的编辑器"},"jobs":{"n":"jobs","p":"/jobs","d":"显示作业的状态。"},"joe":{"n":"joe","p":"/joe","d":"强大的纯文本编辑器"},"join":{"n":"join","p":"/join","d":"两个文件中指定栏位内容相同的行连接起来"},"jq":{"n":"jq","p":"/jq","d":"一个灵活的轻量级命令行JSON处理器"},"jwhois":{"n":"jwhois","p":"/jwhois","d":"whois 客户端服务"},"kernelversion":{"n":"kernelversion","p":"/kernelversion","d":"打印当前内核的主版本号"},"kexec":{"n":"kexec","p":"/kexec","d":"从当前正在运行的内核引导到一个新内核"},"kill":{"n":"kill","p":"/kill","d":"发送信号到进程。"},"killall":{"n":"killall","p":"/killall","d":"使用进程的名称来杀死一组进程"},"last":{"n":"last","p":"/last","d":"列出目前与过去登入系统的用户相关信息"},"lastb":{"n":"lastb","p":"/lastb","d":"列出登入系统失败的用户相关信息"},"lastlog":{"n":"lastlog","p":"/lastlog","d":"显示系统中所有用户最近一次登录信息"},"ld":{"n":"ld","p":"/ld","d":"将目标文件连接为可执行程序"},"ldconfig":{"n":"ldconfig","p":"/ldconfig","d":"动态链接库管理命令"},"ldd":{"n":"ldd","p":"/ldd","d":"打印程序或者库文件所依赖的共享库列表"},"less":{"n":"less","p":"/less","d":"分屏上下翻页浏览文件内容"},"let":{"n":"let","p":"/let","d":"简单的计算器,执行算术表达式。"},"lftp":{"n":"lftp","p":"/lftp","d":"优秀的文件客户端程序"},"lftpget":{"n":"lftpget","p":"/lftpget","d":"调用lftp指令下载指定的文件"},"lha":{"n":"lha","p":"/lha","d":"压缩或解压缩lzh格式文件"},"lilo":{"n":"lilo","p":"/lilo","d":"安装核心载入开机管理程序"},"ln":{"n":"ln","p":"/ln","d":"用来为文件创建链接"},"lnstat":{"n":"lnstat","p":"/lnstat","d":"显示Linux系统的网路状态"},"local":{"n":"local","p":"/local","d":"在函数内定义局部变量。"},"locate":{"n":"locate","p":"/locate","d":"比 find 好用的文件查找工具"},"logger":{"n":"logger","p":"/logger","d":"在系统日志中记录相应条目"},"login":{"n":"login","p":"/login","d":"登录系统或切换用户身份"},"logname":{"n":"logname","p":"/logname","d":"打印当前终端登录用户的名称。"},"logout":{"n":"logout","p":"/logout","d":"退出当前登录的Shell"},"logrotate":{"n":"logrotate","p":"/logrotate","d":"系统日志进行轮转、压缩和删除"},"logsave":{"n":"logsave","p":"/logsave","d":"将命令的输出信息保存到指定的日志文件"},"logwatch":{"n":"logwatch","p":"/logwatch","d":"可定制和可插入式的日志监视系统"},"look":{"n":"look","p":"/look","d":"显示文件中以指定字符串开头的任意行"},"losetup":{"n":"losetup","p":"/losetup","d":"设定与控制循环(loop)设备"},"lp":{"n":"lp","p":"/lp","d":"打印文件或修改排队的打印任务"},"lpadmin":{"n":"lpadmin","p":"/lpadmin","d":"配置CUPS套件中的打印机和类"},"lpc":{"n":"lpc","p":"/lpc","d":"命令行方式打印机控制程序"},"lpq":{"n":"lpq","p":"/lpq","d":"显示打印队列中的打印任务的状态信息"},"lpr":{"n":"lpr","p":"/lpr","d":"将文件发送给指定打印机进行打印"},"lprm":{"n":"lprm","p":"/lprm","d":"删除打印队列中的打印任务"},"lpstat":{"n":"lpstat","p":"/lpstat","d":"显示CUPS中打印机的状态信息"},"ls":{"n":"ls","p":"/ls","d":"显示目录内容列表"},"lsattr":{"n":"lsattr","p":"/lsattr","d":"查看文件的第二扩展文件系统属性"},"lsb_release":{"n":"lsb_release","p":"/lsb_release","d":"显示发行版本信息"},"lsblk":{"n":"lsblk","p":"/lsblk","d":"列出块设备信息"},"lscpu":{"n":"lscpu","p":"/lscpu","d":"显示有关CPU架构的信息"},"lsmod":{"n":"lsmod","p":"/lsmod","d":"显示已载入系统的模块"},"lsof":{"n":"lsof","p":"/lsof","d":"显示Linux系统当前已打开的所有文件列表 `lsof -p pid`"},"lspci":{"n":"lspci","p":"/lspci","d":"显示当前主机的所有PCI总线信息"},"lsusb":{"n":"lsusb","p":"/lsusb","d":"显示本机的USB设备列表信息"},"ltrace":{"n":"ltrace","p":"/ltrace","d":"用来跟踪进程调用库函数的情况"},"lvcreate":{"n":"lvcreate","p":"/lvcreate","d":"用于创建LVM的逻辑卷"},"lvdisplay":{"n":"lvdisplay","p":"/lvdisplay","d":"显示逻辑卷属性"},"lvextend":{"n":"lvextend","p":"/lvextend","d":"扩展逻辑卷空间"},"lvreduce":{"n":"lvreduce","p":"/lvreduce","d":"收缩逻辑卷空间"},"lvremove":{"n":"lvremove","p":"/lvremove","d":"删除指定LVM逻辑卷"},"lvresize":{"n":"lvresize","p":"/lvresize","d":"调整逻辑卷空间大小"},"lvscan":{"n":"lvscan","p":"/lvscan","d":"扫描逻辑卷"},"lynx":{"n":"lynx","p":"/lynx","d":"纯文本模式的网页浏览器"},"mail":{"n":"mail","p":"/mail","d":"命令行下发送和接收电子邮件"},"mailq":{"n":"mailq","p":"/mailq","d":"显示待发送的邮件队列"},"mailstat":{"n":"mailstat","p":"/mailstat","d":"显示到达的邮件状态"},"make":{"n":"make","p":"/make","d":"GNU的工程化编译工具"},"man":{"n":"man","p":"/man","d":"查看Linux中的指令帮助"},"mapfile":{"n":"mapfile","p":"/mapfile","d":"从标准输入读取行并赋值到数组。"},"md5sum":{"n":"md5sum","p":"/md5sum","d":"计算和校验文件报文摘要的工具程序"},"mesg":{"n":"mesg","p":"/mesg","d":"设置当前终端的写权限"},"mii-tool":{"n":"mii-tool","p":"/mii-tool","d":"配置网络设备协商方式的工具"},"mkbootdisk":{"n":"mkbootdisk","p":"/mkbootdisk","d":"可建立目前系统的启动盘"},"mkdir":{"n":"mkdir","p":"/mkdir","d":"用来创建目录"},"mke2fs":{"n":"mke2fs","p":"/mke2fs","d":"创建磁盘分区上的“etc2/etc3”文件系统"},"mkfs":{"n":"mkfs","p":"/mkfs","d":"用于在设备上创建Linux文件系统"},"mkinitrd":{"n":"mkinitrd","p":"/mkinitrd","d":"建立要载入ramdisk的映像文件"},"mkisofs":{"n":"mkisofs","p":"/mkisofs","d":"建立ISO 9660映像文件"},"mknod":{"n":"mknod","p":"/mknod","d":"创建字符设备文件和块设备文件"},"mkswap":{"n":"mkswap","p":"/mkswap","d":"建立和设置SWAP交换分区"},"mktemp":{"n":"mktemp","p":"/mktemp","d":"创建临时文件供shell脚本使用"},"modprobe":{"n":"modprobe","p":"/modprobe","d":"自动处理可载入模块"},"more":{"n":"more","p":"/more","d":"显示文件内容,每次显示一屏"},"mount":{"n":"mount","p":"/mount","d":"用于挂载Linux系统外的文件"},"mpstat":{"n":"mpstat","p":"/mpstat","d":"显示各个可用CPU的状态"},"mtools":{"n":"mtools","p":"/mtools","d":"显示mtools支持的指令"},"mv":{"n":"mv","p":"/mv","d":"用来对文件或目录重新命名"},"mysql":{"n":"mysql","p":"/mysql","d":"MySQL服务器客户端工具"},"mysqladmin":{"n":"mysqladmin","p":"/mysqladmin","d":"MySQL服务器管理客户端"},"mysqldump":{"n":"mysqldump","p":"/mysqldump","d":"MySQL数据库中备份工具"},"mysqlimport":{"n":"mysqlimport","p":"/mysqlimport","d":"为MySQL服务器用命令行方式导入数据"},"mysqlshow":{"n":"mysqlshow","p":"/mysqlshow","d":"显示MySQL中数据库相关信息"},"named-checkzone":{"n":"named-checkzone","p":"/named-checkzone","d":"使用named-checkzone命令可以进行区域文件有效性检查和转换,必须指定区域名称和区域文件名称"},"nano":{"n":"nano","p":"/nano","d":"字符终端文本编辑器"},"nc":{"n":"nc","p":"/nc","d":"用于设置路由器,是网络工具中的瑞士军刀。"},"ncftp":{"n":"ncftp","p":"/ncftp","d":"是增强的的FTP工具"},"nethogs":{"n":"nethogs","p":"/nethogs","d":"终端下的网络流量监控工具"},"netstat":{"n":"netstat","p":"/netstat","d":"查看Linux中网络系统状态信息"},"newusers":{"n":"newusers","p":"/newusers","d":"用于批处理的方式一次创建多个命令"},"nfsstat":{"n":"nfsstat","p":"/nfsstat","d":"列出NFS客户端和服务器的工作状态"},"ngrep":{"n":"ngrep","p":"/ngrep","d":"方便的数据包匹配和显示工具"},"nice":{"n":"nice","p":"/nice","d":"改变程序执行的优先权等级"},"nisdomainname":{"n":"nisdomainname","p":"/nisdomainname","d":"显示主机NIS的域名"},"nl":{"n":"nl","p":"/nl","d":"为每一个文件添加行号。"},"nm":{"n":"nm","p":"/nm","d":"显示二进制目标文件的符号表"},"nmap":{"n":"nmap","p":"/nmap","d":"网络探测和安全审核"},"nmcli":{"n":"nmcli","p":"/nmcli","d":"地址配置工具"},"nohup":{"n":"nohup","p":"/nohup","d":"将程序以忽略挂起信号的方式运行起来"},"nologin":{"n":"nologin","p":"/nologin","d":"拒绝用户登录系统"},"nproc":{"n":"nproc","p":"/nproc","d":"打印可用的处理器单元数量。"},"nslookup":{"n":"nslookup","p":"/nslookup","d":"查询域名DNS信息的工具"},"ntpdate":{"n":"ntpdate","p":"/ntpdate","d":"使用网络计时协议(NTP)设置日期和时间"},"ntsysv":{"n":"ntsysv","p":"/ntsysv","d":"集中管理系统的各种服务"},"objdump":{"n":"objdump","p":"/objdump","d":"显示二进制文件信息"},"od":{"n":"od","p":"/od","d":"输出文件的八进制、十六进制等格式编码的字节"},"openssl":{"n":"openssl","p":"/openssl","d":"强大的安全套接字层密码库"},"parted":{"n":"parted","p":"/parted","d":"磁盘分区和分区大小调整工具"},"partprobe":{"n":"partprobe","p":"/partprobe","d":"不重启的情况下重读分区"},"passwd":{"n":"passwd","p":"/passwd","d":"用于让用户可以更改自己的密码"},"paste":{"n":"paste","p":"/paste","d":"将多个文件按列队列合并"},"patch":{"n":"patch","p":"/patch","d":"为开放源代码软件安装补丁程序"},"pathchk":{"n":"pathchk","p":"/pathchk","d":"检查文件中不可移植的部分"},"perl":{"n":"perl","p":"/perl","d":"perl语言解释器"},"pfctl":{"n":"pfctl","p":"/pfctl","d":"PF防火墙的配置命令"},"pgrep":{"n":"pgrep","p":"/pgrep","d":"根据用户给出的信息在当前运行进程中查找并列出符合条件的进程ID(PID)"},"php":{"n":"php","p":"/php","d":"PHP语言的命令行接口"},"pico":{"n":"pico","p":"/pico","d":"功能强大全屏幕的文本编辑器"},"pidof":{"n":"pidof","p":"/pidof","d":"查找指定名称的进程的进程号ID号"},"pigz":{"n":"pigz","p":"/pigz","d":"可以用来解压缩文件,gzip的并行实现升级版"},"ping":{"n":"ping","p":"/ping","d":"测试主机之间网络的连通性"},"pkill":{"n":"pkill","p":"/pkill","d":"可以按照进程名杀死进程"},"pmap":{"n":"pmap","p":"/pmap","d":"报告进程的内存映射关系"},"popd":{"n":"popd","p":"/popd","d":"从目录堆栈中删除目录。"},"poweroff":{"n":"poweroff","p":"/poweroff","d":"关闭Linux系统,关闭记录会被写入到/var/log/wtmp日志文件中"},"ppp-off":{"n":"ppp-off","p":"/ppp-off","d":"关闭ppp连线"},"pr":{"n":"pr","p":"/pr","d":"将文本文件转换成适合打印的格式"},"printf":{"n":"printf","p":"/printf","d":"格式化并输出结果。"},"protoize":{"n":"protoize","p":"/protoize","d":"GNU-C代码转换为ANSI-C代码"},"ps":{"n":"ps","p":"/ps","d":"报告当前系统的进程状态"},"pssh":{"n":"pssh","p":"/pssh","d":"批量管理执行"},"pstack":{"n":"pstack","p":"/pstack","d":"显示每个进程的栈跟踪"},"pstree":{"n":"pstree","p":"/pstree","d":"以树状图的方式展现进程之间的派生关系"},"pushd":{"n":"pushd","p":"/pushd","d":"将目录添加到目录堆栈顶部。"},"pv":{"n":"pv","p":"/pv","d":"显示当前在命令行执行的命令的进度信息,管道查看器"},"pvchange":{"n":"pvchange","p":"/pvchange","d":"修改物理卷属性"},"pvck":{"n":"pvck","p":"/pvck","d":"检测物理卷的LVM元数据的一致性"},"pvcreate":{"n":"pvcreate","p":"/pvcreate","d":"将物理硬盘分区初始化为物理卷"},"pvdisplay":{"n":"pvdisplay","p":"/pvdisplay","d":"显示物理卷的属性"},"pvremove":{"n":"pvremove","p":"/pvremove","d":"删除一个存在的物理卷"},"pvs":{"n":"pvs","p":"/pvs","d":"输出物理卷信息报表"},"pvscan":{"n":"pvscan","p":"/pvscan","d":"扫描系统中所有硬盘的物理卷列表"},"pwck":{"n":"pwck","p":"/pwck","d":"用来验证系统认证文件内容和格式的完整性"},"pwconv":{"n":"pwconv","p":"/pwconv","d":"用来开启用户的投影密码"},"pwd":{"n":"pwd","p":"/pwd","d":"显示当前工作目录的绝对路径。"},"pwunconv":{"n":"pwunconv","p":"/pwunconv","d":"用来关闭用户的投影密码"},"quota":{"n":"quota","p":"/quota","d":"显示磁盘已使用的空间与限制"},"quotacheck":{"n":"quotacheck","p":"/quotacheck","d":"检查磁盘的使用空间与限制"},"quotaoff":{"n":"quotaoff","p":"/quotaoff","d":"关闭Linux内核中指定文件系统的磁盘配额功能"},"quotaon":{"n":"quotaon","p":"/quotaon","d":"激活Linux内核中指定文件系统的磁盘配额功能"},"rcconf":{"n":"rcconf","p":"/rcconf","d":"Debian Linux下的运行等级服务配置工具"},"rcp":{"n":"rcp","p":"/rcp","d":"使在两台Linux主机之间的文件复制操作更简单"},"read":{"n":"read","p":"/read","d":"从键盘读取变量值"},"readelf":{"n":"readelf","p":"/readelf","d":"用于显示elf格式文件的信息"},"readonly":{"n":"readonly","p":"/readonly","d":"标记shell变量或函数为只读"},"reboot":{"n":"reboot","p":"/reboot","d":"重新启动正在运行的Linux操作系统"},"reject":{"n":"reject","p":"/reject","d":"指示打印系统拒绝发往指定目标打印机的打印任务"},"rename":{"n":"rename","p":"/rename","d":"用字符串替换的方式批量改变文件名"},"renice":{"n":"renice","p":"/renice","d":"修改正在运行的进程的调度优先级"},"repquota":{"n":"repquota","p":"/repquota","d":"报表的格式输出磁盘空间限制的状态"},"resize":{"n":"resize","p":"/resize","d":"命令设置终端机视窗的大小"},"restore":{"n":"restore","p":"/restore","d":"所进行的操作和dump指令相反"},"restorecon":{"n":"restorecon","p":"/restorecon","d":"恢复文件的安全上下文"},"return":{"n":"return","p":"/return","d":"从函数中退出并返回数值。"},"rev":{"n":"rev","p":"/rev","d":"将文件内容以字符为单位反序输出"},"rexec":{"n":"rexec","p":"/rexec","d":"远程执行Linux系统下命令"},"rlogin":{"n":"rlogin","p":"/rlogin","d":"从当前终端登录到远程Linux主机"},"rm":{"n":"rm","p":"/rm","d":"用于删除给定的文件和目录"},"rmdir":{"n":"rmdir","p":"/rmdir","d":"用来删除空目录"},"rmmod":{"n":"rmmod","p":"/rmmod","d":"从运行的内核中移除指定的内核模块"},"route":{"n":"route","p":"/route","d":"显示并设置Linux中静态路由表"},"rpm":{"n":"rpm","p":"/rpm","d":"RPM软件包的管理工具"},"rpm2cpio":{"n":"rpm2cpio","p":"/rpm2cpio","d":"将RPM软件包转换为cpio格式的文件"},"rpmbuild":{"n":"rpmbuild","p":"/rpmbuild","d":"创建RPM的二进制软件包和源码软件包"},"rpmdb":{"n":"rpmdb","p":"/rpmdb","d":"初始化和重建RPM数据库"},"rpmquery":{"n":"rpmquery","p":"/rpmquery","d":"从RPM数据库中查询软件包信息"},"rpmsign":{"n":"rpmsign","p":"/rpmsign","d":"使用RPM软件包的签名管理工具"},"rpmverify":{"n":"rpmverify","p":"/rpmverify","d":"验证已安装的RPM软件包的正确性"},"rsh":{"n":"rsh","p":"/rsh","d":"连接远程主机并执行命令"},"rsync":{"n":"rsync","p":"/rsync","d":"远程数据同步工具"},"runlevel":{"n":"runlevel","p":"/runlevel","d":"打印当前Linux系统的运行等级"},"sar":{"n":"sar","p":"/sar","d":"系统运行状态统计工具"},"scp":{"n":"scp","p":"/scp","d":"加密的方式在本地主机和远程主机之间复制文件"},"screen":{"n":"screen","p":"/screen","d":"用于命令行终端切换"},"script":{"n":"script","p":"/script","d":"记录终端会话的所有操作"},"scriptreplay":{"n":"scriptreplay","p":"/scriptreplay","d":"重新播放终端会话的所有操作"},"sed":{"n":"sed","p":"/sed","d":"功能强大的流式文本编辑器"},"seinfo":{"n":"seinfo","p":"/seinfo","d":"查询SELinux的策略提供多少相关规则"},"semanage":{"n":"semanage","p":"/semanage","d":"默认目录的安全上下文查询与修改"},"sendmail":{"n":"sendmail","p":"/sendmail","d":"著名电子邮件服务器"},"seq":{"n":"seq","p":"/seq","d":"以指定增量从首数开始打印数字到尾数"},"service":{"n":"service","p":"/service","d":"控制系统服务的实用工具"},"sesearch":{"n":"sesearch","p":"/sesearch","d":"查询SELinux策略的规则详情"},"set":{"n":"set","p":"/set","d":"显示或设置shell特性及shell变量"},"setfacl":{"n":"setfacl","p":"/setfacl","d":"设置文件访问控制列表"},"setpci":{"n":"setpci","p":"/setpci","d":"查询和配置PCI设备的使用工具"},"setsebool":{"n":"setsebool","p":"/setsebool","d":"修改SElinux策略内各项规则的布尔值"},"setsid":{"n":"setsid","p":"/setsid","d":"在新的会话中运行程序"},"sftp-server":{"n":"sftp-server","p":"/sftp-server","d":"sftp协议的服务器端程序"},"sftp":{"n":"sftp","p":"/sftp","d":"交互式的文件传输程序"},"sh":{"n":"sh","p":"/sh","d":"shell命令解释器"},"shift":{"n":"shift","p":"/shift","d":"移动位置参数。"},"shopt":{"n":"shopt","p":"/shopt","d":"显示和设置shell操作选项"},"showmount":{"n":"showmount","p":"/showmount","d":"显示NFS服务器加载的信息"},"shuf":{"n":"shuf","p":"/shuf","d":"产生随机的排列。"},"shutdown":{"n":"shutdown","p":"/shutdown","d":"用来执行系统关机的命令"},"skill":{"n":"skill","p":"/skill","d":"向选定的进程发送信号冻结进程"},"slabtop":{"n":"slabtop","p":"/slabtop","d":"实时显示内核slab内存缓存信息"},"sleep":{"n":"sleep","p":"/sleep","d":"将目前动作延迟一段时间"},"slocate":{"n":"slocate","p":"/slocate","d":"命令查找文件或目录"},"smbclient":{"n":"smbclient","p":"/smbclient","d":"交互方式访问samba服务器"},"smbpasswd":{"n":"smbpasswd","p":"/smbpasswd","d":"samba用户和密码管理工具"},"sort":{"n":"sort","p":"/sort","d":"对文本文件中所有行进行排序。"},"source":{"n":"source","p":"/source","d":"在当前Shell环境中从指定文件读取和执行命令。"},"speedtest-cli":{"n":"speedtest-cli","p":"/speedtest-cli","d":"命令行下测试服务器外网速度"},"spell":{"n":"spell","p":"/spell","d":"对文件进行拼写检查"},"split":{"n":"split","p":"/split","d":"分割任意大小的文件"},"squid":{"n":"squid","p":"/squid","d":"squid服务器守护进程"},"squidclient":{"n":"squidclient","p":"/squidclient","d":"squid服务器的客户端管理工具"},"ss":{"n":"ss","p":"/ss","d":"比 netstat 好用的socket统计信息,iproute2 包附带的另一个工具,允许你查询 socket 的有关统计信息"},"ssh-add":{"n":"ssh-add","p":"/ssh-add","d":"把专用密钥添加到ssh-agent的高速缓存中"},"ssh-agent":{"n":"ssh-agent","p":"/ssh-agent","d":"ssh密钥管理器"},"ssh-copy-id":{"n":"ssh-copy-id","p":"/ssh-copy-id","d":"把本地的ssh公钥文件安装到远程主机对应的账户下"},"ssh-keygen":{"n":"ssh-keygen","p":"/ssh-keygen","d":"为ssh生成、管理和转换认证密钥"},"ssh-keyscan":{"n":"ssh-keyscan","p":"/ssh-keyscan","d":"收集主机公钥的使用工具"},"ssh":{"n":"ssh","p":"/ssh","d":"openssh套件中的客户端连接工具"},"sshd":{"n":"sshd","p":"/sshd","d":"openssh软件套件中的服务器守护进程"},"startx":{"n":"startx","p":"/startx","d":"用来启动X Window"},"stat":{"n":"stat","p":"/stat","d":"用于显示文件的状态信息"},"strace":{"n":"strace","p":"/strace","d":"跟踪系统调用和信号"},"strings":{"n":"strings","p":"/strings","d":"在对象文件或二进制文件中查找可打印的字符串"},"stty":{"n":"stty","p":"/stty","d":"修改终端命令行的相关设置"},"su":{"n":"su","p":"/su","d":"用于切换当前用户身份到其他用户身份"},"sudo":{"n":"sudo","p":"/sudo","d":"以其他身份来执行命令"},"sum":{"n":"sum","p":"/sum","d":"计算文件的校验码和显示块数"},"supervisord":{"n":"supervisord","p":"/supervisord","d":"配置后台服务/常驻进程的进程管家工具"},"suspend":{"n":"suspend","p":"/suspend","d":"挂起shell的执行。"},"swapoff":{"n":"swapoff","p":"/swapoff","d":"关闭指定的交换空间"},"swapon":{"n":"swapon","p":"/swapon","d":"激活Linux系统中交换空间"},"sync":{"n":"sync","p":"/sync","d":"用于强制被改变的内容立刻写入磁盘"},"sysctl":{"n":"sysctl","p":"/sysctl","d":"时动态地修改内核的运行参数"},"syslog":{"n":"syslog","p":"/syslog","d":"系统默认的日志守护进程"},"systemctl":{"n":"systemctl","p":"/systemctl","d":"系统服务管理器指令"},"systool":{"n":"systool","p":"/systool","d":"显示基于总线、类和拓扑显示系统中设备的信息"},"tac":{"n":"tac","p":"/tac","d":"连接多个文件并以行为单位反向打印到标准输出。"},"tail":{"n":"tail","p":"/tail","d":"在屏幕上显示指定文件的末尾若干行"},"tailf":{"n":"tailf","p":"/tailf","d":"在屏幕上显示指定文件的末尾若干行内容,通常用于日志文件的跟踪输出"},"talk":{"n":"talk","p":"/talk","d":"让用户和其他用户聊天"},"tar":{"n":"tar","p":"/tar","d":"将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。"},"tcpdump":{"n":"tcpdump","p":"/tcpdump","d":"一款sniffer工具,是Linux上的抓包工具,嗅探器"},"tcpreplay":{"n":"tcpreplay","p":"/tcpreplay","d":"将PCAP包重新发送,用于性能或者功能测试"},"tee":{"n":"tee","p":"/tee","d":"从标准输入读取数据并重定向到标准输出和文件。"},"telinit":{"n":"telinit","p":"/telinit","d":"切换当前正在运行系统的运行等级"},"telnet":{"n":"telnet","p":"/telnet","d":"登录远程主机和管理(测试ip端口是否连通)"},"tempfile":{"n":"tempfile","p":"/tempfile","d":"shell中给临时文件命名"},"test":{"n":"test","p":"/test","d":"执行条件表达式。"},"tftp":{"n":"tftp","p":"/tftp","d":"在本机和tftp服务器之间使用TFTP协议传输文件"},"time":{"n":"time","p":"/time","d":"统计给定命令所花费的总时间"},"times":{"n":"times","p":"/times","d":"显示进程累计时间。"},"tload":{"n":"tload","p":"/tload","d":"显示系统负载状况"},"tmux":{"n":"tmux","p":"/tmux","d":"Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权"},"top":{"n":"top","p":"/top","d":"显示或管理执行中的程序"},"touch":{"n":"touch","p":"/touch","d":"创建新的空文件"},"tput":{"n":"tput","p":"/tput","d":"通过terminfo数据库对终端会话进行初始化和操作"},"tr":{"n":"tr","p":"/tr","d":"将字符进行替换压缩和删除"},"tracepath":{"n":"tracepath","p":"/tracepath","d":"追踪目的主机经过的路由信息"},"traceroute":{"n":"traceroute","p":"/traceroute","d":"显示数据包到主机间的路径"},"trap":{"n":"trap","p":"/trap","d":"捕捉信号和其他事件并执行命令。"},"tree":{"n":"tree","p":"/tree","d":"树状图列出目录的内容"},"true":{"n":"true","p":"/true","d":"返回状态为成功。"},"tty":{"n":"tty","p":"/tty","d":"显示连接到当前标准输入的终端设备文件名"},"type":{"n":"type","p":"/type","d":"显示指定命令的类型。"},"ulimit":{"n":"ulimit","p":"/ulimit","d":"控制shell程序的资源"},"umask":{"n":"umask","p":"/umask","d":"显示或设置创建文件的权限掩码。"},"umount":{"n":"umount","p":"/umount","d":"用于卸载已经加载的文件系统"},"unalias":{"n":"unalias","p":"/unalias","d":"删除由alias设置的别名"},"uname":{"n":"uname","p":"/uname","d":"打印系统信息。"},"unarj":{"n":"unarj","p":"/unarj","d":"解压缩由arj命令创建的压缩包"},"uncompress":{"n":"uncompress","p":"/uncompress","d":"用来解压.Z文件"},"unexpand":{"n":"unexpand","p":"/unexpand","d":"将文件的空白字符转换为制表符"},"uniq":{"n":"uniq","p":"/uniq","d":"显示或忽略重复的行。"},"unlink":{"n":"unlink","p":"/unlink","d":"系统调用函数unlink去删除指定的文件"},"unprotoize":{"n":"unprotoize","p":"/unprotoize","d":"删除C语言源代码文件中的函数原型"},"unrar":{"n":"unrar","p":"/unrar","d":"解压rar文件命令,从 rar 压缩包中提取文件"},"unset":{"n":"unset","p":"/unset","d":"删除指定的shell变量或函数。"},"unzip":{"n":"unzip","p":"/unzip","d":"用于解压缩由zip命令压缩的压缩包"},"updatedb":{"n":"updatedb","p":"/updatedb","d":"创建或更新slocate命令所必需的数据库文件"},"uptime":{"n":"uptime","p":"/uptime","d":"查看Linux系统负载信息"},"useradd":{"n":"useradd","p":"/useradd","d":"创建的新的系统用户"},"userdel":{"n":"userdel","p":"/userdel","d":"用于删除给定的用户以及与用户相关的文件"},"usermod":{"n":"usermod","p":"/usermod","d":"用于修改用户的基本信息"},"usernetctl":{"n":"usernetctl","p":"/usernetctl","d":"被允许时操作指定的网络接口"},"users":{"n":"users","p":"/users","d":"打印当前主机所有登陆用户的名称。"},"uucico":{"n":"uucico","p":"/uucico","d":"UUCP文件传输服务程序"},"uupick":{"n":"uupick","p":"/uupick","d":"命令处理传送进来的文件"},"uuto":{"n":"uuto","p":"/uuto","d":"将文件传送到远端的UUCP主机"},"vdfuse":{"n":"vdfuse","p":"/vdfuse","d":"VirtualBox软件挂载VDI分区文件工具"},"vgchange":{"n":"vgchange","p":"/vgchange","d":"修改卷组属性"},"vgconvert":{"n":"vgconvert","p":"/vgconvert","d":"转换卷组元数据格式"},"vgcreate":{"n":"vgcreate","p":"/vgcreate","d":"用于创建LVM卷组"},"vgdisplay":{"n":"vgdisplay","p":"/vgdisplay","d":"显示LVM卷组的信息"},"vgextend":{"n":"vgextend","p":"/vgextend","d":"向卷组中添加物理卷"},"vgreduce":{"n":"vgreduce","p":"/vgreduce","d":"从卷组中删除物理卷"},"vgremove":{"n":"vgremove","p":"/vgremove","d":"用于用户删除LVM卷组"},"vgrename":{"n":"vgrename","p":"/vgrename","d":"使用vgrename命令可以重命名卷组的名称"},"vgscan":{"n":"vgscan","p":"/vgscan","d":"扫描并显示系统中的卷组"},"vi":{"n":"vi","p":"/vi","d":"功能强大的纯文本编辑器"},"vmstat":{"n":"vmstat","p":"/vmstat","d":"显示虚拟内存状态"},"volname":{"n":"volname","p":"/volname","d":"显示指定的ISO-9660格式的设备的卷名称"},"w":{"n":"w","p":"/w","d":"显示目前登入系统的用户信息"},"wait":{"n":"wait","p":"/wait","d":"等待进程执行完后返回"},"wall":{"n":"wall","p":"/wall","d":"向系统当前所有打开的终端上输出信息"},"watch":{"n":"watch","p":"/watch","d":"可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令"},"wc":{"n":"wc","p":"/wc","d":"统计文件的字节数、字数、行数"},"wget":{"n":"wget","p":"/wget","d":"Linux系统下载文件工具"},"whatis":{"n":"whatis","p":"/whatis","d":"查询一个命令执行什么功能"},"whereis":{"n":"whereis","p":"/whereis","d":"查找二进制程序、代码等相关文件路径"},"which":{"n":"which","p":"/which","d":"查找并显示给定命令的绝对路径"},"who":{"n":"who","p":"/who","d":"显示当前所有登陆用户的信息。"},"whoami":{"n":"whoami","p":"/whoami","d":"打印当前有效的用户ID对应的名称"},"write":{"n":"write","p":"/write","d":"向指定登录用户终端上发送信息"},"xargs":{"n":"xargs","p":"/xargs","d":"给其他命令传递参数的一个过滤器"},"xauth":{"n":"xauth","p":"/xauth","d":"显示和编辑被用于连接X服务器的认证信息"},"xclip":{"n":"xclip","p":"/xclip","d":"管理 X 粘贴板"},"xhost":{"n":"xhost","p":"/xhost","d":"制哪些X客户端能够在X服务器上显示"},"xinit":{"n":"xinit","p":"/xinit","d":"是Linux下X-Window系统的初始化程序"},"xlsatoms":{"n":"xlsatoms","p":"/xlsatoms","d":"列出X服务器内部所有定义的原子成分"},"xlsclients":{"n":"xlsclients","p":"/xlsclients","d":"列出显示器中的客户端应用程序"},"xlsfonts":{"n":"xlsfonts","p":"/xlsfonts","d":"列出X Server使用的字体"},"xset":{"n":"xset","p":"/xset","d":"设置X-Window系统中的用户爱好的实用工具"},"xz":{"n":"xz","p":"/xz","d":"POSIX 平台开发具有高压缩率的工具"},"yes":{"n":"yes","p":"/yes","d":"重复打印指定字符串"},"ypdomainname":{"n":"ypdomainname","p":"/ypdomainname","d":"显示主机的NIS的域名"},"yum":{"n":"yum","p":"/yum","d":"基于RPM的软件包管理器"},"zcat":{"n":"zcat","p":"/zcat","d":"显示压缩包中文件的内容"},"zfore":{"n":"zfore","p":"/zfore","d":"强制为gzip格式的压缩文件添加.gz后缀"},"zip":{"n":"zip","p":"/zip","d":"可以用来解压缩文件"},"zipinfo":{"n":"zipinfo","p":"/zipinfo","d":"用来列出压缩文件信息"},"zipsplit":{"n":"zipsplit","p":"/zipsplit","d":"将较大的zip压缩包分割成各个较小的压缩包"},"znew":{"n":"znew","p":"/znew","d":"将.Z压缩包重新转化为gzip命令压缩的.gz压缩包"}} \ No newline at end of file diff --git a/package.json b/package.json index 6471d2fce2b..b356b16049e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "linux-command", - "version": "1.8.3", + "version": "1.9.0", "description": "Linux Command", "homepage": "https://jaywcjlove.github.io/linux-command/", "main": "dist/data.json", From 0530c067776283f56abe2ae49a44d54eb25985d0 Mon Sep 17 00:00:00 2001 From: weibk <79395818+weibk@users.noreply.github.com> Date: Thu, 17 Mar 2022 20:09:28 +0800 Subject: [PATCH 034/566] Update shuf.md (#345) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 第一个例子中命令应该是 shuf 而不是 head --- command/shuf.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/command/shuf.md b/command/shuf.md index c70c3055365..35518b98112 100644 --- a/command/shuf.md +++ b/command/shuf.md @@ -44,7 +44,7 @@ ARG(可选):作为输入行的字符串,可以为任意数量。 ```shell # 模拟硬币抛掷,获取前10个结果: -[user2@pc ~]$ head -r -n 10 -e "正面" -e "反面" +[user2@pc ~]$ shuf -r -n 10 -e "正面" -e "反面" 反面 正面 正面 From 2c3e9f08c6eecd6f85e647cbe506fcc59f4b0566 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83=E2=84=A2?= Date: Thu, 24 Mar 2022 06:50:24 +0800 Subject: [PATCH 035/566] Add journalctl.md (#347) --- command/journalctl.md | 155 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 command/journalctl.md diff --git a/command/journalctl.md b/command/journalctl.md new file mode 100644 index 00000000000..e87fcb51040 --- /dev/null +++ b/command/journalctl.md @@ -0,0 +1,155 @@ +journalctl +=== + +检索 systemd 日志,是 CentOS 7 才有的工具。 + +### 语法 + +```shell +journalctl [OPTIONS...] [MATCHES...] +``` + +### 选项 + +```shell +Flags: + --system # 显示系统日志 + --user # 显示当前用户的用户日志 +-M --machine=CONTAINER # 在本地容器上操作 +-S --since=DATE # 显示不早于指定日期的条目 +-U --until=DATE # 显示不晚于指定日期的条目 +-c --cursor=CURSOR # 显示从指定光标开始的条目 + --after-cursor=CURSOR # 在指定光标后显示条目 + --show-cursor # 在所有条目之后打印光标 +-b --boot[=ID] # 显示当前启动或指定启动 + --list-boots # 显示有关已记录引导的简洁信息 +-k --dmesg # 显示当前启动的内核消息日志 +-u --unit=UNIT # 显示指定单元的日志 +-t --identifier=STRING # 显示具有指定系统日志标识符的条目 +-p --priority=RANGE # 显示具有指定优先级的条目 +-e --pager-end # 在pager中立即跳转到末尾 +-f --follow # 关注期刊 +-n --lines[=INTEGER] # 要显示的日志条目数 + --no-tail # 显示所有行,即使在跟随模式下 +-r --reverse # 首先显示最新的条目 +-o --output=STRING # 更改日志输出模式 (short, short-iso, + short-precise, short-monotonic, verbose, + export, json, json-pretty, json-sse, cat) +--utc # 以协调世界时 (UTC) 表示的时间 +-x --catalog # 在可用的情况下添加消息说明 + --no-full # Ellipsize 字段 +-a --all # 显示所有字段,包括长的和不可打印的 +-q --quiet # 不显示特权警告 + --no-pager # 不要将输出通过管道传输到寻呼机 +-m --merge # 显示所有可用期刊的条目 +-D --directory=PATH # 显示目录中的日志文件 + --file=PATH # 显示日志文件 + --root=ROOT # 对根目录下的目录文件进行操作 + --interval=TIME # 更改 FSS 密封键的时间间隔 + --verify-key=KEY # 指定FSS验证密钥 + --force # 使用 --setup-keys 覆盖 FSS 密钥对 + +Commands: +-h --help # 显示此帮助文本 + --version # 显示包版本 +-F --field=FIELD # 列出指定字段的所有值 + --new-id128 # 生成新的 128 位 ID + --disk-usage # 显示所有日志文件的总磁盘使用情况 + --vacuum-size=BYTES # 将磁盘使用量减少到指定大小以下 + --vacuum-time=TIME # 删除早于指定日期的日志文件 + --flush # 将所有日志数据从 /run 刷新到 /var + --header # 显示期刊头信息 + --list-catalog # 显示目录中的所有消息 ID + --dump-catalog # 在消息目录中显示条目 + --update-catalog # 更新消息目录数据库 + --setup-keys # 生成新的 FSS 密钥对 + --verify # 验证日志文件的一致性 +``` + +### 实例 + +**过滤输出** + +`journalctl` 可以根据特定字段过滤输出。如果过滤的字段比较多,需要较长时间才能显示出来。 + +示例: + +显示本次启动后的所有日志: + +```shell +journalctl -b +``` + +不过,一般大家更关心的不是本次启动后的日志,而是上次启动时的(例如,刚刚系统崩溃了)。可以使用 -b 参数: + +- `journalctl -b -0` 显示本次启动的信息 +- `journalctl -b -1` 显示上次启动的信息 +- `journalctl -b -2` 显示上上次启动的信息 `journalctl -b -2` + +只显示错误、冲突和重要告警信息 + +```shell +journalctl -p err..alert +``` + +也可以使用数字, `journalctl -p 3..1`。如果使用单个 number/keyword,则 `journalctl -p 3` - 还包括所有更高的优先级。 + +显示从某个日期 ( 或时间 ) 开始的消息: + +```shell +journalctl --since="2012-10-30 18:17:16" +``` + +显示从某个时间 ( 例如 20分钟前 ) 的消息: + +```shell +journalctl --since "20 min ago" +``` + +显示最新信息 + +```shell +journalctl -f +``` + +显示特定程序的所有消息: + +```shell +journalctl /usr/lib/systemd/systemd +``` + +显示特定进程的所有消息: + +```shell +journalctl _PID=1 +``` + +显示指定单元的所有消息: + +```shell +journalctl -u man-db.service +``` + +显示内核环缓存消息r: + +```shell +journalctl -k +``` + +**手动清理日志** + +`/var/log/journal` 存放着日志, `rm` 应该能工作. 或者使用 `journalctl`, + +例如: + +清理日志使总大小小于 100M: + +```shell +journalctl --vacuum-size=100M +``` + +清理最早两周前的日志. + +```shell +journalctl --vacuum-time=2weeks +``` From 0802e9695cf87653c7b6eb02bd0a8aad7c2b6e5e Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sun, 3 Apr 2022 23:32:20 +0800 Subject: [PATCH 036/566] website: add dark theme. --- build/build.mjs | 9 ++-- package.json | 4 +- template/contributors.ejs | 2 +- template/list.ejs | 1 - template/partial/header.ejs | 5 ++- template/styl/index.styl | 70 +++++++++--------------------- template/styl/mixins/css.styl | 19 -------- template/styl/mixins/markdown.styl | 2 +- template/styl/mixins/reset.styl | 5 +-- template/widget/search.ejs | 13 +----- 10 files changed, 37 insertions(+), 93 deletions(-) delete mode 100644 template/styl/mixins/css.styl diff --git a/build/build.mjs b/build/build.mjs index 90045013bf6..42ae373d3ca 100644 --- a/build/build.mjs +++ b/build/build.mjs @@ -24,7 +24,9 @@ const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); await FS.ensureDir(path.resolve(deployDir, 'c')); await FS.copySync(faviconPath, path.resolve(deployDir, 'img', 'favicon.ico')); - await FS.copyFile(path.resolve(process.cwd(), 'template', 'js', 'copy-to-clipboard.js'), path.resolve(deployDir, 'js', 'copy-to-clipboard.js')) + await FS.copyFile(path.resolve(process.cwd(), 'template', 'js', 'copy-to-clipboard.js'), path.resolve(deployDir, 'js', 'copy-to-clipboard.js')); + await FS.copyFile(path.resolve(process.cwd(), 'node_modules/@wcj/dark-mode/main.js'), path.resolve(deployDir, 'js', 'dark-mode.min.js')); + await FS.copyFile(path.resolve(process.cwd(), 'node_modules/@uiw/github-corners/lib/index.js'), path.resolve(deployDir, 'js', 'github-corners.js')); const jsData = await FS.readFileSync(rootIndexJSPath); await FS.outputFile(path.resolve(deployDir, 'js', 'index.js'), UglifyJS.minify(jsData.toString()).code) @@ -214,7 +216,7 @@ const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); } function markdownToHTML(str) { - return create({ markdown: str, document: undefined }); + return create({ markdown: str, document: undefined, 'dark-mode': false }); } /** @@ -226,13 +228,12 @@ function markdownToHTML(str) { return new Promise((resolve, reject) => { try { const stylStr = FS.readFileSync(stylPath, 'utf8'); - const stylMD = FS.readFileSync(path.resolve('node_modules/markdown-to-html-cli/github.css'), 'utf8'); stylus(stylStr.toString()) .set('filename', stylPath) .set('compress', true) .render((err, css) => { if (err) throw err; - resolve(`${stylMD.replace(/\n/, '')}\n${css}`); + resolve(`${css}`); }); } catch (err) { reject(err); diff --git a/package.json b/package.json index b356b16049e..04291c4b1d0 100644 --- a/package.json +++ b/package.json @@ -25,11 +25,13 @@ "url": "git+https://github.com/jaywcjlove/linux-command.git" }, "devDependencies": { + "@uiw/github-corners": "~1.5.11", + "@wcj/dark-mode": "~1.0.14", "archiver": "~5.3.0", "colors-cli": "~1.0.28", "ejs": "~3.1.6", "fs-extra": "~10.0.1", - "markdown-to-html-cli": "~3.2.5", + "markdown-to-html-cli": "~3.4.1", "sitemap-generator": "~8.5.1", "sqlite3": "~5.0.2", "stylus": "~0.56.0", diff --git a/template/contributors.ejs b/template/contributors.ejs index 66dca26ab5b..a799f612bba 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -4,7 +4,7 @@

Contributors

<%-describe.contributors ? describe.contributors : '' %>

- 数据来源于 GitHub Contributors,使用github-action-contributors创建。 + 数据来源于 GitHub Contributors,使用action-contributors创建。

<%- include('widget/footer',{type: "list"}); %> diff --git a/template/list.ejs b/template/list.ejs index b064b21935c..7d927bcbc38 100644 --- a/template/list.ejs +++ b/template/list.ejs @@ -1,6 +1,5 @@ <%- include('partial/header'); %> <%- include('widget/search',{type: "list"}); %> -

数据来源于 GitHub Contributors,使用action-contributors创建。 From 7c11c4631a224fe0823eb094577eecfda76d95c9 Mon Sep 17 00:00:00 2001 From: FunKeen <112614943+FunKeen@users.noreply.github.com> Date: Wed, 10 Jul 2024 11:02:58 +0800 Subject: [PATCH 487/566] doc: Update sed.md (#589) --- command/sed.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/command/sed.md b/command/sed.md index 108fa1c44f6..416c271f25e 100644 --- a/command/sed.md +++ b/command/sed.md @@ -172,9 +172,10 @@ sed '2,$d' file sed '$d' file ``` -删除文件中所有开头是test的行: +删除文件中所有开头是test的行(d写外边效果一样): ```shell +sed '/^test/d' file sed '/^test/'d file ``` From d8553adae9e0c067a6744123686a9e5fa9cf2349 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 10 Jul 2024 03:03:27 +0000 Subject: [PATCH 488/566] doc: update README.md. --- README.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 6da2ae51b34..0f8d193c9ee 100644 --- a/README.md +++ b/README.md @@ -300,12 +300,13 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. BingCoke Ein Verne Pan, Wen-Ming -linuxwd lewis1573 leo kid1412621 kassadin juemuren4449 +jqz3.tech +linuxwd Ricardowang cole myliwenbo @@ -313,8 +314,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. noodles2hg nsnans oliver -Yidan Wang -jqz3.tech jcdj666 hululu1068 huangyao @@ -329,6 +328,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 +c2ch +Yidan Wang Panthea Johnson 远方 谢民皆 @@ -360,7 +361,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. shc sfwwslm rexlin600 -MinsonLee Marnm mwei Wang @@ -381,6 +381,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. HighScorePlayer Herbert8 Guiying Li +FunKeen Frankie Divenire Derek @@ -390,7 +391,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 -c2ch brinkqiang bell azureology @@ -419,7 +419,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rining Wu Ray Yee QinShower -Mystic +Mystic +MinsonLee 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From 3454b8ac357293015980af0eaa077b151f71f202 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 10 Jul 2024 03:03:27 +0000 Subject: [PATCH 489/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 6cf5376ffa8..0b4ad636e1d 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -46,12 +46,13 @@ BingCoke Ein Verne Pan, Wen-Ming -linuxwd lewis1573 leo kid1412621 kassadin juemuren4449 +jqz3.tech +linuxwd Ricardowang cole myliwenbo @@ -59,8 +60,6 @@ noodles2hg nsnans oliver -Yidan Wang -jqz3.tech jcdj666 hululu1068 huangyao @@ -75,6 +74,8 @@ dayday cxalc Forever121 +c2ch +Yidan Wang Panthea Johnson 远方 谢民皆 @@ -106,7 +107,6 @@ shc sfwwslm rexlin600 -MinsonLee Marnm mwei Wang @@ -127,6 +127,7 @@ HighScorePlayer Herbert8 Guiying Li +FunKeen Frankie Divenire Derek @@ -136,7 +137,6 @@ Azroy Alan 0x_000 -c2ch brinkqiang bell azureology @@ -165,7 +165,8 @@ Rining Wu Ray Yee QinShower -Mystic +Mystic +MinsonLee

数据来源于 GitHub Contributors,使用action-contributors创建。 From 0db6aa6243718b2ab3a7f76f02ffc41abcd71eca Mon Sep 17 00:00:00 2001 From: FunKeen <112614943+FunKeen@users.noreply.github.com> Date: Wed, 10 Jul 2024 21:30:56 +0800 Subject: [PATCH 490/566] doc: update command/awk.md (#590) --- command/awk.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/command/awk.md b/command/awk.md index 00145315da7..9a540cb3d81 100644 --- a/command/awk.md +++ b/command/awk.md @@ -371,7 +371,7 @@ awk 'NR%2==1{next}{print NR,$0;}' text.txt 当记录行号除以2余1,就跳过当前行。下面的`print NR,$0`也不会执行。下一行开始,程序有开始判断`NR%2`值。这个时候记录行号是`:2` ,就会执行下面语句块:`'print NR,$0'` -分析发现需要将包含有“web”行进行跳过,然后需要将内容与下面行合并为一行: +跳过以“web”为首的行,再将该行内容分别与下面不以“web”为首的行合并打印,使用一个“:”和一个制表符连接: ```shell cat text.txt @@ -386,7 +386,7 @@ web03[192.168.2.102] mysqld ok httpd ok 0 -awk '/^web/{T=$0;next;}{print T":"t,$0;}' text.txt +awk '/^web/{T=$0;next;}{print T":\t"$0;}' text.txt web01[192.168.2.100]: httpd ok web01[192.168.2.100]: tomcat ok web01[192.168.2.100]: sendmail ok From d8438272b0bf5913a260a28822566583c8f4c1e7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 10 Jul 2024 13:31:41 +0000 Subject: [PATCH 491/566] doc: update README.md. --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 0f8d193c9ee..6da01a1f3e1 100644 --- a/README.md +++ b/README.md @@ -361,6 +361,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. shc sfwwslm rexlin600 +MinsonLee Marnm mwei Wang @@ -381,7 +382,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. HighScorePlayer Herbert8 Guiying Li -FunKeen Frankie Divenire Derek @@ -391,6 +391,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 +c2ch brinkqiang bell azureology @@ -419,8 +420,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rining Wu Ray Yee QinShower -Mystic -MinsonLee +Mystic 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From 7553e4f483b86a1c6d9e1ae09f82750d663d2da7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 10 Jul 2024 13:31:42 +0000 Subject: [PATCH 492/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 0b4ad636e1d..b92b768b4ce 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -107,6 +107,7 @@ shc sfwwslm rexlin600 +MinsonLee Marnm mwei Wang @@ -127,7 +128,6 @@ HighScorePlayer Herbert8 Guiying Li -FunKeen Frankie Divenire Derek @@ -137,6 +137,7 @@ Azroy Alan 0x_000 +c2ch brinkqiang bell azureology @@ -165,8 +166,7 @@ Rining Wu Ray Yee QinShower -Mystic -MinsonLee +Mystic

数据来源于 GitHub Contributors,使用action-contributors创建。 From f9de3eb62156ead712f9d852deb556132e00bdc3 Mon Sep 17 00:00:00 2001 From: "Q.Ben Zheng" <40693636+Zhengqbbb@users.noreply.github.com> Date: Thu, 11 Jul 2024 09:33:42 +0800 Subject: [PATCH 493/566] docs: add X-CMD social website (#591) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6da01a1f3e1..bc9f51e9048 100644 --- a/README.md +++ b/README.md @@ -191,6 +191,7 @@ https://raw.githubusercontent.com/jaywcjlove/linux-command/master/command/<命 - [鸟哥的linux私房菜](http://linux.vbird.org/) - 非常适合Linux入门初学者看的教程。 - [Linux公社](http://www.linuxidc.com/) - Linux相关的新闻、教程、主题、壁纸都有。 - [Linux Today](http://www.linuxde.net) - Linux新闻资讯发布,Linux职业技术学习!。 +- [X-CMD](https://www.x-cmd.com/) - Shell + AWK 为核心增强原生命令输出以及交互体验,各种命令以及现代化软件包的介绍和使用教程,每日科技新闻资讯,欢迎浏览关注! ### 知识相关 From f686028a0f260eba0101fce5cbeb7b80cd75c9fc Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 11 Jul 2024 01:34:27 +0000 Subject: [PATCH 494/566] doc: update README.md. --- README.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index bc9f51e9048..2c50f0cc271 100644 --- a/README.md +++ b/README.md @@ -290,23 +290,23 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. xhal VVatt gggwvg -Dazhuangw -Alterem -YH -YEUNGCHIE -Xrtero -Xingwen Zhang -Shan Chenyu -RichardLCD BingCoke Ein Verne +FunKeen Pan, Wen-Ming -lewis1573 -leo -kid1412621 -kassadin +RichardLCD +Shan Chenyu +Xingwen Zhang +Xrtero +YEUNGCHIE +Dazhuangw +Alterem +YH juemuren4449 -jqz3.tech +kassadin +kid1412621 +leo +lewis1573 linuxwd Ricardowang cole @@ -315,6 +315,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. noodles2hg nsnans oliver +Yidan Wang +jqz3.tech jcdj666 hululu1068 huangyao @@ -329,8 +331,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 -c2ch -Yidan Wang Panthea Johnson 远方 谢民皆 From 071e0c0aa1535c828b42ba71b5933e698035a7cb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 11 Jul 2024 01:34:29 +0000 Subject: [PATCH 495/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index b92b768b4ce..c4c13664ab2 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -35,23 +35,23 @@ xhal VVatt gggwvg -Dazhuangw -Alterem -YH -YEUNGCHIE -Xrtero -Xingwen Zhang -Shan Chenyu -RichardLCD BingCoke Ein Verne +FunKeen Pan, Wen-Ming -lewis1573 -leo -kid1412621 -kassadin +RichardLCD +Shan Chenyu +Xingwen Zhang +Xrtero +YEUNGCHIE +Dazhuangw +Alterem +YH juemuren4449 -jqz3.tech +kassadin +kid1412621 +leo +lewis1573 linuxwd Ricardowang cole @@ -60,6 +60,8 @@ noodles2hg nsnans oliver +Yidan Wang +jqz3.tech jcdj666 hululu1068 huangyao @@ -74,8 +76,6 @@ dayday cxalc Forever121 -c2ch -Yidan Wang Panthea Johnson 远方 谢民皆 From e479f15adfb16f08b5f0c8e6cd09dcd65eef1cd3 Mon Sep 17 00:00:00 2001 From: hotdogc1017 Date: Mon, 15 Jul 2024 10:19:49 +0800 Subject: [PATCH 496/566] =?UTF-8?q?docs(find=E5=91=BD=E4=BB=A4):=20?= =?UTF-8?q?=E6=8B=93=E5=B1=95`find`=E5=91=BD=E4=BB=A4=E6=8F=8F=E8=BF=B0?= =?UTF-8?q?=E4=BB=A5=E5=8F=8A=E8=A1=A5=E5=85=85=E9=A2=9D=E5=A4=96=E7=9A=84?= =?UTF-8?q?=E8=A1=A8=E8=BE=BE=E5=BC=8F=E9=80=89=E9=A1=B9=20(#593)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- command/find.md | 399 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 369 insertions(+), 30 deletions(-) diff --git a/command/find.md b/command/find.md index d6c5521366b..96612ab8420 100644 --- a/command/find.md +++ b/command/find.md @@ -3,18 +3,43 @@ find 在指定目录下查找文件 +## 解释 + +从每个指定的起始点 (目录) 开始,搜索以该点为根的目录树,并按照运算符优先级规则**从左至右**评估给定的表达式,直到结果确定,此时`find`会继续处理下一个文件名。 + ## 补充说明 -**find命令** 用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。 +本文列出的选项指的是**表达式列表中的选项**。这些选项控制了`find`的行为,需在**最后一个路径名之后**立即指定。 -### 语法 +五个真实选项: `-H、-L、-P、-D 和 -O`。如果出现,**必须位于第一个路径名之前**。关于这部分内容本文不做描述,具体内容可参考[man7.org中的find](https://man7.org/linux/man-pages/man1/find.1.html#top_of_page) +如果使用该命令时,不设置任何参数,则`find`命令将在当前目录下查找子目录与文件,并且将查找到的子目录和文件全部进行显示。等效于以下命令: ```shell -find(选项)(参数) +find . -print ``` -### 选项 +## 语法 + +```shell +find [-H] [-L] [-P] [-D debugopts] [-Olevel] [起始点...] [表达式] +``` +忽略真实选项后 (更为常见): +```shell +find [起始点...] [表达式] +``` + +## 表达式分类 +起始点(列表)之后的部分是表达式。这是一种**查询规范**,描述了我们如何匹配文件(返回**真**或者**假**)以及对匹配到的文件进行何种操作。表达式由一系列元素组成: +- 测试(Tests):测试返回一个真或假值,通常基于我们正在考虑的文件的某个属性。例如,`-empty`测试仅在当前文件为空时为真。 +- 操作(Actions):操作具有副作用(例如在标准输出上打印内容),并返回真或假,通常基于它们是否成功。例如,`-print`操作会在标准输出上打印当前文件的名称。 +- 全局(Global):全局选项影响命令行中任何部分指定的测试和操作的执行。全局选项始终返回真值。例如,`-depth`选项使find以深度优先的顺序遍历文件系统。 +- 位置(Positional):位置选项仅影响其后的测试或操作。位置选项始终返回真值。例如,`-regextype`选项是位置选项,用于指定命令行中后续正则表达式所使用的正则表达式方言。 +- 操作符(Operators):运算符将表达式中的其他项连接起来。例如,它们包括`-o`(表示逻辑或)和`-a`(表示逻辑与)。如果缺少运算符,则默认使用`-a`。 + +## 表达式选项 + +### 测试选项 ```shell -amin<分钟>:查找在指定时间曾被存取过的文件或目录,单位以分钟计算; -anewer<参考文件或目录>:查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录; @@ -22,65 +47,379 @@ find(选项)(参数) -cmin<分钟>:查找在指定时间之时被更改过的文件或目录; -cnewer<参考文件或目录>查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录; -ctime<24小时数>:查找在指定时间之时被更改的文件或目录,单位以24小时计算; --daystart:从本日开始计算时间; --depth:从指定目录下最深层的子目录开始查找; -empty:寻找文件大小为0 Byte的文件,或目录下没有任何子目录或文件的空目录; --exec<执行指令>:假设find指令的回传值为True,就执行该指令; +-executable 匹配当前用户可执行的文件和可搜索的目录。 -false:将find指令的回传值皆设为False; --fls<列表文件>:此参数的效果和指定“-ls”参数类似,但会把结果保存为指定的列表文件; --follow:排除符号连接; --fprint<列表文件>:此参数的效果和指定“-print”参数类似,但会把结果保存成指定的列表文件; --fprint0<列表文件>:此参数的效果和指定“-print0”参数类似,但会把结果保存成指定的列表文件; --fprintf<列表文件><输出格式>:此参数的效果和指定“-printf”参数类似,但会把结果保存成指定的列表文件; -fstype<文件系统类型>:只寻找该文件系统类型下的文件或目录; -gid<群组识别码>:查找符合指定之群组识别码的文件或目录; -group<群组名称>:查找符合指定之群组名称的文件或目录; --help或--help:在线帮助; -ilname<范本样式>:此参数的效果和指定“-lname”参数类似,但忽略字符大小写的差别; -iname<范本样式>:此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别; -inum:查找符合指定的inode编号的文件或目录; -ipath<范本样式>:此参数的效果和指定“-path”参数类似,但忽略字符大小写的差别; -iregex<范本样式>:此参数的效果和指定“-regexe”参数类似,但忽略字符大小写的差别; +-iwholename 模式参见`-ipath`。此选项的可移植性较`-ipath`差。 -links<连接数目>:查找符合指定的硬连接数目的文件或目录; -lname<范本样式>:指定字符串作为寻找符号连接的范本样式; --ls:假设find指令的回传值为True,就将文件或目录名称列出到标准输出; --maxdepth<目录层级>:设置最大目录层级; --mindepth<目录层级>:设置最小目录层级; -mmin<分钟>:查找在指定时间曾被更改过的文件或目录,单位以分钟计算; --mount:此参数的效果和指定“-xdev”相同; -mtime<24小时数>:查找在指定时间曾被更改过的文件或目录,单位以24小时计算; -name<范本样式>:指定字符串作为寻找文件或目录的范本样式; -newer<参考文件或目录>:查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录; +-newerXY<引用>:如果正在考虑的文件的时间戳 X 比文件引用的时间戳 Y 更新则成功。 -nogroup:找出不属于本地主机群组识别码的文件或目录; --noleaf:不去考虑目录至少需拥有两个硬连接存在; -nouser:找出不属于本地主机用户识别码的文件或目录; --ok<执行指令>:此参数的效果和指定“-exec”类似,但在执行指令之前会先询问用户,若回答“y”或“Y”,则放弃执行命令; -path<范本样式>:指定字符串作为寻找目录的范本样式; -perm<权限数值>:查找符合指定的权限数值的文件或目录; --print:假设find指令的回传值为True,就将文件或目录名称列出到标准输出。格式为每列一个名称,每个名称前皆有“./”字符串; --print0:假设find指令的回传值为True,就将文件或目录名称列出到标准输出。格式为全部的名称皆在同一行; --printf<输出格式>:假设find指令的回传值为True,就将文件或目录名称列出到标准输出。格式可以自行指定; --prune:不寻找字符串作为寻找文件或目录的范本样式; +-readable:匹配当前用户可读的文件 -regex<范本样式>:指定字符串作为寻找文件或目录的范本样式; +-samefile 名称 文件与名称指向相同的 inode。 -size<文件大小>:查找符合指定的文件大小的文件; --true:将find指令的回传值皆设为True; -type<文件类型>:只寻找符合指定的文件类型的文件; -uid<用户识别码>:查找符合指定的用户识别码的文件或目录; -used<日数>:查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算; -user<拥有者名称>:查找符和指定的拥有者名称的文件或目录; --version或——version:显示版本信息; --xdev:将范围局限在先行的文件系统中; +-writable:匹配当前用户可写入的文件。 -xtype<文件类型>:此参数的效果和指定“-type”参数类似,差别在于它针对符号连接检查。 +-context<表达式>:仅限 SELinux。文件的安全上下文与全局模式匹配 ``` -### 参数 +### 操作选项 + +#### -delete 删除文件或目录。 +> :warning:警告:find 命令会将命令行作为表达式进行解析,因此将`-delete`放在首位会将指定的起始点下的**所有内容删除**。且`-delete`操作无法删除一个目录,除非它是空的。 + +##### *无参数* + +##### 描述 +如果删除成功则返回真。若删除失败,将显示错误消息,并且 find 最终退出时的状态码将为非零。 + +##### 相关选项 +- **-depth**:在命令行中使用`-delete`操作会自动启用`-depth`选项。为了避免意外情况,通常最好在早期的**Tests选项**中**明确使用**`-depth`选项。 +- **-prune**:由于`-depth`会使`-prune`失效,因此`-delete`操作无法与`-prune`有效结合使用。通常,用户可能希望在实际删除操作前,先用带有`-print`的查找命令行进行测试,以确保在添加`-delete`进行实际删除时不会出现意外结果。 +- **-ignore_readdir_race**:`-delete`与此选项一起使用时,find 会忽略自父目录读取以来文件已消失的情况下`-delete`操作的错误:它不会输出错误诊断,不会将退出代码更改为非零,并且`-delete`操作的返回代码将为真。 + +#### -exec 执行命令 + +> :warning:警告:使用`-exec`操作存在不可避免的安全问题,应改用`-execdir`选项。 + +##### 参数 +`command ;` 或 `command {} +` + +##### 描述 +如果返回状态为 0,则结果为真。**注意**:find 命令会将**所有后续参数**视为`command`的参数,直到遇到包含`;`的参数为止。字符串`{}`会在`command`的参数中所有出现的位置被替换为当前正在处理的文件名,而不仅仅是在它单独出现的参数中,这与某些版本的 find 不同。这两种结构可能需要使用反斜杠`\`或引号来转义,以防止被 shell 扩展。指定的命令会为每个匹配的文件运行一次。命令在起始目录中执行。 + +#### -execdir 在包含匹配文件的子目录中执行命令 + +##### 参数 +`command ;` | `command {} +` + +##### 描述 +类似于`-exec`,但指定的`command`会在包含匹配文件的**子目录中运行**,而非find的起始点目录。与`-exec`一样,如果从shell调用find,`{}`应加引号。这是一种更安全的调用`command`方式,因为它避免了在解析匹配文件路径时出现的竞争条件。与`-exec`操作类似,`+`形式的`-execdir`会构建一个命令行来处理多个匹配文件,但任何给定的`command`调用只会列出存在于同一子目录中的文件。如果使用此选项,必须确保 PATH 环境变量未引用`.`,否则攻击者可以通过在您将运行`-execdir`的目录中留下一个适当命名的文件来运行任何命令。同样,PATH 中的条目**不应为空**或**非绝对目录名**。如果使用`+`形式的任何调用以非零值作为退出状态返回,则 find 也会返回非零退出状态。如果 find 遇到错误,有时会导致立即退出,**因此某些待处理的command可能根本不会运行**。 操作结果取决于使用的是`+`还是`;`变体。`-execdir command {} + `总是返回真,而 `-execdir command {} ;`仅在命令返回 0 时返回真。 + +#### -fls 创建文件并将结果写入文件 + +##### 参数 +`file` + +##### 描述 +此选项始终返回真。`-fls`类似于`-ls`和`-fprint`,但`-fls`会将结果写入文件中。无论谓词是否匹配,输出文件始终会被创建。有关文件名中特殊字符处理的信息,请参阅“特殊文件名处理”部分。 + +#### -fprint 将完整文件名打印到指定文件中 + +##### 参数 +`file` + +##### 描述 +此选项始终返回真。若运行 find 时`file`不存在,则创建该`file`;若`file`已存在,则截断其内容。文件名`/dev/stdout`和`/dev/stderr`有特殊处理,分别指向标准输出和标准错误输出。即使谓词从未匹配,输出文件也会始终创建。 + +#### -fprint0 + +##### 参数 +`file` + +##### 描述 +此选项始终返回真。类似于`-print0`,但将输出写入文件;类似于`-fprint`。即使谓词从未匹配,输出文件也始终会被创建。 + +#### -fprintf + +##### 参数 +`file` + +##### 描述 +此选项始终返回真。类似于`-printf`,但将输出写入文件;类似于`-fprint`,即使谓词从未匹配,输出文件也会始终创建。 + +#### -ls 列出当前文件并输出到标准输出 + +##### *无参数* + +##### 描述 +此选项始终返回真。以`ls -dils`格式列出当前文件并输出到标准输出。块计数为 1 KB 块,除非设置了环境变量 POSIXLY_CORRECT,此时使用 512 字节块。 + +#### -ok 执行命令前询问用户 + +##### 参数 +`command ;` + +##### 描述 +类似于`-exec`,但首先会询问用户。如果用户同意,则运行该命令;否则仅返回 false。若运行该命令,其标准输入将被重定向至`/dev/null`。对提示的响应会与一对正则表达式进行匹配,以确定其为肯定或否定回答。若设置POSIXLY_CORRECT 环境变量,则该正则表达式从系统获取;否则,从 find 的消息翻译中获取。如果系统没有合适的定义,将使用 find 自身的定义。无论哪种情况,正则表达式本身的解释都会受到环境变量 LC_CTYPE(字符类)和 LC_COLLATE(字符范围和等价类)的影响。 + +##### 相关选项 +- **-files0-from**:不能与`-ok`同时指定。 + +#### -okdir + +##### 参数 +`command ;` + +##### 描述 +类似于`-execdir`,但在执行前会以与`-ok`相同的方式询问用户。如果用户不同意,则直接返回 false。如果命令被执行,其标准输入将从`/dev/null`重定向。 + +##### 相关选项 +- **-files0-from**:不能与`-okdir`同时指定。 + +#### -print 打印完整文件名,后跟一个换行符 + +##### *无参数* + +##### 描述 +此选项始终返回真。如果你将 find 的输出通过管道传输到另一个程序,并且你正在搜索的文件可能包含换行符,那么应该考虑使用`-print0`而不是`-print`。 + +#### -print0 打印完整文件名,后跟一个空字符 + +##### *无参数* + +##### 描述 +此选项始终返回真。包含换行符或其他类型空白字符的文件名能被正确解析,以便处理 find 输出的程序能正确理解。此选项对应于`xargs`的`-0`选项。 + +#### -printf 打印格式 + +##### 参数 +`format` + +可用的转义字符和指令包括: +- \a 警报。 +- \b 退格键。 +- \c 立即停止打印并清空输出。 +- \f 换页。 +- \n 换行。 +- \r 回车符。 +- \t 水平制表符。 +- \v 垂直制表符。 +- \0 空字符。 +- \\\ 一个字面的反斜杠`\`。 +- \NNN 字符,其 ASCII 码为 NNN(八进制)。 +- A 一个反斜杠字符`\`后跟任何其他字符,都会被视为普通字符,因此它们都会被打印出来。 +- %% 一个字面的百分号。 +- %a 文件的最后访问时间,格式为 C 语言 ctime(3)函数返回的样式。 + .....更多内容待补充 + +##### 描述 +*暂无* + +#### -prune 如果文件是目录,则不进入该目录 + +##### *无参数* + +##### 描述 +此选项始终返回真。 + +##### 相关选项 +- **-depth**:如果指定了`-depth`,那么`-prune`将无效。 +- **-delete**:因为`-delete`隐含了`-depth`,所以不能有效地同时使用两者。 + +#### -quit 立即退出 + +##### *无参数* + +##### 描述 +如果没有发生错误,则返回值为零。这与`-prune `不同,因为`-prune`仅适用于被修剪目录的内容,而`-quit`则使 find 立即停止。不会有任何子进程继续运行。在程序退出之前,任何通过`-exec ... +`或`-execdir ... +`构建的命令行都会被调用。执行`-quit`后,命令行中指定的文件将不再被处理。例如,`find /tmp/foo /tmp/bar -print -quit`将仅打印 `/tmp/foo`。`-quit`的一个常见用途是在找到所需内容后停止搜索文件系统。 + +### 全局选项 +始终返回真值。全局选项对命令行中较早出现的测试也会生效。为避免混淆,全局选项应在命令行上列出**起始点之后、第一个测试选项、位置选项或操作选项之前指定**。若在其他位置指定全局选项,find 会发出警告消息,说明这可能引起混淆。 + +> 全局选项出现在起始点列表之后,因此与例如`-L` 这样的选项不属于同一类别。 + +#### -d `-depth`的同义词 + +##### *无参数* + +##### 描述 +仅用于与 FreeBSD、NetBSD、MacOS X 和 OpenBSD 兼容。 + +#### -depth 遍历级别 + +##### 参数 +`levels` + +##### 描述 +在处理目录本身之前,先处理目录中的内容。`-delete`操作也隐含了`-depth`。 + +#### -files0-from 从文件中读取起始点,而非通过命令行获取。 + +##### 参数 +`file` + +##### 描述 + +使用此选项可以安全地给 find 命令传递任意数量的起始点。使用此选项和在命令行中传递起始点**是互斥的**,因此不允许同时进行。文件参数是强制性的。文件中的起始点必须用 ASCII NUL 字符分隔。两个连续的 NUL 字符,即带有零长度文件名的起始点是不允许的,这将导致错误诊断,并随后产生非零退出码。 + +与标准调用不同,在标准调用中,如果没有传递路径参数,find 会默认将当前目录作为起始点。起始点的处理方式与其他情况相同,例如,find 命令会递归进入子目录,除非另有阻止。若要仅处理起始点,可以额外传递`-maxdepth 0`参数。 + +**其他说明**:如果一个文件在输入文件中被列出多次,则其是否会被多次访问未作规定。如果在查找操作期间文件被修改,结果同样未作规定。最后,find 退出时(无论是通过`-quit`还是其他方式),命名文件中的查找位置也未作规定。此处**未作规定**意味着它**可能有效也可能无效**,**或者不做任何特定的事情**,并且该行为可能因平台或 findutils 版本而异。 + +> :bulb:可以使用`-files0-from`**从标准输入流中读取起始点列表**,例如从管道中读取。在这种情况下,不允许使用`-ok`和`-okdir`操作,因为它们会干扰从标准输入读取以获取用户确认。 + +> :warning:警告:如果给定文件为空,find 不会处理任何起始点,因此在解析完程序参数后会立即退出。 + +#### -help 和 --help 打印 find 命令行用法的摘要并退出。 + +##### *无参数* + +##### 描述 +*无描述* + +#### -ignore_readdir_race + +##### *无参数* + +##### 描述 +通常情况下,当 find 无法对文件进行状态检查(stat)时,会发出错误消息。如果您**启用此选项**,并且在 find 从目录读取文件名,到尝试进行状态检查**之间的时间内文件被删除**,则不会发出任何错误消息。这也适用于命令行中指定的文件或目录。此选项在命令行读取时生效,这意味着您不能在文件系统的某部分启用此选项,而在另一部分禁用它(如果需要这样做,您需要发出两个 find 命令,一个启用选项,一个不启用)。此外,使用`-ignore_readdir_race`选项时,如果在读取父目录后文件已消失,find 命令将忽略`-delete`操作的错误:它不会输出错误诊断信息,并且`-delete`操作的返回码将为真。 + +#### -maxdepth 最大遍历级别 + +##### 参数 +`levels` + +##### 描述 +最多向下遍历 levels 级(一个非负整数)目录层级。使用`-maxdepth 0`表示**仅对起始点本身**应用测试和操作。 + +#### -mindepth 最小遍历级别 + +##### 参数 +`levels` + +##### 描述 +在小于指定级别(非负整数)的层级上不执行任何测试或操作。使用`-mindepth 1`表示处理**除起始点外的所有文件**。 + +#### -mount 不在其他文件系统中下降目录 + +##### *无参数* + +##### 描述 +这是`-xdev`的替代名称,用于与其他一些版本的 find 兼容。 + +#### -noignore_readdir_race + +##### *无参数* + +##### 描述 +关闭了`-ignore_readdir_race`的效果。 + +#### -noleaf 不进行优化。 + +##### *无参数* + +##### 描述 +不通过假设目录包含比其硬链接数少 2 个子目录来进行优化。在搜索不遵循 Unix 目录链接惯例的文件系统时,需要此选项,例如 CD-ROM、MS-DOS 文件系统或 AFS 卷挂载点。在正常的 Unix 文件系统上,每个目录至少有 2 个硬链接:其名称及其`.`条目。此外,其子目录(如果有)各自有一个指向该目录的`..`条目。当 find 检查一个目录时,在它已经统计了比目录链接数少 2 个子目录之后,它知道该目录中的其余条目是非目录(目录树中的“叶”文件)。如果只需要检查文件的名称,则无需对其进行状态检查;这可以显著提高搜索速度。 + +#### -version 和 --version 打印 find 的版本号并退出。 + +##### *无参数* + +##### 描述 +*无描述* + +#### -xdev 不进入其他文件系统的目录。 + +##### *无参数* + +##### 描述 +*无描述* + +### 位置选项 +始终返回真值。它们仅影响命令行中后续的测试。 + +#### -daystart 从今天开始 + +> 用于 `-amin`、`-atime`、`-cmin`、`-ctime`、`-mmin` 和 `-mtime` + +##### *无参数* + +##### 描述 +从今天开始而非从 24 小时前开始。此选项仅影响命令行中后续出现的测试。 + +#### ~~-follow~~ 解引用符号链接。 + +##### *无参数* + +##### 描述 +**已弃用,请改用`-L`选项**。隐含`-noleaf`。`-follow`选项仅影响命令行中出现在其后的那些测试。除非已指定`-H`或`-L`选项,否则`-follow`选项的位置会改变`-newer`谓词的行为;作为`-newer`参数列出的任何文件,如果它们是符号链接,则会被解引用。同样的情况适用于`-newerXY`、`-anewer`和`-cnewer`。类似地,`-type `谓词将始终匹配符号链接所指向的文件类型,而非链接本身。使用`-follow`会导致 `-lname`和`-ilname`谓词始终返回 false。 + +#### -regextype 更改正则表达式语法 + +##### 参数 +`type` + +##### 描述 +更改`-regex`和`-iregex`测试在命令行后续部分所理解的正则表达式语法。要查看已知的正则表达式类型,请使用`-regextype help`。Texinfo 文档解释了各种正则表达式类型的含义及其差异。如果您不使用此选项,find 的行为如同已指定正则表达式类型为`emacs`。 + +#### -warn 和 -nowarn 开启或关闭警告消息。 + +##### *无参数* + +##### 描述 +这些警告仅适用于命令行使用,不适用于 find 在搜索目录时可能遇到的情况。默认行为是:如果标准输入是`tty`,则对应`-warn`;否则对应`-nowarn`。如果产生与命令行使用相关的警告消息,find 的退出状态不受影响。如果设置了 POSIXLY_CORRECT 环境变量,并且也使用了`-warn`,则未指定哪些(如果有)警告会被激活。 + +### 运算符选项 +运算符按优先级递减顺序列出: +- `(expr)` 强制优先级。由于括号对 shell 有特殊含义,通常需要对它们进行引用。许多示例为此使用了反斜杠:`\(...\)` 而非 `(...)`。 +- `! expr` 若表达式为假则结果为真(取反)。此字符通常也需要防止被 shell 解释。 + +> :bulb:提示:当`-a`隐式指定(例如两个测试之间没有显式运算符)或显式指定时,其优先级高于`-o`。例如,`find . -name foo -o -name bar -print`永远不会打印`foo`。 + +#### -not + +##### 参数 +`expr` + +##### 描述 +等同于`! expr`,但不符合 POSIX 标准。 + +#### -a + +##### 参数 +`expr1` -a `expr2` + +##### 描述 +两个连续的表达式被视为隐含地用`-a`连接;如果`expr1`为假,则不评估`expr2`。等同于`expr1 expr2`。 + +#### -and + +##### 参数 +`expr1` -and `expr2` + +##### 描述 +与`-a`相同。但不符合 POSIX 标准。 + +#### -o + +##### 参数 +`expr1` -o `expr2` + +##### 描述 +`expr1`和`expr2`始终都会被评估。`expr1`的值会被丢弃;列表的值即为`expr2`的值。逗号运算符(`,`)在搜索多种不同类型的事物时非常有用,但只会遍历文件系统层次结构一次。`-fprintf`动作可用于将各种匹配项列出到多个不同的输出文件中。若`expr1`为真,则不评估`expr2`。 +#### -or + +##### 参数 +`expr1` -or `expr2` -起始目录:查找文件的起始目录。 +##### 描述 +与`-o`相同。但不符合 POSIX 标准。 -### 实例 +## 例子 +当前目录搜索所有文件,且文件内容包含 “140.206.111.111” ```shell -# 当前目录搜索所有文件,文件内容 包含 “140.206.111.111” 的内容 find . -type f -name "*" | xargs grep "140.206.111.111" ``` From be1fb35497ef07b9c11ca542ebee05248f968361 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 15 Jul 2024 02:20:23 +0000 Subject: [PATCH 497/566] doc: update README.md. --- README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 2c50f0cc271..49a4b0a773b 100644 --- a/README.md +++ b/README.md @@ -302,6 +302,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Dazhuangw Alterem YH +jqz3.tech juemuren4449 kassadin kid1412621 @@ -315,8 +316,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. noodles2hg nsnans oliver -Yidan Wang -jqz3.tech jcdj666 hululu1068 huangyao @@ -331,6 +330,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 +c2ch +Yidan Wang Panthea Johnson 远方 谢民皆 @@ -392,7 +393,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 -c2ch brinkqiang bell azureology @@ -421,6 +421,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rining Wu Ray Yee QinShower +Q.Ben Zheng Mystic 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From ead3b5460a6d13b25e03ccdee24b05ef75e13f9e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 15 Jul 2024 02:20:24 +0000 Subject: [PATCH 498/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index c4c13664ab2..9b51e3691fd 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -47,6 +47,7 @@ Dazhuangw Alterem YH +jqz3.tech juemuren4449 kassadin kid1412621 @@ -60,8 +61,6 @@ noodles2hg nsnans oliver -Yidan Wang -jqz3.tech jcdj666 hululu1068 huangyao @@ -76,6 +75,8 @@ dayday cxalc Forever121 +c2ch +Yidan Wang Panthea Johnson 远方 谢民皆 @@ -137,7 +138,6 @@ Azroy Alan 0x_000 -c2ch brinkqiang bell azureology @@ -166,6 +166,7 @@ Rining Wu Ray Yee QinShower +Q.Ben Zheng Mystic

From 6545af6381e10908c5f954a7b76f6aaa8eda5b1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83?= Date: Wed, 31 Jul 2024 15:25:44 +0800 Subject: [PATCH 499/566] doc: Update README.md #595 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 49a4b0a773b..c4203235e3e 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ **推荐使用的镜像 web 版本** -[**`getaifun.com`**](https://getaifun.com/linux),[**`linux.devonline.net`**](http://linux.devonline.net/),[**`man.zch.ooo`**](https://man.zch.ooo/),[**`linux.mmoke.com`**](https://linux.mmoke.com),[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/),[**`linux.zyimm.com`**](http://linux.zyimm.com/),[**`linux.vovuo.com`**](https://linux.vovuo.com/),[`linux.liguiying.cn`](https://linux.liguiying.cn/), [`renye.net`](https://renye.net/), [`diqi.org`](https://diqi.org/),[`linux.alistnas.xyz`](https://linux.alistnas.xyz/) +[**`srebro.cn`**](https://linux.srebro.cn/),[**`getaifun.com`**](https://getaifun.com/linux),[**`linux.devonline.net`**](http://linux.devonline.net/),[**`man.zch.ooo`**](https://man.zch.ooo/),[**`linux.mmoke.com`**](https://linux.mmoke.com),[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/),[**`linux.zyimm.com`**](http://linux.zyimm.com/),[**`linux.vovuo.com`**](https://linux.vovuo.com/),[`linux.liguiying.cn`](https://linux.liguiying.cn/), [`renye.net`](https://renye.net/), [`diqi.org`](https://diqi.org/),[`linux.alistnas.xyz`](https://linux.alistnas.xyz/) **其它 web 版本** From ef397aec19745e23f24eba1dd237b7dc14a93068 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 31 Jul 2024 07:26:17 +0000 Subject: [PATCH 500/566] doc: update README.md. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c4203235e3e..c9ec9c2ec57 100644 --- a/README.md +++ b/README.md @@ -319,6 +319,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. jcdj666 hululu1068 huangyao +hotdogc1017 gcluffy ghy gesty @@ -330,7 +331,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 -c2ch Yidan Wang Panthea Johnson 远方 @@ -363,6 +363,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. shc sfwwslm rexlin600 +c2ch MinsonLee Marnm mwei From 5f8043de11b823018e95aef0500e67bb435ef479 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 31 Jul 2024 07:26:18 +0000 Subject: [PATCH 501/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 9b51e3691fd..f2cf5f0e086 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -64,6 +64,7 @@ jcdj666 hululu1068 huangyao +hotdogc1017 gcluffy ghy gesty @@ -75,7 +76,6 @@ dayday cxalc Forever121 -c2ch Yidan Wang Panthea Johnson 远方 @@ -108,6 +108,7 @@ shc sfwwslm rexlin600 +c2ch MinsonLee Marnm mwei From 774d3af78e3d3203b3edc03f3e759e51a1e63e91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E5=BC=9F=E8=B0=83=E8=B0=83?= Date: Thu, 1 Aug 2024 01:08:44 +0800 Subject: [PATCH 502/566] doc: Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c9ec9c2ec57..9c3e2d11ec9 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ **推荐使用的镜像 web 版本** -[**`srebro.cn`**](https://linux.srebro.cn/),[**`getaifun.com`**](https://getaifun.com/linux),[**`linux.devonline.net`**](http://linux.devonline.net/),[**`man.zch.ooo`**](https://man.zch.ooo/),[**`linux.mmoke.com`**](https://linux.mmoke.com),[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/),[**`linux.zyimm.com`**](http://linux.zyimm.com/),[**`linux.vovuo.com`**](https://linux.vovuo.com/),[`linux.liguiying.cn`](https://linux.liguiying.cn/), [`renye.net`](https://renye.net/), [`diqi.org`](https://diqi.org/),[`linux.alistnas.xyz`](https://linux.alistnas.xyz/) +[**`srebro.cn`**](https://linux.srebro.cn/),[**`getaifun.com`**](https://getaifun.com/linux),[**`linux.devonline.net`**](http://linux.devonline.net/),[**`man.zch.ooo`**](https://man.zch.ooo/),[**`linux.mmoke.com`**](https://linux.mmoke.com),[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/),[**`linux.zyimm.com`**](http://linux.zyimm.com/),[**`linux.vovuo.com`**](https://linux.vovuo.com/),[`linux.liguiying.cn`](https://linux.liguiying.cn/), [`renye.net`](https://renye.net/), [`diqi.org`](https://diqi.org/),[`linux.alistnas.xyz`](https://linux.alistnas.xyz/),[`nenufm.com`](https://www.nenufm.com/linux-command/) **其它 web 版本** From 15c63feb00972d728585fa13b965af2d2a789cc5 Mon Sep 17 00:00:00 2001 From: zyy2477 Date: Thu, 15 Aug 2024 21:19:09 +0800 Subject: [PATCH 503/566] doc: update axel.md (#596) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update axel.md 添加 axel 源码安装方法。 * Update axel.md 更新 axel 源码安装和 -k 参数 --- command/axel.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/command/axel.md b/command/axel.md index 74915d6e15f..0d38af3af37 100644 --- a/command/axel.md +++ b/command/axel.md @@ -9,6 +9,14 @@ axel ### 安装 +#### 源码安装 + +github地址:https://github.com/axel-download-accelerator/axel + +下载相应的 release 版本后,解压进入目录执行`./configure && make && make install`安装即可。 + +#### 二进制安装 + CentOS安装Axel: 目前yum源上没有Axel,我们可以到 http://pkgs.repoforge.org/axel/ 下载rpm包安装。 @@ -54,6 +62,7 @@ axel [options] url1 [url2] [url...] --alternate , -a # Alternate progress indicator --help ,-h # 帮助 --version ,-V # 版本信息 +--insecure,-k # 不验证SSL证书 ``` ### 实例 From 6079545fee37e9800eda0734d6423c5357efdb05 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 15 Aug 2024 13:19:43 +0000 Subject: [PATCH 504/566] doc: update README.md. --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9c3e2d11ec9..c6961bae31c 100644 --- a/README.md +++ b/README.md @@ -332,7 +332,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. cxalc Forever121 Yidan Wang -Panthea Johnson +Wendy May 远方 谢民皆 Kyofin @@ -344,9 +344,9 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Loofra Wei Xu 尘埃 -宋小北 孤城落寞 七朔 +zyy2477 zyimm zuixin369 zoomdong From d88ec7ce3ef17d3542e8ad285b9b3bb937a52df1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 15 Aug 2024 13:19:44 +0000 Subject: [PATCH 505/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index f2cf5f0e086..0d1361025b2 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -77,7 +77,7 @@ cxalc Forever121 Yidan Wang -Panthea Johnson +Wendy May 远方 谢民皆 Kyofin @@ -89,9 +89,9 @@ Loofra Wei Xu 尘埃 -宋小北 孤城落寞 七朔 +zyy2477 zyimm zuixin369 zoomdong From 7155c78adc11f4e340ea0fba6d565db2270be4e4 Mon Sep 17 00:00:00 2001 From: zyy2477 Date: Thu, 29 Aug 2024 16:49:07 +0800 Subject: [PATCH 506/566] doc: Update iostat.md (#599) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 从 Linux 2.6.18 内核的 iostat 更新到 4.18.0 内核的 iostat。并参数说明和示例 --- command/iostat.md | 208 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 156 insertions(+), 52 deletions(-) diff --git a/command/iostat.md b/command/iostat.md index 0bf3d25e003..0ab85f2d431 100644 --- a/command/iostat.md +++ b/command/iostat.md @@ -1,74 +1,178 @@ -iostat -=== +# iostat -监视系统输入输出设备和CPU的使用情况 +iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。 +iowait 指在一个采样周期内有百分之几的时间是属于以下情况:CPU处于空闲状态并且至少有一个未完成的磁盘IO请求。 -## 补充说明 +## 安装 iostat -**iostat命令** 被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。 +iostat包含在**sysstat**包内。如果你没有,你首先需要安装它。 +在 RedHat / CentOS / Fedora -### 语法 +```bash +yum install sysstat +``` + +在 Debian / Ubuntu / Linux Mint + +```bash +sudo apt-get install sysstat +``` -```shell +## 语法 + +```bash iostat(选项)(参数) ``` -### 选项 - -```shell --c:仅显示CPU使用情况; --d:仅显示设备利用率; --k:显示状态以千字节每秒为单位,而不使用块每秒; --m:显示状态以兆字节每秒为单位; --p:仅显示块设备和所有被使用的其他分区的状态; --t:显示每个报告产生时的时间; --V:显示版号并退出; --x:显示扩展状态。 +### 选项 + +```bash +# iostat --help +Usage: iostat [ options ] [ [ ] ] +Options are: +[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -s ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ] +[ -j { ID | LABEL | PATH | UUID | ... } ] [ --human ] [ -o JSON ] +[ [ -H ] -g ] [ -p [ [,...] | ALL ] ] +``` + +参数说明: +``` +-c 输出CPU统计信息。不能与-d参数同时使用。 +-d 输出设备和分区的I/O统计信息。不能与-c参数同时使用。(默认的参数是-d)。 +-h 让人类更容易阅读设备使用情况报告。--human使用此选项隐式启用。 +-k 用“kbytes/秒”代替“块/秒”显示统计信息。 +-m 用“mbytes/秒”代替“块/秒”显示统计信息。 +-t 打印显示的每份报告的时间。 +-V 显示版本号并退出。 +-x 显示扩展统计信息。不能与参数-p同时使用。 +-y 如果在给定时间间隔内显示多条记录,则省略自系统启动以来的第一份统计报告。 +-z 告诉 iostat 忽略在样本期间没有活动的设备的输出。 +-j 显示持久的设备名称。选项ID、LABEL等指定持久名称的类型。 +--human 以人类可读格式打印大小(例如1.0k, 1.2M等)。使用此选项显示的单位取代与度量相关的任何其他默认单位(例如千字节,扇区…)。 +-o 以JSON (Javascript Object Notation)格式显示统计数据。JSON输出字段顺序未定义,未来可能会添加新字段。 +-H 该选项必须与-g一起使用,表示只显示组的全局统计信息,而不显示组中单个设备的统计信息。 +-p 选项显示系统使用的块设备及其所有分区的统计信息。如果在命令行中输入一个设备名,那么将显示该设备及其所有分区的统计信息。最后,ALL关键字表示必须显示系统定义的所有块设备和分区的统计信息,包括那些从未使用过的设备和分区。如果在此选项之前定义了选项-j,则可以使用所选的持久名称类型指定在命令行上输入的设备。 +``` + +### 参数 + +interval 刷新时间间隔 +count 刷新次数 + +## 运行示例 + +### 示例1 + +```bash +# iostat +Linux 4.18.0-477.13.1.el8_8.x86_64 (node1) 08/28/2024 _x86_64_ (2 CPU) + +avg-cpu: %user %nice %system %iowait %steal %idle + 3.30 0.01 1.90 0.12 0.00 94.68 + +Device tps kB_read/s kB_wrtn/s kB_read kB_wrtn +vda 7.85 84.22 36.59 1081853831 470049100 + ``` -### 参数 +第一部分包含了CPU报告 + +| 性能指标 | 含义 | +| --- | --- | +| %user | 显示在用户级(应用程序)执行时发生的CPU利用率百分比。 | +| %nice | 显示在具有nice优先级的用户级别执行时发生的CPU利用率百分比。 | +| %system | 显示在系统级(内核)执行时发生的CPU利用率百分比。 | +| %iowait | 显示在系统有未完成的磁盘I/O请求期间CPU空闲的时间百分比。 | +| %steal | 显示虚拟机监控程序为另一个虚拟处理器提供服务时,一个或多个虚拟CPU在非自愿等待上花费的时间百分比。 | +| %idle | 显示CPU空闲且系统没有未完成的磁盘I/O请求的时间百分比。 | + +第二部分包含了设备利用率报告 + +| 性能指标 | 含义 | +| --- | --- | +| Device | 此列给出了 /dev 目录中列出的设备(或分区)名称。 | +| tps | 表示每秒向设备发出的传输次数。传输是对设备的 I/O 请求。多个逻辑请求可合并为对设备的一个 I/O 请求。传输大小不确定。 | +| kB_read/s | 表示每秒从设备读取的数据量,以块数(千字节、兆字节)表示。块相当于扇区,因此大小为 512 字节。 | +| kB_wrtn/s | 表示写入设备的数据量,以每秒块数(千字节、兆字节)表示。 | +| kB_read | 读取的数据块总数(千字节、兆字节)。 | +| kB_wrtn | 写入的数据块总数(千字节、兆字节)。 | + +### 示例2 + +以更友好的显示方式显示 IO 信息,使用`-y`忽略第一份统计。并每隔 1 秒重新一次,共5次。 -* 间隔时间:每次报告的间隔时间(秒); -* 次数:显示报告的次数。 +```bash +# iostat -hdy 1 5 +Linux 4.18.0-477.13.1.el8_8.x86_64 (node1) 08/28/2024 _x86_64_ (2 CPU) -### 实例 + tps kB_read/s kB_wrtn/s kB_read kB_wrtn Device + 64.00 288.0k 308.0k 288.0k 308.0k vda -用`iostat -x /dev/sda1`来观看磁盘I/O的详细情况: + tps kB_read/s kB_wrtn/s kB_read kB_wrtn Device + 12.00 0.0k 84.0k 0.0k 84.0k vda -```shell -iostat -x /dev/sda1 -Linux 2.6.18-164.el5xen (localhost.localdomain) -2010年03月26日 + tps kB_read/s kB_wrtn/s kB_read kB_wrtn Device + 15.00 0.0k 36.0k 0.0k 36.0k vda -avg-cpu: %user %nice %system %iowait -%steal %idle - 0.11 0.02 0.18 0.35 -0.03 99.31 + tps kB_read/s kB_wrtn/s kB_read kB_wrtn Device + 28.00 0.0k 76.0k 0.0k 76.0k vda + + tps kB_read/s kB_wrtn/s kB_read kB_wrtn Device + 11.00 0.0k 100.0k 0.0k 100.0k vda -Device: tps Blk_read/s Blk_wrtn/s -Blk_read Blk_wrtn -sda1 0.02 0.08 -0.00 2014 4 ``` -详细说明:第二行是系统信息和监测时间,第三行和第四行显示CPU使用情况(具体内容和mpstat命令相同)。这里主要关注后面I/O输出的信息,如下所示: +### 示例3 + +```bash +# iostat -xd 1 +Linux 4.18.0-477.13.1.el8_8.x86_64 (node1) 08/28/2024 _x86_64_ (2 CPU) + +Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util +vda 4.64 3.21 84.14 36.59 0.28 1.07 5.64 25.01 5.86 8.23 0.05 18.12 11.41 0.44 0.34 + +Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util +vda 1.00 0.00 4.00 0.00 0.00 0.00 0.00 0.00 1.00 0.00 0.00 4.00 0.00 2.00 0.20 +Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util +vda 0.00 37.00 0.00 395.50 0.00 10.00 0.00 21.28 0.00 0.92 0.03 0.00 10.69 0.11 0.40 -标示 | 说明 ---- | --- -Device | 监测设备名称 -rrqm/s | 每秒需要读取需求的数量 -wrqm/s | 每秒需要写入需求的数量 -r/s | 每秒实际读取需求的数量 -w/s | 每秒实际写入需求的数量 -rsec/s | 每秒读取区段的数量 -wsec/s | 每秒写入区段的数量 -rkB/s | 每秒实际读取的大小,单位为KB -wkB/s | 每秒实际写入的大小,单位为KB -avgrq-sz | 需求的平均大小区段 -avgqu-sz | 需求的平均队列长度 -await | 等待I/O平均的时间(milliseconds) -svctm | I/O需求完成的平均时间 -%util | 设备带宽的使用率,达到100%表示饱和,达到性能瓶颈,如果是支持处理并发请求的设备则不代表性能瓶颈。 +Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util +vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util +vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + +Device r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util +vda 1.00 0.00 4.00 0.00 0.00 0.00 0.00 0.00 1.00 0.00 0.00 4.00 0.00 1.00 0.10 + +``` +从这里你可以看到,iostat 提供了非常丰富的性能指标。第一列的 Device 表示磁盘设备的名字,其他各列指标,虽然数量较多,但是每个指标的含义都很重要。 + +| 性能指标 | 含义 | +| --- | --- | +| r/s | 设备每秒完成的读取请求数(合并后)。 | +| w/s | 设备每秒完成的写入请求数(合并后)。 | +| rkB/s | 每秒从设备读取的扇区数(千字节、兆字节)。 | +| wkB/s | 每秒写入设备的扇区数(千字节、兆字节)。 | +| rrqm/s | 每秒合并到设备的排队 I/O 请求数。 | +| wrqm/s | 每秒合并到设备的写入请求数。 | +| %rrqm | 在发送到设备之前合并在一起的读取请求的百分比。 | +| %wrqm | 发送到设备前合并在一起的写入请求的百分比。 | +| r_await | 向设备发出的读取请求获得服务的平均时间(毫秒)。这包括请求在队列中花费的时间和为请求提供服务的时间。 | +| w_await | 向待服务设备发出写入请求的平均时间(毫秒)。这包括请求在队列中花费的时间和为请求提供服务的时间。 | +| aqu-sz | 向设备发出的请求的平均队列长度。注意:在以前的版本中,该字段被称为 avgqu-sz。 | +| rareq-sz | 向设备发出的读取请求的平均大小(千字节)。 | +| wareq-sz | 向设备发出的写入请求的平均大小(千字节)。 | +| svctm | 向设备发出的 I/O 请求的平均服务时间(毫秒)。警告!不要再相信这个字段了。 未来的 sysstat 版本将删除此字段。 | +| %util | 向设备发出 I/O 请求所用时间的百分比(设备带宽利用率)。 对于串行服务请求的设备,当该值接近 100%,设备就会饱和。 但对于以并行方式提供请求的设备,如 RAID 阵列和现代固态硬盘,该数值并不能反映其性能极限。 | + +当 %iowait 升高,需要重点关注以下指标: + +- avgrq-sz: 向设备发出请求的平均大小(单位:扇区) +- avgqu-sz: 向设备发出请求的队列平均长度。也是个做 IO 调优时需要注意的地方,这个就是直接每次操作的数据的大小,如果次数多,但数据拿的小的话,其实 IO 也会很小.如果数据拿的大,IO 的数据会高 +- r_await: 向服务设备发出读取请求的平均时间(单位:毫秒)。包括请求入队的时间以及设备处理请求的时间 +- w_await: 向服务设备发出写请求的平均时间(单位:毫秒)。包括请求入队的时间以及设备处理请求的时间 +- %util:一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈 +- %svctm:平均每次设备 I/O 操作的服务时间 (毫秒)。一般要小于 await (因为同时等待的请求的等待时间被重复计算了),svctm 的大小一般和磁盘性能有关,CPU/内存的负荷也会对其有影响,请求过多也会间接导致 svctm 的增加。await 的大小一般取决于服务时间(svctm) 以及 I/O 队列的长度和 I/O 请求的发出模式。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明 I/O 队列太长,应用得到的响应时间变慢,如果响应时间超过了用户可以容许的范围,这时可以考虑更换更快的磁盘,调整内核 elevator 算法,优化应用,或者升级 CPU From 2f8778a1f7ed614dbd3778e1680f0f98f6426c0d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 29 Aug 2024 08:49:42 +0000 Subject: [PATCH 507/566] doc: update README.md. --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c6961bae31c..e964f2474f5 100644 --- a/README.md +++ b/README.md @@ -286,6 +286,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Wang Yujia alfred 沙漠之子 +zyy2477 Shell xhal VVatt @@ -302,6 +303,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Dazhuangw Alterem YH +jcdj666 jqz3.tech juemuren4449 kassadin @@ -315,8 +317,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. miniwater noodles2hg nsnans -oliver -jcdj666 hululu1068 huangyao hotdogc1017 @@ -331,6 +331,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 +c2ch Yidan Wang Wendy May 远方 @@ -346,7 +347,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 尘埃 孤城落寞 七朔 -zyy2477 zyimm zuixin369 zoomdong @@ -363,7 +363,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. shc sfwwslm rexlin600 -c2ch +oliver MinsonLee Marnm mwei From 37bcd5ff8fd016a500d5287e151e16d8f1f54670 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 29 Aug 2024 08:49:43 +0000 Subject: [PATCH 508/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 0d1361025b2..d6c1e7bb095 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -31,6 +31,7 @@ Wang Yujia alfred 沙漠之子 +zyy2477 Shell xhal VVatt @@ -47,6 +48,7 @@ Dazhuangw Alterem YH +jcdj666 jqz3.tech juemuren4449 kassadin @@ -60,8 +62,6 @@ miniwater noodles2hg nsnans -oliver -jcdj666 hululu1068 huangyao hotdogc1017 @@ -76,6 +76,7 @@ dayday cxalc Forever121 +c2ch Yidan Wang Wendy May 远方 @@ -91,7 +92,6 @@ 尘埃 孤城落寞 七朔 -zyy2477 zyimm zuixin369 zoomdong @@ -108,7 +108,7 @@ shc sfwwslm rexlin600 -c2ch +oliver MinsonLee Marnm mwei From 80c5150c92a638fc9a8a69c6e8fe0cc90ed118cb Mon Sep 17 00:00:00 2001 From: zyy2477 Date: Sun, 1 Sep 2024 15:57:44 +0800 Subject: [PATCH 509/566] doc: update command/passwd.md (#600) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加通过 echo 命令结合管道符来修改密码的例子。 --- command/passwd.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/command/passwd.md b/command/passwd.md index 54651890747..a3f8df7368a 100644 --- a/command/passwd.md +++ b/command/passwd.md @@ -85,6 +85,15 @@ Retype new UNIX password: # 再输入一次; passwd: all authentication tokens updated successfully. # 成功; ``` +或通过管道符把`echo`命令和`passwd`命令的`--stdin`参数相结合,用一条命令来完成密码修改,无序交互。 +以 linuxde 用户的密码改成 123456 为例: + +```shell +[root@localhost ~]# echo "123456" | passwd --stdin linuxde +Changing password for user linuxde. # 正在更改 linuxde 用户的密码。 +passwd: all authentication tokens updated successfully. # passwd:所有身份验证令牌都已成功更新 +``` + 普通用户如果想更改自己的密码,直接运行passwd即可,比如当前操作的用户是linuxde。 ```shell From b2bab26746038e501a8d367fea7530a9c629b959 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Tue, 3 Sep 2024 13:35:16 +0800 Subject: [PATCH 510/566] fix: correct formatting issue causing errors. #601 --- command/iostat.md | 3 ++- dist/data.json | 14 ++++++++++++-- dist/data.min.json | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/command/iostat.md b/command/iostat.md index 0ab85f2d431..2c41ac779a5 100644 --- a/command/iostat.md +++ b/command/iostat.md @@ -1,4 +1,5 @@ -# iostat +iostat +=== iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。 iowait 指在一个采样周期内有百分之几的时间是属于以下情况:CPU处于空闲状态并且至少有一个未完成的磁盘IO请求。 diff --git a/dist/data.json b/dist/data.json index a5301ee6e3b..75eae0c05a3 100644 --- a/dist/data.json +++ b/dist/data.json @@ -759,6 +759,11 @@ "p": "/fgrep", "d": "为文件搜索文字字符串" }, + "figlet": { + "n": "figlet", + "p": "/figlet", + "d": "字符串转为 “字画符”。" + }, "file": { "n": "file", "p": "/file", @@ -889,6 +894,11 @@ "p": "/gpasswd", "d": "Linux下工作组文件的管理工具" }, + "gpg": { + "n": "gpg", + "p": "/gpg", + "d": "可用于签名、检查、加密或解密的工具" + }, "gpm": { "n": "gpm", "p": "/gpm", @@ -1122,7 +1132,7 @@ "iostat": { "n": "iostat", "p": "/iostat", - "d": "监视系统输入输出设备和CPU的使用情况" + "d": "iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。iowait 指在一个采样周期内有百分之几的时间是属于以下情况:CPU处于空闲状态并且至少有一个未完成的磁盘IO请求。" }, "iotop": { "n": "iotop", @@ -1637,7 +1647,7 @@ "mtr": { "n": "mtr", "p": "/mtr", - "d": "`mtr`结合了`traceroute`和`ping`程序的功能,是一款简单的网络诊断工具。 " + "d": "`mtr` 结合了 `traceroute` 和 `ping` 程序的功能,是一款简单的网络诊断工具" }, "mv": { "n": "mv", diff --git a/dist/data.min.json b/dist/data.min.json index 02f10339d70..cb420adfeff 100644 --- a/dist/data.min.json +++ b/dist/data.min.json @@ -1 +1 @@ -{"7z":{"n":"7z","p":"/7z","d":"拥有极高压缩比的开源压缩软件。"},"ab":{"n":"ab","p":"/ab","d":"Apache服务器的性能测试工具"},"accept":{"n":"accept","p":"/accept","d":"指示打印系统接受发往指定目标打印机的打印任务"},"ack":{"n":"ack","p":"/ack","d":"比grep好用的文本搜索工具"},"ag":{"n":"ag","p":"/ag","d":"ack 的升级版,C语言编写,更快更人性化"},"alias":{"n":"alias","p":"/alias","d":"定义或显示别名。"},"apachectl":{"n":"apachectl","p":"/apachectl","d":"Apache服务器前端控制工具"},"apk":{"n":"apk","p":"/apk","d":"Alpine Linux 下的包管理工具"},"apropos":{"n":"apropos","p":"/apropos","d":"在 whatis 数据库中查找字符串"},"apt-get":{"n":"apt-get","p":"/apt-get","d":"Debian Linux发行版中的APT软件包管理工具"},"apt-key":{"n":"apt-key","p":"/apt-key","d":"管理Debian Linux系统中的软件包密钥"},"apt-sortpkgs":{"n":"apt-sortpkgs","p":"/apt-sortpkgs","d":"Debian Linux下对软件包索引文件进行排序的工具"},"aptitude":{"n":"aptitude","p":"/aptitude","d":"Debian Linux系统中软件包管理工具"},"ar":{"n":"ar","p":"/ar","d":"建立或修改备存文件,或是从备存文件中抽取文件"},"arch":{"n":"arch","p":"/arch","d":"显示当前主机的硬件架构类型"},"arj":{"n":"arj","p":"/arj","d":"用于创建和管理.arj压缩包"},"arp":{"n":"arp","p":"/arp","d":"arp 命令用于显示和修改 IP 到 MAC 转换表"},"arpd":{"n":"arpd","p":"/arpd","d":"收集免费ARP信息"},"arping":{"n":"arping","p":"/arping","d":"通过发送ARP协议报文测试网络"},"arptables":{"n":"arptables","p":"/arptables","d":"管理ARP包过滤规则表"},"arpwatch":{"n":"arpwatch","p":"/arpwatch","d":"监听网络上ARP的记录"},"as":{"n":"as","p":"/as","d":"汇编语言编译器"},"at":{"n":"at","p":"/at","d":"在指定时间执行一个任务"},"atop":{"n":"atop","p":"/atop","d":"监控Linux系统资源与进程的工具"},"atq":{"n":"atq","p":"/atq","d":"列出当前用户的at任务列表"},"atrm":{"n":"atrm","p":"/atrm","d":"删除待执行任务队列中的指定任务"},"awk":{"n":"awk","p":"/awk","d":"文本和数据进行处理的编程语言"},"axel":{"n":"axel","p":"/axel","d":"多线程下载工具"},"badblocks":{"n":"badblocks","p":"/badblocks","d":"查找磁盘中损坏的区块"},"base64":{"n":"base64","p":"/base64","d":"base64 编码/解码文件或标准输入输出"},"basename":{"n":"basename","p":"/basename","d":"打印目录或者文件的基本名称"},"batch":{"n":"batch","p":"/batch","d":"在系统不繁忙的时候执行定时任务"},"bc":{"n":"bc","p":"/bc","d":"算术操作精密运算工具"},"bg":{"n":"bg","p":"/bg","d":"将前台终端作业移动到后台运行"},"bind":{"n":"bind","p":"/bind","d":"显示或设置键盘按键与其相关的功能"},"blkid":{"n":"blkid","p":"/blkid","d":"查看块设备的文件系统类型、LABEL、UUID等信息"},"blockdev":{"n":"blockdev","p":"/blockdev","d":"从命令行调用区块设备控制程序"},"bmodinfo":{"n":"bmodinfo","p":"/bmodinfo","d":"显示给定模块的详细信息"},"break":{"n":"break","p":"/break","d":"结束for,while或until循环。"},"builtin":{"n":"builtin","p":"/builtin","d":"执行bash内建命令。"},"bunzip2":{"n":"bunzip2","p":"/bunzip2","d":"可解压缩.bz2格式的压缩文件。 "},"bye":{"n":"bye","p":"/bye","d":"命令用于中断FTP连线并结束程序"},"bzcat":{"n":"bzcat","p":"/bzcat","d":"不解压,直接查看指定的.bz2文件"},"bzcmp":{"n":"bzcmp","p":"/bzcmp","d":"比较两个压缩包中的文件"},"bzdiff":{"n":"bzdiff","p":"/bzdiff","d":"直接比较两个.bz2压缩包中文件的不同"},"bzgrep":{"n":"bzgrep","p":"/bzgrep","d":"使用正则表达式搜索.bz2压缩包中文件"},"bzip2":{"n":"bzip2","p":"/bzip2","d":"将文件压缩成bz2格式"},"bzip2recover":{"n":"bzip2recover","p":"/bzip2recover","d":"恢复被破坏的.bz2压缩包中的文件"},"bzless":{"n":"bzless","p":"/bzless","d":"增强.bz2压缩包查看器"},"bzmore":{"n":"bzmore","p":"/bzmore","d":"查看bzip2压缩过的文本文件的内容"},"cal":{"n":"cal","p":"/cal","d":"显示当前日历或指定日期的日历"},"cancel":{"n":"cancel","p":"/cancel","d":"取消已存在的打印任务"},"cat":{"n":"cat","p":"/cat","d":"连接多个文件并打印到标准输出。"},"cd":{"n":"cd","p":"/cd","d":"切换用户当前工作目录。"},"cdrecord":{"n":"cdrecord","p":"/cdrecord","d":"Linux系统下光盘刻录功能命令"},"chage":{"n":"chage","p":"/chage","d":"修改帐号和密码的有效期限"},"chattr":{"n":"chattr","p":"/chattr","d":"用来改变文件属性"},"chcon":{"n":"chcon","p":"/chcon","d":"修改对象(文件)的安全上下文"},"chfn":{"n":"chfn","p":"/chfn","d":"用来改变finger命令显示的信息"},"chgrp":{"n":"chgrp","p":"/chgrp","d":"用来变更文件或目录的所属群组"},"chkconfig":{"n":"chkconfig","p":"/chkconfig","d":"检查或设置系统的各种服务"},"chmod":{"n":"chmod","p":"/chmod","d":"用来变更文件或目录的权限"},"chown":{"n":"chown","p":"/chown","d":"用来变更文件或目录的拥有者或所属群组"},"chpasswd":{"n":"chpasswd","p":"/chpasswd","d":"批量更新用户口令的工具"},"chroot":{"n":"chroot","p":"/chroot","d":"把根目录换成指定的目的目录"},"chsh":{"n":"chsh","p":"/chsh","d":"用来更换登录系统时使用的shell"},"cksum":{"n":"cksum","p":"/cksum","d":"检查文件的CRC是否正确"},"clear":{"n":"clear","p":"/clear","d":"清除当前屏幕终端上的任何信息"},"clock":{"n":"clock","p":"/clock","d":"用于调整 RTC 时间"},"clockdiff":{"n":"clockdiff","p":"/clockdiff","d":"检测两台linux主机的时间差"},"cmp":{"n":"cmp","p":"/cmp","d":"比较两个文件是否有差异"},"col":{"n":"col","p":"/col","d":"过滤控制字符"},"colrm":{"n":"colrm","p":"/colrm","d":"删除文件中的指定列"},"column":{"n":"column","p":"/column","d":"按列格式化输出文件"},"comm":{"n":"comm","p":"/comm","d":"按行比较两个已排序的文件。"},"command":{"n":"command","p":"/command","d":"调用并执行指定的命令"},"compress":{"n":"compress","p":"/compress","d":"使用Lempress-Ziv编码压缩数据文件"},"consoletype":{"n":"consoletype","p":"/consoletype","d":"输出已连接的终端类型"},"continue":{"n":"continue","p":"/continue","d":"结束本次循环,继续执行下一个for,while或until循环。"},"convertquota":{"n":"convertquota","p":"/convertquota","d":"把老的配额文件转换为新的格式"},"cp":{"n":"cp","p":"/cp","d":"将源文件或目录复制到目标文件或目录中"},"cpio":{"n":"cpio","p":"/cpio","d":"用来建立、还原备份档的工具程序"},"createrepo":{"n":"createrepo","p":"/createrepo","d":"创建YUM仓库"},"crontab":{"n":"crontab","p":"/crontab","d":"提交和管理用户的需要周期性执行的任务"},"csplit":{"n":"csplit","p":"/csplit","d":"将一个大文件分割成小的碎片文件"},"cu":{"n":"cu","p":"/cu","d":"用于连接另一个系统主机"},"cupsdisable":{"n":"cupsdisable","p":"/cupsdisable","d":"停止指定的打印机"},"cupsenable":{"n":"cupsenable","p":"/cupsenable","d":"启动指定的打印机"},"curl":{"n":"curl","p":"/curl","d":"利用URL规则在命令行下工作的文件传输工具"},"cut":{"n":"cut","p":"/cut","d":"连接文件并打印到标准输出设备上"},"date":{"n":"date","p":"/date","d":"显示或设置系统时间与日期"},"dc":{"n":"dc","p":"/dc","d":"任意精度计算器"},"dd":{"n":"dd","p":"/dd","d":"复制文件并对原文件的内容进行转换和格式化处理"},"declare":{"n":"declare","p":"/declare","d":"声明变量,设置或显示变量的值和属性。"},"depmod":{"n":"depmod","p":"/depmod","d":"分析可载入模块的相依性"},"df":{"n":"df","p":"/df","d":"显示磁盘的相关信息"},"dhclient":{"n":"dhclient","p":"/dhclient","d":"动态获取或释放IP地址"},"dhcpd":{"n":"dhcpd","p":"/dhcpd","d":"运行DHCP服务器"},"dhcrelay":{"n":"dhcrelay","p":"/dhcrelay","d":"使用dhcrelay命令可以提供中继DHCP和BOOTP请求"},"diff":{"n":"diff","p":"/diff","d":"比较给定的两个文件的不同"},"diff3":{"n":"diff3","p":"/diff3","d":"比较3个文件不同的地方"},"diffstat":{"n":"diffstat","p":"/diffstat","d":"显示diff命令输出信息的柱状图"},"dig":{"n":"dig","p":"/dig","d":"域名查询工具"},"dircolors":{"n":"dircolors","p":"/dircolors","d":"置ls命令在显示目录或文件时所用的色彩"},"dirname":{"n":"dirname","p":"/dirname","d":"去除文件名中的非目录部分"},"dirs":{"n":"dirs","p":"/dirs","d":"显示目录堆栈。"},"disown":{"n":"disown","p":"/disown","d":"从当前的shell中移除作业。"},"dmesg":{"n":"dmesg","p":"/dmesg","d":"显示Linux系统启动信息"},"dmidecode":{"n":"dmidecode","p":"/dmidecode","d":"在Linux系统下获取有关硬件方面的信息"},"dnf":{"n":"dnf","p":"/dnf","d":"新一代的RPM软件包管理器"},"dnsdomainname":{"n":"dnsdomainname","p":"/dnsdomainname","d":"定义DNS系统中FQDN名称的域名"},"docker":{"n":"docker","p":"/docker","d":"容器化技术,可以将应用程序及其依赖项打包到一个可移植的容器中,使其可以在不同的环境中运行"},"domainname":{"n":"domainname","p":"/domainname","d":"显示和设置系统的NIS域名"},"dos2unix":{"n":"dos2unix","p":"/dos2unix","d":"将DOS格式文本文件转换成Unix格式"},"dpkg-deb":{"n":"dpkg-deb","p":"/dpkg-deb","d":"Debian Linux下的软件包管理工具"},"dpkg-divert":{"n":"dpkg-divert","p":"/dpkg-divert","d":"Debian Linux中创建并管理一个转向列表"},"dpkg-preconfigure":{"n":"dpkg-preconfigure","p":"/dpkg-preconfigure","d":"Debian Linux中软件包安装之前询问问题"},"dpkg-query":{"n":"dpkg-query","p":"/dpkg-query","d":"Debian Linux中软件包的查询工具"},"dpkg-reconfigure":{"n":"dpkg-reconfigure","p":"/dpkg-reconfigure","d":"Debian Linux中重新配制一个已经安装的软件包"},"dpkg-split":{"n":"dpkg-split","p":"/dpkg-split","d":"Debian Linux中将大软件包分割成小包"},"dpkg-statoverride":{"n":"dpkg-statoverride","p":"/dpkg-statoverride","d":"Debian Linux中覆盖文件的所有权和模式"},"dpkg-trigger":{"n":"dpkg-trigger","p":"/dpkg-trigger","d":"Debian Linux下的软件包触发器"},"dpkg":{"n":"dpkg","p":"/dpkg","d":"Debian Linux系统上安装、创建和管理软件包"},"dris":{"n":"dris","p":"/dris","d":"显示和清空目录堆栈中的内容"},"dstat":{"n":"dstat","p":"/dstat","d":"通用的系统资源统计工具"},"du":{"n":"du","p":"/du","d":"显示每个文件和目录的磁盘使用空间"},"dump":{"n":"dump","p":"/dump","d":"用于备份ext2或者ext3文件系统"},"e2fsck":{"n":"e2fsck","p":"/e2fsck","d":"用于检查第二扩展文件系统的完整性"},"e2label":{"n":"e2label","p":"/e2label","d":"设置第二扩展文件系统的卷标"},"echo":{"n":"echo","p":"/echo","d":"输出指定的字符串或者变量"},"ed":{"n":"ed","p":"/ed","d":"单行纯文本编辑器"},"edquota":{"n":"edquota","p":"/edquota","d":"用于编辑指定用户或工作组磁盘配额"},"egrep":{"n":"egrep","p":"/egrep","d":"在文件内查找指定的字符串"},"eject":{"n":"eject","p":"/eject","d":"用来退出抽取式设备"},"elinks":{"n":"elinks","p":"/elinks","d":"纯文本界面的WWW浏览器"},"elm":{"n":"elm","p":"/elm","d":"纯文本邮件客户端程序"},"emacs":{"n":"emacs","p":"/emacs","d":"功能强大的全屏文本编辑器"},"enable":{"n":"enable","p":"/enable","d":"启动或禁用shell内建命令"},"env":{"n":"env","p":"/env","d":"显示系统中已存在的环境变量"},"ethtool":{"n":"ethtool","p":"/ethtool","d":"显示或修改以太网卡的配置信息"},"ex":{"n":"ex","p":"/ex","d":"启动vim编辑器的ex编辑模式"},"exec":{"n":"exec","p":"/exec","d":"调用并执行指定的命令"},"exit":{"n":"exit","p":"/exit","d":"退出当前的shell。"},"expand":{"n":"expand","p":"/expand","d":"将文件的制表符转换为空白字符"},"export":{"n":"export","p":"/export","d":"为shell变量或函数设置导出属性。"},"exportfs":{"n":"exportfs","p":"/exportfs","d":"管理NFS共享文件系统列表"},"expr":{"n":"expr","p":"/expr","d":"一款表达式计算工具"},"false":{"n":"false","p":"/false","d":"返回状态为失败。"},"fc":{"n":"fc","p":"/fc","d":"显示历史列表中的命令或修改指定的历史命令并执行。"},"fdisk":{"n":"fdisk","p":"/fdisk","d":"查看磁盘使用情况和磁盘分区"},"fg":{"n":"fg","p":"/fg","d":"将后台作业移动到前台终端运行"},"fgrep":{"n":"fgrep","p":"/fgrep","d":"为文件搜索文字字符串"},"file":{"n":"file","p":"/file","d":"用来探测给定文件的类型"},"find":{"n":"find","p":"/find","d":"在指定目录下查找文件"},"findfs":{"n":"findfs","p":"/findfs","d":"标签或UUID查找文件系统"},"finger":{"n":"finger","p":"/finger","d":"用于查找并显示用户信息"},"firewall-cmd":{"n":"firewall-cmd","p":"/firewall-cmd","d":"Linux上新用的防火墙软件,跟iptables差不多的工具"},"fishshell":{"n":"fishshell","p":"/fishshell","d":"比 bash 更好用的 shell"},"fmt":{"n":"fmt","p":"/fmt","d":"读取文件后优化处理并输出"},"fold":{"n":"fold","p":"/fold","d":"控制文件内容输出时所占用的屏幕宽度"},"fping":{"n":"fping","p":"/fping","d":"fping检测主机是否存在"},"free":{"n":"free","p":"/free","d":"显示内存的使用情况"},"fsck":{"n":"fsck","p":"/fsck","d":"fsck(英文全拼:file system check)命令检查并且试图修复文件系统中的错误"},"ftp":{"n":"ftp","p":"/ftp","d":"用来设置文件系统相关功能"},"ftpcount":{"n":"ftpcount","p":"/ftpcount","d":"显示目前已FTP登入的用户人数"},"ftpshut":{"n":"ftpshut","p":"/ftpshut","d":"在指定的时间关闭FTP服务器"},"ftptop":{"n":"ftptop","p":"/ftptop","d":"proftpd服务器的连接状态"},"ftpwho":{"n":"ftpwho","p":"/ftpwho","d":"显示当前每个ftp会话信息"},"fuser":{"n":"fuser","p":"/fuser","d":"使用文件或文件结构识别进程"},"gcc":{"n":"gcc","p":"/gcc","d":"基于C/C++的编译器"},"gcov":{"n":"gcov","p":"/gcov","d":"测试程序的代码覆盖率的工具"},"gdb":{"n":"gdb","p":"/gdb","d":"功能强大的程序调试器"},"get_module":{"n":"get_module","p":"/get_module","d":"获取Linux内核模块的详细信息"},"getenforce":{"n":"getenforce","p":"/getenforce","d":"显示当前SELinux的应用模式,是强制、执行还是停用"},"getent":{"n":"getent","p":"/getent","d":"查询 DNS 名称服务器中的命名空间"},"getsebool":{"n":"getsebool","p":"/getsebool","d":"查询SElinux策略内各项规则的布尔值"},"git":{"n":"git","p":"/git","d":"是目前世界上最先进的分布式版本控制系统"},"gpasswd":{"n":"gpasswd","p":"/gpasswd","d":"Linux下工作组文件的管理工具"},"gpm":{"n":"gpm","p":"/gpm","d":"提供文字模式下的滑鼠事件处理"},"grep":{"n":"grep","p":"/grep","d":"强大的文本搜索工具"},"groupadd":{"n":"groupadd","p":"/groupadd","d":"用于创建一个新的工作组"},"groupdel":{"n":"groupdel","p":"/groupdel","d":"用于删除指定的工作组"},"groupmems":{"n":"groupmems","p":"/groupmems","d":"管理用户主要组的成员"},"groupmod":{"n":"groupmod","p":"/groupmod","d":"更改群组识别码或名称"},"groups":{"n":"groups","p":"/groups","d":"打印指定用户所在组的名称。"},"grpck":{"n":"grpck","p":"/grpck","d":"用于验证组文件的完整性"},"grpconv":{"n":"grpconv","p":"/grpconv","d":"用来开启群组的投影密码"},"grpunconv":{"n":"grpunconv","p":"/grpunconv","d":"用来关闭群组的投影密码"},"grub":{"n":"grub","p":"/grub","d":"多重引导程序grub的命令行shell工具"},"grub2-mkconfig":{"n":"grub2-mkconfig","p":"/grub2-mkconfig","d":"生成 grub.cfg 配置文件。"},"grub2-set-default":{"n":"grub2-set-default","p":"/grub2-set-default","d":"设置系统默认的启动内核"},"gunzip":{"n":"gunzip","p":"/gunzip","d":"用来解压缩文件"},"gzexe":{"n":"gzexe","p":"/gzexe","d":"用来压缩可执行文件"},"gzip":{"n":"gzip","p":"/gzip","d":"用来压缩文件"},"halt":{"n":"halt","p":"/halt","d":"关闭正在运行的Linux操作系统"},"hcitool":{"n":"hcitool","p":"/hcitool","d":"hcitool是一个Linux命令行工具,用于管理和调试蓝牙设备。它可以用于扫描周围的蓝牙设备、连接到蓝牙设备发送命令和数据包等。"},"hdparm":{"n":"hdparm","p":"/hdparm","d":"显示与设定硬盘的参数"},"head":{"n":"head","p":"/head","d":"显示文件的开头部分。"},"help":{"n":"help","p":"/help","d":"该命令是bash内建命令,用于显示bash内建命令的帮助信息。"},"hexdump":{"n":"hexdump","p":"/hexdump","d":"显示文件十六进制格式"},"history":{"n":"history","p":"/history","d":"显示或操作历史列表。"},"host":{"n":"host","p":"/host","d":"常用的分析域名查询工具"},"hostid":{"n":"hostid","p":"/hostid","d":"显示当前主机的十六进制数字标识。"},"hostname":{"n":"hostname","p":"/hostname","d":"显示和设置系统的主机名"},"hostnamectl":{"n":"hostnamectl","p":"/hostnamectl","d":"查询或更改系统主机名"},"hping3":{"n":"hping3","p":"/hping3","d":"测试网络及主机的安全"},"htdigest":{"n":"htdigest","p":"/htdigest","d":"Apache服务器内置工具"},"htop":{"n":"htop","p":"/htop","d":"[非内部命令]一个互动的进程查看器,可以动态观察系统进程状况"},"htpasswd":{"n":"htpasswd","p":"/htpasswd","d":"apache服务器创建密码认证文件"},"hwclock":{"n":"hwclock","p":"/hwclock","d":"显示与设定硬件时钟"},"iconv":{"n":"iconv","p":"/iconv","d":"转换文件的编码方式"},"id":{"n":"id","p":"/id","d":"打印真实以及有效的用户和所在组的信息"},"ifcfg":{"n":"ifcfg","p":"/ifcfg","d":"置Linux中的网络接口参数"},"ifconfig":{"n":"ifconfig","p":"/ifconfig","d":"配置和显示Linux系统网卡的网络参数"},"ifdown":{"n":"ifdown","p":"/ifdown","d":"禁用指定的网络接口"},"ifstat":{"n":"ifstat","p":"/ifstat","d":"统计网络接口流量状态"},"iftop":{"n":"iftop","p":"/iftop","d":"一款实时流量监控工具"},"ifup":{"n":"ifup","p":"/ifup","d":"激活指定的网络接口"},"indent":{"n":"indent","p":"/indent","d":"格式化C语言的源文件"},"info":{"n":"info","p":"/info","d":"Linux下info格式的帮助指令"},"init":{"n":"init","p":"/init","d":"init进程是所有Linux进程的父进程"},"inotifywait":{"n":"inotifywait","p":"/inotifywait","d":"异步文件系统监控机制"},"insmod":{"n":"insmod","p":"/insmod","d":"将给定的模块加载到内核中"},"install":{"n":"install","p":"/install","d":"安装或升级软件或备份数据"},"iostat":{"n":"iostat","p":"/iostat","d":"监视系统输入输出设备和CPU的使用情况"},"iotop":{"n":"iotop","p":"/iotop","d":"用来监视磁盘I/O使用状况的工具"},"ip":{"n":"ip","p":"/ip","d":"网络配置工具"},"ip6tables-restore":{"n":"ip6tables-restore","p":"/ip6tables-restore","d":"还原ip6tables表"},"ip6tables-save":{"n":"ip6tables-save","p":"/ip6tables-save","d":"保存ip6tables表配置"},"ip6tables":{"n":"ip6tables","p":"/ip6tables","d":"linux中防火墙软件"},"ipcalc":{"n":"ipcalc","p":"/ipcalc","d":"简单的IP地址计算器"},"ipcrm":{"n":"ipcrm","p":"/ipcrm","d":"删除消息队列、信号集、或者共享内存标识"},"ipcs":{"n":"ipcs","p":"/ipcs","d":"分析消息队列共享内存和信号量"},"iperf":{"n":"iperf","p":"/iperf","d":"网络性能测试工具"},"iptables-restore":{"n":"iptables-restore","p":"/iptables-restore","d":"还原iptables表的配置"},"iptables-save":{"n":"iptables-save","p":"/iptables-save","d":"备份iptables的表配置"},"iptables":{"n":"iptables","p":"/iptables","d":"Linux上常用的防火墙软件"},"iptraf":{"n":"iptraf","p":"/iptraf","d":"实时地监视网卡流量"},"iptstate":{"n":"iptstate","p":"/iptstate","d":"显示iptables的工作状态"},"iscsiadm":{"n":"iscsiadm","p":"/iscsiadm","d":"管理iSCSI连接"},"ispell":{"n":"ispell","p":"/ispell","d":"检查文件中出现的拼写错误"},"jed":{"n":"jed","p":"/jed","d":"主要用于编辑代码的编辑器"},"jobs":{"n":"jobs","p":"/jobs","d":"显示作业的状态。"},"joe":{"n":"joe","p":"/joe","d":"强大的纯文本编辑器"},"join":{"n":"join","p":"/join","d":"两个文件中指定栏位内容相同的行连接起来"},"journalctl":{"n":"journalctl","p":"/journalctl","d":"检索 systemd 日志,是 CentOS 7 才有的工具。"},"jq":{"n":"jq","p":"/jq","d":"一个灵活的轻量级命令行JSON处理器"},"jwhois":{"n":"jwhois","p":"/jwhois","d":"whois 客户端服务"},"kernelversion":{"n":"kernelversion","p":"/kernelversion","d":"打印当前内核的主版本号"},"kexec":{"n":"kexec","p":"/kexec","d":"从当前正在运行的内核引导到一个新内核"},"kill":{"n":"kill","p":"/kill","d":"发送信号到进程。"},"killall":{"n":"killall","p":"/killall","d":"使用进程的名称来杀死一组进程"},"last":{"n":"last","p":"/last","d":"列出目前与过去登入系统的用户相关信息"},"lastb":{"n":"lastb","p":"/lastb","d":"列出登入系统失败的用户相关信息"},"lastlog":{"n":"lastlog","p":"/lastlog","d":"显示系统中所有用户最近一次登录信息"},"ld":{"n":"ld","p":"/ld","d":"将目标文件连接为可执行程序"},"ldconfig":{"n":"ldconfig","p":"/ldconfig","d":"动态链接库管理命令"},"ldd":{"n":"ldd","p":"/ldd","d":"打印程序或者库文件所依赖的共享库列表"},"less":{"n":"less","p":"/less","d":"分屏上下翻页浏览文件内容"},"let":{"n":"let","p":"/let","d":"简单的计算器,执行算术表达式。"},"lftp":{"n":"lftp","p":"/lftp","d":"优秀的文件客户端程序"},"lftpget":{"n":"lftpget","p":"/lftpget","d":"调用lftp指令下载指定的文件"},"lha":{"n":"lha","p":"/lha","d":"压缩或解压缩lzh格式文件"},"lilo":{"n":"lilo","p":"/lilo","d":"安装核心载入开机管理程序"},"ln":{"n":"ln","p":"/ln","d":"用来为文件创建链接"},"lnstat":{"n":"lnstat","p":"/lnstat","d":"显示Linux系统的网路状态"},"local":{"n":"local","p":"/local","d":"在函数内定义局部变量。"},"locate":{"n":"locate","p":"/locate","d":"比 find 好用的文件查找工具"},"logger":{"n":"logger","p":"/logger","d":"在系统日志中记录相应条目"},"login":{"n":"login","p":"/login","d":"登录系统或切换用户身份"},"logname":{"n":"logname","p":"/logname","d":"打印当前终端登录用户的名称。"},"logout":{"n":"logout","p":"/logout","d":"退出当前登录的Shell"},"logrotate":{"n":"logrotate","p":"/logrotate","d":"系统日志进行轮转、压缩和删除"},"logsave":{"n":"logsave","p":"/logsave","d":"将命令的输出信息保存到指定的日志文件"},"logwatch":{"n":"logwatch","p":"/logwatch","d":"可定制和可插入式的日志监视系统"},"look":{"n":"look","p":"/look","d":"显示文件中以指定字符串开头的任意行"},"losetup":{"n":"losetup","p":"/losetup","d":"设定与控制循环(loop)设备"},"lp":{"n":"lp","p":"/lp","d":"打印文件或修改排队的打印任务"},"lpadmin":{"n":"lpadmin","p":"/lpadmin","d":"配置CUPS套件中的打印机和类"},"lpc":{"n":"lpc","p":"/lpc","d":"命令行方式打印机控制程序"},"lpq":{"n":"lpq","p":"/lpq","d":"显示打印队列中的打印任务的状态信息"},"lpr":{"n":"lpr","p":"/lpr","d":"将文件发送给指定打印机进行打印"},"lprm":{"n":"lprm","p":"/lprm","d":"删除打印队列中的打印任务"},"lpstat":{"n":"lpstat","p":"/lpstat","d":"显示CUPS中打印机的状态信息"},"ls":{"n":"ls","p":"/ls","d":"显示目录内容列表"},"lsattr":{"n":"lsattr","p":"/lsattr","d":"查看文件的第二扩展文件系统属性"},"lsb_release":{"n":"lsb_release","p":"/lsb_release","d":"显示发行版本信息"},"lsblk":{"n":"lsblk","p":"/lsblk","d":"列出块设备信息"},"lscpu":{"n":"lscpu","p":"/lscpu","d":"显示有关CPU架构的信息"},"lsmod":{"n":"lsmod","p":"/lsmod","d":"显示已载入系统的模块"},"lsof":{"n":"lsof","p":"/lsof","d":"显示Linux系统当前已打开的所有文件列表 `lsof -p pid`"},"lspci":{"n":"lspci","p":"/lspci","d":"显示当前主机的所有PCI总线信息"},"lsusb":{"n":"lsusb","p":"/lsusb","d":"显示本机的USB设备列表信息"},"ltrace":{"n":"ltrace","p":"/ltrace","d":"用来跟踪进程调用库函数的情况"},"lvcreate":{"n":"lvcreate","p":"/lvcreate","d":"用于创建LVM的逻辑卷"},"lvdisplay":{"n":"lvdisplay","p":"/lvdisplay","d":"显示逻辑卷属性"},"lvextend":{"n":"lvextend","p":"/lvextend","d":"扩展逻辑卷空间"},"lvreduce":{"n":"lvreduce","p":"/lvreduce","d":"收缩逻辑卷空间"},"lvremove":{"n":"lvremove","p":"/lvremove","d":"删除指定LVM逻辑卷"},"lvresize":{"n":"lvresize","p":"/lvresize","d":"调整逻辑卷空间大小"},"lvscan":{"n":"lvscan","p":"/lvscan","d":"扫描逻辑卷"},"lynx":{"n":"lynx","p":"/lynx","d":"纯文本模式的网页浏览器"},"mail":{"n":"mail","p":"/mail","d":"命令行下发送和接收电子邮件"},"mailq":{"n":"mailq","p":"/mailq","d":"显示待发送的邮件队列"},"mailstat":{"n":"mailstat","p":"/mailstat","d":"显示到达的邮件状态"},"make":{"n":"make","p":"/make","d":"GNU的工程化编译工具"},"man":{"n":"man","p":"/man","d":"查看Linux中的指令帮助"},"mapfile":{"n":"mapfile","p":"/mapfile","d":"从标准输入读取行并赋值到数组。"},"md5sum":{"n":"md5sum","p":"/md5sum","d":"计算和校验文件报文摘要的工具程序"},"mesg":{"n":"mesg","p":"/mesg","d":"设置当前终端的写权限"},"mii-tool":{"n":"mii-tool","p":"/mii-tool","d":"配置网络设备协商方式的工具"},"mkbootdisk":{"n":"mkbootdisk","p":"/mkbootdisk","d":"可建立目前系统的启动盘"},"mkcert":{"n":"mkcert","p":"/mkcert","d":"用来生成自签证书的工具"},"mkdir":{"n":"mkdir","p":"/mkdir","d":"用来创建目录"},"mke2fs":{"n":"mke2fs","p":"/mke2fs","d":"创建磁盘分区上的“etc2/etc3”文件系统"},"mkfs":{"n":"mkfs","p":"/mkfs","d":"用于在设备上创建Linux文件系统"},"mkinitrd":{"n":"mkinitrd","p":"/mkinitrd","d":"建立要载入ramdisk的映像文件"},"mkisofs":{"n":"mkisofs","p":"/mkisofs","d":"建立ISO 9660映像文件"},"mknod":{"n":"mknod","p":"/mknod","d":"创建字符设备文件和块设备文件"},"mkswap":{"n":"mkswap","p":"/mkswap","d":"建立和设置SWAP交换分区"},"mktemp":{"n":"mktemp","p":"/mktemp","d":"创建临时文件供shell脚本使用"},"modetest":{"n":"modetest","p":"/modetest","d":"DRM/KMS驱动程序libdrm中的模式测试工具"},"modprobe":{"n":"modprobe","p":"/modprobe","d":"自动处理可载入模块"},"more":{"n":"more","p":"/more","d":"显示文件内容,每次显示一屏"},"mount":{"n":"mount","p":"/mount","d":"用于挂载Linux系统外的文件"},"mpstat":{"n":"mpstat","p":"/mpstat","d":"显示各个可用CPU的状态"},"mtools":{"n":"mtools","p":"/mtools","d":"显示mtools支持的指令"},"mtr":{"n":"mtr","p":"/mtr","d":"`mtr`结合了`traceroute`和`ping`程序的功能,是一款简单的网络诊断工具。 "},"mv":{"n":"mv","p":"/mv","d":"用来对文件或目录重新命名"},"mysql":{"n":"mysql","p":"/mysql","d":"MySQL服务器客户端工具"},"mysqladmin":{"n":"mysqladmin","p":"/mysqladmin","d":"MySQL服务器管理客户端"},"mysqldump":{"n":"mysqldump","p":"/mysqldump","d":"MySQL数据库中备份工具"},"mysqlimport":{"n":"mysqlimport","p":"/mysqlimport","d":"为MySQL服务器用命令行方式导入数据"},"mysqlshow":{"n":"mysqlshow","p":"/mysqlshow","d":"显示MySQL中数据库相关信息"},"named-checkzone":{"n":"named-checkzone","p":"/named-checkzone","d":"使用named-checkzone命令可以进行区域文件有效性检查和转换,必须指定区域名称和区域文件名称"},"nano":{"n":"nano","p":"/nano","d":"字符终端文本编辑器"},"nc":{"n":"nc","p":"/nc","d":"nc是网络工具中的瑞士军刀"},"ncftp":{"n":"ncftp","p":"/ncftp","d":"是增强的的FTP工具"},"neofetch":{"n":"neofetch","p":"/neofetch","d":"显示带有发行徽标的系统信息的工具"},"nethogs":{"n":"nethogs","p":"/nethogs","d":"终端下的网络流量监控工具"},"netstat":{"n":"netstat","p":"/netstat","d":"查看Linux中网络系统状态信息"},"newusers":{"n":"newusers","p":"/newusers","d":"用于批处理的方式一次创建多个命令"},"nfsstat":{"n":"nfsstat","p":"/nfsstat","d":"列出NFS客户端和服务器的工作状态"},"ngrep":{"n":"ngrep","p":"/ngrep","d":"方便的数据包匹配和显示工具"},"nice":{"n":"nice","p":"/nice","d":"调整程序执行的优先权等级"},"nisdomainname":{"n":"nisdomainname","p":"/nisdomainname","d":"显示主机NIS的域名"},"nl":{"n":"nl","p":"/nl","d":"为每一个文件添加行号。"},"nm":{"n":"nm","p":"/nm","d":"显示二进制目标文件的符号表"},"nmap":{"n":"nmap","p":"/nmap","d":"网络探测和安全审核"},"nmcli":{"n":"nmcli","p":"/nmcli","d":"地址配置工具"},"nohup":{"n":"nohup","p":"/nohup","d":"将程序以忽略挂起信号的方式运行起来"},"nologin":{"n":"nologin","p":"/nologin","d":"拒绝用户登录系统"},"nproc":{"n":"nproc","p":"/nproc","d":"打印可用的处理器单元数量。"},"nslookup":{"n":"nslookup","p":"/nslookup","d":"查询域名DNS信息的工具"},"ntpdate":{"n":"ntpdate","p":"/ntpdate","d":"使用网络计时协议(NTP)设置日期和时间"},"ntsysv":{"n":"ntsysv","p":"/ntsysv","d":"集中管理系统的各种服务"},"objdump":{"n":"objdump","p":"/objdump","d":"显示二进制文件信息"},"od":{"n":"od","p":"/od","d":"输出文件的八进制、十六进制等格式编码的字节"},"openssl":{"n":"openssl","p":"/openssl","d":"强大的安全套接字层密码库"},"pacman":{"n":"pacman","p":"/pacman","d":"Arch Linux 系统及其衍生系统中默认使用的包管理器"},"parted":{"n":"parted","p":"/parted","d":"磁盘分区和分区大小调整工具"},"partprobe":{"n":"partprobe","p":"/partprobe","d":"不重启的情况下重读分区"},"passwd":{"n":"passwd","p":"/passwd","d":"用于让用户可以更改自己的密码"},"paste":{"n":"paste","p":"/paste","d":"将多个文件按列队列合并"},"patch":{"n":"patch","p":"/patch","d":"为开放源代码软件安装补丁程序"},"pathchk":{"n":"pathchk","p":"/pathchk","d":"检查文件中不可移植的部分"},"perl":{"n":"perl","p":"/perl","d":"perl语言解释器"},"pfctl":{"n":"pfctl","p":"/pfctl","d":"PF防火墙的配置命令"},"pgrep":{"n":"pgrep","p":"/pgrep","d":"根据用户给出的信息在当前运行进程中查找并列出符合条件的进程ID(PID)"},"php":{"n":"php","p":"/php","d":"PHP语言的命令行接口"},"pico":{"n":"pico","p":"/pico","d":"功能强大全屏幕的文本编辑器"},"pidof":{"n":"pidof","p":"/pidof","d":"查找指定名称的进程的进程号ID号"},"pidstat":{"n":"pidstat","p":"/pidstat","d":"监控进程的系统资源占用情况"},"pigz":{"n":"pigz","p":"/pigz","d":"可以用来解压缩文件,gzip的并行实现升级版"},"ping":{"n":"ping","p":"/ping","d":"测试主机之间网络的连通性(ipv4)"},"ping6":{"n":"ping6","p":"/ping6","d":"测试主机之间网络的连通性(ipv6)"},"pip":{"n":"pip","p":"/pip","d":"Python 编程语言中的包管理器,用于安装和管理第三方 Python 模块"},"pkexec":{"n":"pkexec","p":"/pkexec","d":"以其他用户身份执行命令"},"pkill":{"n":"pkill","p":"/pkill","d":"可以按照进程名杀死进程"},"pmap":{"n":"pmap","p":"/pmap","d":"报告进程的内存映射关系"},"popd":{"n":"popd","p":"/popd","d":"从目录堆栈中删除目录。"},"poweroff":{"n":"poweroff","p":"/poweroff","d":"关闭Linux系统,关闭记录会被写入到/var/log/wtmp日志文件中"},"ppp-off":{"n":"ppp-off","p":"/ppp-off","d":"关闭ppp连线"},"pr":{"n":"pr","p":"/pr","d":"将文本文件转换成适合打印的格式"},"printf":{"n":"printf","p":"/printf","d":"格式化并输出结果。"},"protoize":{"n":"protoize","p":"/protoize","d":"GNU-C代码转换为ANSI-C代码"},"prtstat":{"n":"prtstat","p":"/prtstat","d":"显示进程信息"},"ps":{"n":"ps","p":"/ps","d":"报告当前系统的进程状态"},"pssh":{"n":"pssh","p":"/pssh","d":"批量管理执行"},"pstack":{"n":"pstack","p":"/pstack","d":"显示每个进程的栈跟踪"},"pstree":{"n":"pstree","p":"/pstree","d":"以树状图的方式展现进程之间的派生关系"},"pushd":{"n":"pushd","p":"/pushd","d":"将目录添加到目录堆栈顶部。"},"pv":{"n":"pv","p":"/pv","d":"显示当前在命令行执行的命令的进度信息,管道查看器"},"pvchange":{"n":"pvchange","p":"/pvchange","d":"修改物理卷属性"},"pvck":{"n":"pvck","p":"/pvck","d":"检测物理卷的LVM元数据的一致性"},"pvcreate":{"n":"pvcreate","p":"/pvcreate","d":"将物理硬盘分区初始化为物理卷"},"pvdisplay":{"n":"pvdisplay","p":"/pvdisplay","d":"显示物理卷的属性"},"pvremove":{"n":"pvremove","p":"/pvremove","d":"删除一个存在的物理卷"},"pvs":{"n":"pvs","p":"/pvs","d":"输出物理卷信息报表"},"pvscan":{"n":"pvscan","p":"/pvscan","d":"扫描系统中所有硬盘的物理卷列表"},"pwck":{"n":"pwck","p":"/pwck","d":"用来验证系统认证文件内容和格式的完整性"},"pwconv":{"n":"pwconv","p":"/pwconv","d":"用来开启用户的投影密码"},"pwd":{"n":"pwd","p":"/pwd","d":"显示当前工作目录的绝对路径。"},"pwdx":{"n":"pwdx","p":"/pwdx","d":"用于显示指定进程的当前工作目录"},"pwunconv":{"n":"pwunconv","p":"/pwunconv","d":"用来关闭用户的投影密码"},"quota":{"n":"quota","p":"/quota","d":"显示磁盘已使用的空间与限制"},"quotacheck":{"n":"quotacheck","p":"/quotacheck","d":"检查磁盘的使用空间与限制"},"quotaoff":{"n":"quotaoff","p":"/quotaoff","d":"关闭Linux内核中指定文件系统的磁盘配额功能"},"quotaon":{"n":"quotaon","p":"/quotaon","d":"激活Linux内核中指定文件系统的磁盘配额功能"},"rcconf":{"n":"rcconf","p":"/rcconf","d":"Debian Linux下的运行等级服务配置工具"},"rcp":{"n":"rcp","p":"/rcp","d":"使在两台Linux主机之间的文件复制操作更简单"},"read":{"n":"read","p":"/read","d":"从键盘读取变量值"},"readelf":{"n":"readelf","p":"/readelf","d":"用于显示elf格式文件的信息"},"readonly":{"n":"readonly","p":"/readonly","d":"标记shell变量或函数为只读"},"reboot":{"n":"reboot","p":"/reboot","d":"重新启动正在运行的Linux操作系统"},"reject":{"n":"reject","p":"/reject","d":"指示打印系统拒绝发往指定目标打印机的打印任务"},"rename":{"n":"rename","p":"/rename","d":"用字符串替换的方式批量改变文件名"},"renice":{"n":"renice","p":"/renice","d":"修改正在运行的进程的调度优先级"},"reposync":{"n":"reposync","p":"/reposync","d":"同步yum存储库到本地目录"},"repquota":{"n":"repquota","p":"/repquota","d":"报表的格式输出磁盘空间限制的状态"},"resize":{"n":"resize","p":"/resize","d":"命令设置终端机视窗的大小"},"restore":{"n":"restore","p":"/restore","d":"所进行的操作和dump指令相反"},"restorecon":{"n":"restorecon","p":"/restorecon","d":"恢复文件的安全上下文"},"return":{"n":"return","p":"/return","d":"从函数中退出并返回数值。"},"rev":{"n":"rev","p":"/rev","d":"将文件内容以字符为单位反序输出"},"rexec":{"n":"rexec","p":"/rexec","d":"远程执行Linux系统下命令"},"rlogin":{"n":"rlogin","p":"/rlogin","d":"从当前终端登录到远程Linux主机"},"rm":{"n":"rm","p":"/rm","d":"用于删除给定的文件和目录"},"rmdir":{"n":"rmdir","p":"/rmdir","d":"用来删除空目录"},"rmmod":{"n":"rmmod","p":"/rmmod","d":"从运行的内核中移除指定的内核模块"},"route":{"n":"route","p":"/route","d":"显示并设置Linux中静态路由表"},"rpm":{"n":"rpm","p":"/rpm","d":"RPM软件包的管理工具"},"rpm2cpio":{"n":"rpm2cpio","p":"/rpm2cpio","d":"将RPM软件包转换为cpio格式的文件"},"rpmbuild":{"n":"rpmbuild","p":"/rpmbuild","d":"创建RPM的二进制软件包和源码软件包"},"rpmdb":{"n":"rpmdb","p":"/rpmdb","d":"初始化和重建RPM数据库"},"rpmquery":{"n":"rpmquery","p":"/rpmquery","d":"从RPM数据库中查询软件包信息"},"rpmsign":{"n":"rpmsign","p":"/rpmsign","d":"使用RPM软件包的签名管理工具"},"rpmverify":{"n":"rpmverify","p":"/rpmverify","d":"验证已安装的RPM软件包的正确性"},"rsh":{"n":"rsh","p":"/rsh","d":"连接远程主机并执行命令"},"rsync":{"n":"rsync","p":"/rsync","d":"远程数据同步工具"},"runlevel":{"n":"runlevel","p":"/runlevel","d":"打印当前Linux系统的运行等级"},"sar":{"n":"sar","p":"/sar","d":"系统运行状态统计工具"},"scp":{"n":"scp","p":"/scp","d":"加密的方式在本地主机和远程主机之间复制文件"},"screen":{"n":"screen","p":"/screen","d":"用于命令行终端切换"},"script":{"n":"script","p":"/script","d":"记录终端会话的所有操作"},"scriptreplay":{"n":"scriptreplay","p":"/scriptreplay","d":"重新播放终端会话的所有操作"},"sed":{"n":"sed","p":"/sed","d":"功能强大的流式文本编辑器"},"seinfo":{"n":"seinfo","p":"/seinfo","d":"查询SELinux的策略提供多少相关规则"},"semanage":{"n":"semanage","p":"/semanage","d":"默认目录的安全上下文查询与修改"},"sendmail":{"n":"sendmail","p":"/sendmail","d":"著名电子邮件服务器"},"seq":{"n":"seq","p":"/seq","d":"以指定增量从首数开始打印数字到尾数"},"service":{"n":"service","p":"/service","d":"控制系统服务的实用工具"},"sesearch":{"n":"sesearch","p":"/sesearch","d":"查询SELinux策略的规则详情"},"set":{"n":"set","p":"/set","d":"显示或设置shell特性及shell变量"},"setfacl":{"n":"setfacl","p":"/setfacl","d":"设置文件访问控制列表"},"setpci":{"n":"setpci","p":"/setpci","d":"查询和配置PCI设备的使用工具"},"setsebool":{"n":"setsebool","p":"/setsebool","d":"修改SElinux策略内各项规则的布尔值"},"setsid":{"n":"setsid","p":"/setsid","d":"在新的会话中运行程序"},"sftp-server":{"n":"sftp-server","p":"/sftp-server","d":"sftp协议的服务器端程序"},"sftp":{"n":"sftp","p":"/sftp","d":"交互式的文件传输程序"},"sh":{"n":"sh","p":"/sh","d":"shell命令解释器"},"sha256sum":{"n":"sha256sum","p":"/sha256sum","d":"用于计算文件的 SHA-256 哈希值"},"shift":{"n":"shift","p":"/shift","d":"移动位置参数。"},"shopt":{"n":"shopt","p":"/shopt","d":"显示和设置shell操作选项"},"showmount":{"n":"showmount","p":"/showmount","d":"显示NFS服务器加载的信息"},"shuf":{"n":"shuf","p":"/shuf","d":"产生随机的排列。"},"shutdown":{"n":"shutdown","p":"/shutdown","d":"用来执行系统关机的命令"},"skill":{"n":"skill","p":"/skill","d":"向选定的进程发送信号冻结进程"},"slabtop":{"n":"slabtop","p":"/slabtop","d":"实时显示内核slab内存缓存信息"},"sleep":{"n":"sleep","p":"/sleep","d":"将目前动作延迟一段时间"},"slocate":{"n":"slocate","p":"/slocate","d":"命令查找文件或目录"},"smartmontools":{"n":"smartmontools","p":"/smartmontools","d":"Smartmontools 是一种硬盘检测工具,通过控制和管理硬盘的SMART(Self Monitoring Analysis and Reporting Technology,自动检测分析及报告技术)技术来实现的"},"smbclient":{"n":"smbclient","p":"/smbclient","d":"交互方式访问samba服务器"},"smbpasswd":{"n":"smbpasswd","p":"/smbpasswd","d":"samba用户和密码管理工具"},"sort":{"n":"sort","p":"/sort","d":"对文本文件中所有行进行排序。"},"source":{"n":"source","p":"/source","d":"在当前Shell环境中从指定文件读取和执行命令。"},"speedtest-cli":{"n":"speedtest-cli","p":"/speedtest-cli","d":"命令行下测试服务器外网速度"},"spell":{"n":"spell","p":"/spell","d":"对文件进行拼写检查"},"split":{"n":"split","p":"/split","d":"分割任意大小的文件"},"squid":{"n":"squid","p":"/squid","d":"squid服务器守护进程"},"squidclient":{"n":"squidclient","p":"/squidclient","d":"squid服务器的客户端管理工具"},"ss":{"n":"ss","p":"/ss","d":"比 netstat 好用的socket统计信息,iproute2 包附带的另一个工具,允许你查询 socket 的有关统计信息"},"ssh-add":{"n":"ssh-add","p":"/ssh-add","d":"把专用密钥添加到ssh-agent的高速缓存中"},"ssh-agent":{"n":"ssh-agent","p":"/ssh-agent","d":"ssh密钥管理器"},"ssh-copy-id":{"n":"ssh-copy-id","p":"/ssh-copy-id","d":"把本地的ssh公钥文件安装到远程主机对应的账户下"},"ssh-keygen":{"n":"ssh-keygen","p":"/ssh-keygen","d":"为ssh生成、管理和转换认证密钥"},"ssh-keyscan":{"n":"ssh-keyscan","p":"/ssh-keyscan","d":"收集主机公钥的使用工具"},"ssh":{"n":"ssh","p":"/ssh","d":"openssh套件中的客户端连接工具"},"sshd":{"n":"sshd","p":"/sshd","d":"openssh软件套件中的服务器守护进程"},"sshpass":{"n":"sshpass","p":"/sshpass","d":"免交互 SSH 登录工具。"},"startx":{"n":"startx","p":"/startx","d":"用来启动X Window"},"stat":{"n":"stat","p":"/stat","d":"用于显示文件的状态信息"},"strace":{"n":"strace","p":"/strace","d":"跟踪系统调用和信号"},"strings":{"n":"strings","p":"/strings","d":"在对象文件或二进制文件中查找可打印的字符串"},"stty":{"n":"stty","p":"/stty","d":"修改终端命令行的相关设置"},"su":{"n":"su","p":"/su","d":"用于切换当前用户身份到其他用户身份"},"sudo":{"n":"sudo","p":"/sudo","d":"以其他身份来执行命令"},"sum":{"n":"sum","p":"/sum","d":"计算文件的校验码和显示块数"},"supervisord":{"n":"supervisord","p":"/supervisord","d":"配置后台服务/常驻进程的进程管家工具"},"suspend":{"n":"suspend","p":"/suspend","d":"挂起shell的执行。"},"swapoff":{"n":"swapoff","p":"/swapoff","d":"关闭指定的交换空间"},"swapon":{"n":"swapon","p":"/swapon","d":"激活Linux系统中交换空间"},"sync":{"n":"sync","p":"/sync","d":"用于强制被改变的内容立刻写入磁盘"},"sysctl":{"n":"sysctl","p":"/sysctl","d":"时动态地修改内核的运行参数"},"syslog":{"n":"syslog","p":"/syslog","d":"系统默认的日志守护进程"},"systemctl":{"n":"systemctl","p":"/systemctl","d":"系统服务管理器指令"},"systool":{"n":"systool","p":"/systool","d":"显示基于总线、类和拓扑显示系统中设备的信息"},"tac":{"n":"tac","p":"/tac","d":"连接多个文件并以行为单位反向打印到标准输出。"},"tail":{"n":"tail","p":"/tail","d":"在屏幕上显示指定文件的末尾若干行"},"tailf":{"n":"tailf","p":"/tailf","d":"在屏幕上显示指定文件的末尾若干行内容,通常用于日志文件的跟踪输出"},"talk":{"n":"talk","p":"/talk","d":"让用户和其他用户聊天"},"tar":{"n":"tar","p":"/tar","d":"将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。"},"tcpdump":{"n":"tcpdump","p":"/tcpdump","d":"一款sniffer工具,是Linux上的抓包工具,嗅探器"},"tcpreplay":{"n":"tcpreplay","p":"/tcpreplay","d":"将保存在 PCAP 文件包重新发送,用于性能或者功能测试"},"tee":{"n":"tee","p":"/tee","d":"从标准输入读取数据并重定向到标准输出和文件。"},"telinit":{"n":"telinit","p":"/telinit","d":"切换当前正在运行系统的运行等级"},"telnet":{"n":"telnet","p":"/telnet","d":"登录远程主机和管理(测试ip端口是否连通)"},"tempfile":{"n":"tempfile","p":"/tempfile","d":"shell中给临时文件命名"},"test":{"n":"test","p":"/test","d":"执行条件表达式。"},"tftp":{"n":"tftp","p":"/tftp","d":"在本机和tftp服务器之间使用TFTP协议传输文件"},"time":{"n":"time","p":"/time","d":"统计给定命令所花费的总时间"},"timedatectl":{"n":"timedatectl","p":"/timedatectl","d":"用于在 Linux 中设置或查询系统时间、日期和时区等配置。"},"times":{"n":"times","p":"/times","d":"显示进程累计时间。"},"tload":{"n":"tload","p":"/tload","d":"显示系统负载状况"},"tmux":{"n":"tmux","p":"/tmux","d":"Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权"},"top":{"n":"top","p":"/top","d":"显示或管理执行中的程序"},"touch":{"n":"touch","p":"/touch","d":"创建新的空文件"},"tput":{"n":"tput","p":"/tput","d":"通过terminfo数据库对终端会话进行初始化和操作"},"tr":{"n":"tr","p":"/tr","d":"将字符进行替换压缩和删除"},"tracepath":{"n":"tracepath","p":"/tracepath","d":"追踪目的主机经过的路由信息"},"traceroute":{"n":"traceroute","p":"/traceroute","d":"显示数据包到主机间的路径"},"trap":{"n":"trap","p":"/trap","d":"捕捉信号和其他事件并执行命令。"},"tree":{"n":"tree","p":"/tree","d":"树状图列出目录的内容"},"true":{"n":"true","p":"/true","d":"返回状态为成功。"},"tty":{"n":"tty","p":"/tty","d":"显示连接到当前标准输入的终端设备文件名"},"type":{"n":"type","p":"/type","d":"显示指定命令的类型。"},"ulimit":{"n":"ulimit","p":"/ulimit","d":"控制shell程序的资源"},"umask":{"n":"umask","p":"/umask","d":"显示或设置创建文件的权限掩码。"},"umount":{"n":"umount","p":"/umount","d":"用于卸载已经加载的文件系统"},"unalias":{"n":"unalias","p":"/unalias","d":"删除由alias设置的别名"},"uname":{"n":"uname","p":"/uname","d":"打印系统信息。"},"unarj":{"n":"unarj","p":"/unarj","d":"解压缩由arj命令创建的压缩包"},"uncompress":{"n":"uncompress","p":"/uncompress","d":"用来解压.Z文件"},"unexpand":{"n":"unexpand","p":"/unexpand","d":"将文件的空白字符转换为制表符"},"uniq":{"n":"uniq","p":"/uniq","d":"显示或忽略重复的行。"},"unlink":{"n":"unlink","p":"/unlink","d":"系统调用函数unlink去删除指定的文件"},"unprotoize":{"n":"unprotoize","p":"/unprotoize","d":"删除C语言源代码文件中的函数原型"},"unrar":{"n":"unrar","p":"/unrar","d":"解压rar文件命令,从 rar 压缩包中提取文件"},"unset":{"n":"unset","p":"/unset","d":"删除指定的shell变量或函数。"},"unzip":{"n":"unzip","p":"/unzip","d":"用于解压缩由zip命令压缩的压缩包"},"updatedb":{"n":"updatedb","p":"/updatedb","d":"创建或更新slocate命令所必需的数据库文件"},"uptime":{"n":"uptime","p":"/uptime","d":"查看Linux系统负载信息"},"useradd":{"n":"useradd","p":"/useradd","d":"创建的新的系统用户"},"userdel":{"n":"userdel","p":"/userdel","d":"用于删除给定的用户以及与用户相关的文件"},"usermod":{"n":"usermod","p":"/usermod","d":"用于修改用户的基本信息"},"usernetctl":{"n":"usernetctl","p":"/usernetctl","d":"被允许时操作指定的网络接口"},"users":{"n":"users","p":"/users","d":"打印当前主机所有登陆用户的名称。"},"uucico":{"n":"uucico","p":"/uucico","d":"UUCP文件传输服务程序"},"uupick":{"n":"uupick","p":"/uupick","d":"命令处理传送进来的文件"},"uuto":{"n":"uuto","p":"/uuto","d":"将文件传送到远端的UUCP主机"},"vdfuse":{"n":"vdfuse","p":"/vdfuse","d":"VirtualBox软件挂载VDI分区文件工具"},"vgchange":{"n":"vgchange","p":"/vgchange","d":"修改卷组属性"},"vgconvert":{"n":"vgconvert","p":"/vgconvert","d":"转换卷组元数据格式"},"vgcreate":{"n":"vgcreate","p":"/vgcreate","d":"用于创建LVM卷组"},"vgdisplay":{"n":"vgdisplay","p":"/vgdisplay","d":"显示LVM卷组的信息"},"vgextend":{"n":"vgextend","p":"/vgextend","d":"向卷组中添加物理卷"},"vgreduce":{"n":"vgreduce","p":"/vgreduce","d":"从卷组中删除物理卷"},"vgremove":{"n":"vgremove","p":"/vgremove","d":"用于用户删除LVM卷组"},"vgrename":{"n":"vgrename","p":"/vgrename","d":"使用vgrename命令可以重命名卷组的名称"},"vgscan":{"n":"vgscan","p":"/vgscan","d":"扫描并显示系统中的卷组"},"vi":{"n":"vi","p":"/vi","d":"功能强大的纯文本编辑器"},"vmstat":{"n":"vmstat","p":"/vmstat","d":"显示虚拟内存状态"},"volname":{"n":"volname","p":"/volname","d":"显示指定的ISO-9660格式的设备的卷名称"},"w":{"n":"w","p":"/w","d":"显示目前登入系统的用户信息"},"wait":{"n":"wait","p":"/wait","d":"等待进程执行完后返回"},"wall":{"n":"wall","p":"/wall","d":"向系统当前所有打开的终端上输出信息"},"watch":{"n":"watch","p":"/watch","d":"可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令"},"wc":{"n":"wc","p":"/wc","d":"统计文件的字节数、字数、行数"},"wget":{"n":"wget","p":"/wget","d":"Linux系统下载文件工具"},"whatis":{"n":"whatis","p":"/whatis","d":"查询一个命令执行什么功能"},"whereis":{"n":"whereis","p":"/whereis","d":"查找二进制程序、代码等相关文件路径"},"which":{"n":"which","p":"/which","d":"查找并显示给定命令的绝对路径"},"who":{"n":"who","p":"/who","d":"显示当前所有登陆用户的信息。"},"whoami":{"n":"whoami","p":"/whoami","d":"打印当前有效的用户ID对应的名称"},"write":{"n":"write","p":"/write","d":"向指定登录用户终端上发送信息"},"xargs":{"n":"xargs","p":"/xargs","d":"给其他命令传递参数的一个过滤器"},"xauth":{"n":"xauth","p":"/xauth","d":"显示和编辑被用于连接X服务器的认证信息"},"xclip":{"n":"xclip","p":"/xclip","d":"管理 X 粘贴板"},"xhost":{"n":"xhost","p":"/xhost","d":"制哪些X客户端能够在X服务器上显示"},"xinit":{"n":"xinit","p":"/xinit","d":"是Linux下X-Window系统的初始化程序"},"xlsatoms":{"n":"xlsatoms","p":"/xlsatoms","d":"列出X服务器内部所有定义的原子成分"},"xlsclients":{"n":"xlsclients","p":"/xlsclients","d":"列出显示器中的客户端应用程序"},"xlsfonts":{"n":"xlsfonts","p":"/xlsfonts","d":"列出X Server使用的字体"},"xrandr":{"n":"xrandr","p":"/xrandr","d":"X 窗口系统配置管理工具"},"xset":{"n":"xset","p":"/xset","d":"设置X-Window系统中的用户爱好的实用工具"},"xz":{"n":"xz","p":"/xz","d":"POSIX 平台开发具有高压缩率的工具"},"yes":{"n":"yes","p":"/yes","d":"重复打印指定字符串"},"ypdomainname":{"n":"ypdomainname","p":"/ypdomainname","d":"显示主机的NIS的域名"},"yum":{"n":"yum","p":"/yum","d":"基于RPM的软件包管理器"},"zcat":{"n":"zcat","p":"/zcat","d":"显示压缩包中文件的内容"},"zfore":{"n":"zfore","p":"/zfore","d":"强制为gzip格式的压缩文件添加.gz后缀"},"zip":{"n":"zip","p":"/zip","d":"可以用来解压缩文件"},"zipinfo":{"n":"zipinfo","p":"/zipinfo","d":"用来列出压缩文件信息"},"zipsplit":{"n":"zipsplit","p":"/zipsplit","d":"将较大的zip压缩包分割成各个较小的压缩包"},"znew":{"n":"znew","p":"/znew","d":"将.Z压缩包重新转化为gzip命令压缩的.gz压缩包"}} \ No newline at end of file +{"7z":{"n":"7z","p":"/7z","d":"拥有极高压缩比的开源压缩软件。"},"ab":{"n":"ab","p":"/ab","d":"Apache服务器的性能测试工具"},"accept":{"n":"accept","p":"/accept","d":"指示打印系统接受发往指定目标打印机的打印任务"},"ack":{"n":"ack","p":"/ack","d":"比grep好用的文本搜索工具"},"ag":{"n":"ag","p":"/ag","d":"ack 的升级版,C语言编写,更快更人性化"},"alias":{"n":"alias","p":"/alias","d":"定义或显示别名。"},"apachectl":{"n":"apachectl","p":"/apachectl","d":"Apache服务器前端控制工具"},"apk":{"n":"apk","p":"/apk","d":"Alpine Linux 下的包管理工具"},"apropos":{"n":"apropos","p":"/apropos","d":"在 whatis 数据库中查找字符串"},"apt-get":{"n":"apt-get","p":"/apt-get","d":"Debian Linux发行版中的APT软件包管理工具"},"apt-key":{"n":"apt-key","p":"/apt-key","d":"管理Debian Linux系统中的软件包密钥"},"apt-sortpkgs":{"n":"apt-sortpkgs","p":"/apt-sortpkgs","d":"Debian Linux下对软件包索引文件进行排序的工具"},"aptitude":{"n":"aptitude","p":"/aptitude","d":"Debian Linux系统中软件包管理工具"},"ar":{"n":"ar","p":"/ar","d":"建立或修改备存文件,或是从备存文件中抽取文件"},"arch":{"n":"arch","p":"/arch","d":"显示当前主机的硬件架构类型"},"arj":{"n":"arj","p":"/arj","d":"用于创建和管理.arj压缩包"},"arp":{"n":"arp","p":"/arp","d":"arp 命令用于显示和修改 IP 到 MAC 转换表"},"arpd":{"n":"arpd","p":"/arpd","d":"收集免费ARP信息"},"arping":{"n":"arping","p":"/arping","d":"通过发送ARP协议报文测试网络"},"arptables":{"n":"arptables","p":"/arptables","d":"管理ARP包过滤规则表"},"arpwatch":{"n":"arpwatch","p":"/arpwatch","d":"监听网络上ARP的记录"},"as":{"n":"as","p":"/as","d":"汇编语言编译器"},"at":{"n":"at","p":"/at","d":"在指定时间执行一个任务"},"atop":{"n":"atop","p":"/atop","d":"监控Linux系统资源与进程的工具"},"atq":{"n":"atq","p":"/atq","d":"列出当前用户的at任务列表"},"atrm":{"n":"atrm","p":"/atrm","d":"删除待执行任务队列中的指定任务"},"awk":{"n":"awk","p":"/awk","d":"文本和数据进行处理的编程语言"},"axel":{"n":"axel","p":"/axel","d":"多线程下载工具"},"badblocks":{"n":"badblocks","p":"/badblocks","d":"查找磁盘中损坏的区块"},"base64":{"n":"base64","p":"/base64","d":"base64 编码/解码文件或标准输入输出"},"basename":{"n":"basename","p":"/basename","d":"打印目录或者文件的基本名称"},"batch":{"n":"batch","p":"/batch","d":"在系统不繁忙的时候执行定时任务"},"bc":{"n":"bc","p":"/bc","d":"算术操作精密运算工具"},"bg":{"n":"bg","p":"/bg","d":"将前台终端作业移动到后台运行"},"bind":{"n":"bind","p":"/bind","d":"显示或设置键盘按键与其相关的功能"},"blkid":{"n":"blkid","p":"/blkid","d":"查看块设备的文件系统类型、LABEL、UUID等信息"},"blockdev":{"n":"blockdev","p":"/blockdev","d":"从命令行调用区块设备控制程序"},"bmodinfo":{"n":"bmodinfo","p":"/bmodinfo","d":"显示给定模块的详细信息"},"break":{"n":"break","p":"/break","d":"结束for,while或until循环。"},"builtin":{"n":"builtin","p":"/builtin","d":"执行bash内建命令。"},"bunzip2":{"n":"bunzip2","p":"/bunzip2","d":"可解压缩.bz2格式的压缩文件。 "},"bye":{"n":"bye","p":"/bye","d":"命令用于中断FTP连线并结束程序"},"bzcat":{"n":"bzcat","p":"/bzcat","d":"不解压,直接查看指定的.bz2文件"},"bzcmp":{"n":"bzcmp","p":"/bzcmp","d":"比较两个压缩包中的文件"},"bzdiff":{"n":"bzdiff","p":"/bzdiff","d":"直接比较两个.bz2压缩包中文件的不同"},"bzgrep":{"n":"bzgrep","p":"/bzgrep","d":"使用正则表达式搜索.bz2压缩包中文件"},"bzip2":{"n":"bzip2","p":"/bzip2","d":"将文件压缩成bz2格式"},"bzip2recover":{"n":"bzip2recover","p":"/bzip2recover","d":"恢复被破坏的.bz2压缩包中的文件"},"bzless":{"n":"bzless","p":"/bzless","d":"增强.bz2压缩包查看器"},"bzmore":{"n":"bzmore","p":"/bzmore","d":"查看bzip2压缩过的文本文件的内容"},"cal":{"n":"cal","p":"/cal","d":"显示当前日历或指定日期的日历"},"cancel":{"n":"cancel","p":"/cancel","d":"取消已存在的打印任务"},"cat":{"n":"cat","p":"/cat","d":"连接多个文件并打印到标准输出。"},"cd":{"n":"cd","p":"/cd","d":"切换用户当前工作目录。"},"cdrecord":{"n":"cdrecord","p":"/cdrecord","d":"Linux系统下光盘刻录功能命令"},"chage":{"n":"chage","p":"/chage","d":"修改帐号和密码的有效期限"},"chattr":{"n":"chattr","p":"/chattr","d":"用来改变文件属性"},"chcon":{"n":"chcon","p":"/chcon","d":"修改对象(文件)的安全上下文"},"chfn":{"n":"chfn","p":"/chfn","d":"用来改变finger命令显示的信息"},"chgrp":{"n":"chgrp","p":"/chgrp","d":"用来变更文件或目录的所属群组"},"chkconfig":{"n":"chkconfig","p":"/chkconfig","d":"检查或设置系统的各种服务"},"chmod":{"n":"chmod","p":"/chmod","d":"用来变更文件或目录的权限"},"chown":{"n":"chown","p":"/chown","d":"用来变更文件或目录的拥有者或所属群组"},"chpasswd":{"n":"chpasswd","p":"/chpasswd","d":"批量更新用户口令的工具"},"chroot":{"n":"chroot","p":"/chroot","d":"把根目录换成指定的目的目录"},"chsh":{"n":"chsh","p":"/chsh","d":"用来更换登录系统时使用的shell"},"cksum":{"n":"cksum","p":"/cksum","d":"检查文件的CRC是否正确"},"clear":{"n":"clear","p":"/clear","d":"清除当前屏幕终端上的任何信息"},"clock":{"n":"clock","p":"/clock","d":"用于调整 RTC 时间"},"clockdiff":{"n":"clockdiff","p":"/clockdiff","d":"检测两台linux主机的时间差"},"cmp":{"n":"cmp","p":"/cmp","d":"比较两个文件是否有差异"},"col":{"n":"col","p":"/col","d":"过滤控制字符"},"colrm":{"n":"colrm","p":"/colrm","d":"删除文件中的指定列"},"column":{"n":"column","p":"/column","d":"按列格式化输出文件"},"comm":{"n":"comm","p":"/comm","d":"按行比较两个已排序的文件。"},"command":{"n":"command","p":"/command","d":"调用并执行指定的命令"},"compress":{"n":"compress","p":"/compress","d":"使用Lempress-Ziv编码压缩数据文件"},"consoletype":{"n":"consoletype","p":"/consoletype","d":"输出已连接的终端类型"},"continue":{"n":"continue","p":"/continue","d":"结束本次循环,继续执行下一个for,while或until循环。"},"convertquota":{"n":"convertquota","p":"/convertquota","d":"把老的配额文件转换为新的格式"},"cp":{"n":"cp","p":"/cp","d":"将源文件或目录复制到目标文件或目录中"},"cpio":{"n":"cpio","p":"/cpio","d":"用来建立、还原备份档的工具程序"},"createrepo":{"n":"createrepo","p":"/createrepo","d":"创建YUM仓库"},"crontab":{"n":"crontab","p":"/crontab","d":"提交和管理用户的需要周期性执行的任务"},"csplit":{"n":"csplit","p":"/csplit","d":"将一个大文件分割成小的碎片文件"},"cu":{"n":"cu","p":"/cu","d":"用于连接另一个系统主机"},"cupsdisable":{"n":"cupsdisable","p":"/cupsdisable","d":"停止指定的打印机"},"cupsenable":{"n":"cupsenable","p":"/cupsenable","d":"启动指定的打印机"},"curl":{"n":"curl","p":"/curl","d":"利用URL规则在命令行下工作的文件传输工具"},"cut":{"n":"cut","p":"/cut","d":"连接文件并打印到标准输出设备上"},"date":{"n":"date","p":"/date","d":"显示或设置系统时间与日期"},"dc":{"n":"dc","p":"/dc","d":"任意精度计算器"},"dd":{"n":"dd","p":"/dd","d":"复制文件并对原文件的内容进行转换和格式化处理"},"declare":{"n":"declare","p":"/declare","d":"声明变量,设置或显示变量的值和属性。"},"depmod":{"n":"depmod","p":"/depmod","d":"分析可载入模块的相依性"},"df":{"n":"df","p":"/df","d":"显示磁盘的相关信息"},"dhclient":{"n":"dhclient","p":"/dhclient","d":"动态获取或释放IP地址"},"dhcpd":{"n":"dhcpd","p":"/dhcpd","d":"运行DHCP服务器"},"dhcrelay":{"n":"dhcrelay","p":"/dhcrelay","d":"使用dhcrelay命令可以提供中继DHCP和BOOTP请求"},"diff":{"n":"diff","p":"/diff","d":"比较给定的两个文件的不同"},"diff3":{"n":"diff3","p":"/diff3","d":"比较3个文件不同的地方"},"diffstat":{"n":"diffstat","p":"/diffstat","d":"显示diff命令输出信息的柱状图"},"dig":{"n":"dig","p":"/dig","d":"域名查询工具"},"dircolors":{"n":"dircolors","p":"/dircolors","d":"置ls命令在显示目录或文件时所用的色彩"},"dirname":{"n":"dirname","p":"/dirname","d":"去除文件名中的非目录部分"},"dirs":{"n":"dirs","p":"/dirs","d":"显示目录堆栈。"},"disown":{"n":"disown","p":"/disown","d":"从当前的shell中移除作业。"},"dmesg":{"n":"dmesg","p":"/dmesg","d":"显示Linux系统启动信息"},"dmidecode":{"n":"dmidecode","p":"/dmidecode","d":"在Linux系统下获取有关硬件方面的信息"},"dnf":{"n":"dnf","p":"/dnf","d":"新一代的RPM软件包管理器"},"dnsdomainname":{"n":"dnsdomainname","p":"/dnsdomainname","d":"定义DNS系统中FQDN名称的域名"},"docker":{"n":"docker","p":"/docker","d":"容器化技术,可以将应用程序及其依赖项打包到一个可移植的容器中,使其可以在不同的环境中运行"},"domainname":{"n":"domainname","p":"/domainname","d":"显示和设置系统的NIS域名"},"dos2unix":{"n":"dos2unix","p":"/dos2unix","d":"将DOS格式文本文件转换成Unix格式"},"dpkg-deb":{"n":"dpkg-deb","p":"/dpkg-deb","d":"Debian Linux下的软件包管理工具"},"dpkg-divert":{"n":"dpkg-divert","p":"/dpkg-divert","d":"Debian Linux中创建并管理一个转向列表"},"dpkg-preconfigure":{"n":"dpkg-preconfigure","p":"/dpkg-preconfigure","d":"Debian Linux中软件包安装之前询问问题"},"dpkg-query":{"n":"dpkg-query","p":"/dpkg-query","d":"Debian Linux中软件包的查询工具"},"dpkg-reconfigure":{"n":"dpkg-reconfigure","p":"/dpkg-reconfigure","d":"Debian Linux中重新配制一个已经安装的软件包"},"dpkg-split":{"n":"dpkg-split","p":"/dpkg-split","d":"Debian Linux中将大软件包分割成小包"},"dpkg-statoverride":{"n":"dpkg-statoverride","p":"/dpkg-statoverride","d":"Debian Linux中覆盖文件的所有权和模式"},"dpkg-trigger":{"n":"dpkg-trigger","p":"/dpkg-trigger","d":"Debian Linux下的软件包触发器"},"dpkg":{"n":"dpkg","p":"/dpkg","d":"Debian Linux系统上安装、创建和管理软件包"},"dris":{"n":"dris","p":"/dris","d":"显示和清空目录堆栈中的内容"},"dstat":{"n":"dstat","p":"/dstat","d":"通用的系统资源统计工具"},"du":{"n":"du","p":"/du","d":"显示每个文件和目录的磁盘使用空间"},"dump":{"n":"dump","p":"/dump","d":"用于备份ext2或者ext3文件系统"},"e2fsck":{"n":"e2fsck","p":"/e2fsck","d":"用于检查第二扩展文件系统的完整性"},"e2label":{"n":"e2label","p":"/e2label","d":"设置第二扩展文件系统的卷标"},"echo":{"n":"echo","p":"/echo","d":"输出指定的字符串或者变量"},"ed":{"n":"ed","p":"/ed","d":"单行纯文本编辑器"},"edquota":{"n":"edquota","p":"/edquota","d":"用于编辑指定用户或工作组磁盘配额"},"egrep":{"n":"egrep","p":"/egrep","d":"在文件内查找指定的字符串"},"eject":{"n":"eject","p":"/eject","d":"用来退出抽取式设备"},"elinks":{"n":"elinks","p":"/elinks","d":"纯文本界面的WWW浏览器"},"elm":{"n":"elm","p":"/elm","d":"纯文本邮件客户端程序"},"emacs":{"n":"emacs","p":"/emacs","d":"功能强大的全屏文本编辑器"},"enable":{"n":"enable","p":"/enable","d":"启动或禁用shell内建命令"},"env":{"n":"env","p":"/env","d":"显示系统中已存在的环境变量"},"ethtool":{"n":"ethtool","p":"/ethtool","d":"显示或修改以太网卡的配置信息"},"ex":{"n":"ex","p":"/ex","d":"启动vim编辑器的ex编辑模式"},"exec":{"n":"exec","p":"/exec","d":"调用并执行指定的命令"},"exit":{"n":"exit","p":"/exit","d":"退出当前的shell。"},"expand":{"n":"expand","p":"/expand","d":"将文件的制表符转换为空白字符"},"export":{"n":"export","p":"/export","d":"为shell变量或函数设置导出属性。"},"exportfs":{"n":"exportfs","p":"/exportfs","d":"管理NFS共享文件系统列表"},"expr":{"n":"expr","p":"/expr","d":"一款表达式计算工具"},"false":{"n":"false","p":"/false","d":"返回状态为失败。"},"fc":{"n":"fc","p":"/fc","d":"显示历史列表中的命令或修改指定的历史命令并执行。"},"fdisk":{"n":"fdisk","p":"/fdisk","d":"查看磁盘使用情况和磁盘分区"},"fg":{"n":"fg","p":"/fg","d":"将后台作业移动到前台终端运行"},"fgrep":{"n":"fgrep","p":"/fgrep","d":"为文件搜索文字字符串"},"figlet":{"n":"figlet","p":"/figlet","d":"字符串转为 “字画符”。"},"file":{"n":"file","p":"/file","d":"用来探测给定文件的类型"},"find":{"n":"find","p":"/find","d":"在指定目录下查找文件"},"findfs":{"n":"findfs","p":"/findfs","d":"标签或UUID查找文件系统"},"finger":{"n":"finger","p":"/finger","d":"用于查找并显示用户信息"},"firewall-cmd":{"n":"firewall-cmd","p":"/firewall-cmd","d":"Linux上新用的防火墙软件,跟iptables差不多的工具"},"fishshell":{"n":"fishshell","p":"/fishshell","d":"比 bash 更好用的 shell"},"fmt":{"n":"fmt","p":"/fmt","d":"读取文件后优化处理并输出"},"fold":{"n":"fold","p":"/fold","d":"控制文件内容输出时所占用的屏幕宽度"},"fping":{"n":"fping","p":"/fping","d":"fping检测主机是否存在"},"free":{"n":"free","p":"/free","d":"显示内存的使用情况"},"fsck":{"n":"fsck","p":"/fsck","d":"fsck(英文全拼:file system check)命令检查并且试图修复文件系统中的错误"},"ftp":{"n":"ftp","p":"/ftp","d":"用来设置文件系统相关功能"},"ftpcount":{"n":"ftpcount","p":"/ftpcount","d":"显示目前已FTP登入的用户人数"},"ftpshut":{"n":"ftpshut","p":"/ftpshut","d":"在指定的时间关闭FTP服务器"},"ftptop":{"n":"ftptop","p":"/ftptop","d":"proftpd服务器的连接状态"},"ftpwho":{"n":"ftpwho","p":"/ftpwho","d":"显示当前每个ftp会话信息"},"fuser":{"n":"fuser","p":"/fuser","d":"使用文件或文件结构识别进程"},"gcc":{"n":"gcc","p":"/gcc","d":"基于C/C++的编译器"},"gcov":{"n":"gcov","p":"/gcov","d":"测试程序的代码覆盖率的工具"},"gdb":{"n":"gdb","p":"/gdb","d":"功能强大的程序调试器"},"get_module":{"n":"get_module","p":"/get_module","d":"获取Linux内核模块的详细信息"},"getenforce":{"n":"getenforce","p":"/getenforce","d":"显示当前SELinux的应用模式,是强制、执行还是停用"},"getent":{"n":"getent","p":"/getent","d":"查询 DNS 名称服务器中的命名空间"},"getsebool":{"n":"getsebool","p":"/getsebool","d":"查询SElinux策略内各项规则的布尔值"},"git":{"n":"git","p":"/git","d":"是目前世界上最先进的分布式版本控制系统"},"gpasswd":{"n":"gpasswd","p":"/gpasswd","d":"Linux下工作组文件的管理工具"},"gpg":{"n":"gpg","p":"/gpg","d":"可用于签名、检查、加密或解密的工具"},"gpm":{"n":"gpm","p":"/gpm","d":"提供文字模式下的滑鼠事件处理"},"grep":{"n":"grep","p":"/grep","d":"强大的文本搜索工具"},"groupadd":{"n":"groupadd","p":"/groupadd","d":"用于创建一个新的工作组"},"groupdel":{"n":"groupdel","p":"/groupdel","d":"用于删除指定的工作组"},"groupmems":{"n":"groupmems","p":"/groupmems","d":"管理用户主要组的成员"},"groupmod":{"n":"groupmod","p":"/groupmod","d":"更改群组识别码或名称"},"groups":{"n":"groups","p":"/groups","d":"打印指定用户所在组的名称。"},"grpck":{"n":"grpck","p":"/grpck","d":"用于验证组文件的完整性"},"grpconv":{"n":"grpconv","p":"/grpconv","d":"用来开启群组的投影密码"},"grpunconv":{"n":"grpunconv","p":"/grpunconv","d":"用来关闭群组的投影密码"},"grub":{"n":"grub","p":"/grub","d":"多重引导程序grub的命令行shell工具"},"grub2-mkconfig":{"n":"grub2-mkconfig","p":"/grub2-mkconfig","d":"生成 grub.cfg 配置文件。"},"grub2-set-default":{"n":"grub2-set-default","p":"/grub2-set-default","d":"设置系统默认的启动内核"},"gunzip":{"n":"gunzip","p":"/gunzip","d":"用来解压缩文件"},"gzexe":{"n":"gzexe","p":"/gzexe","d":"用来压缩可执行文件"},"gzip":{"n":"gzip","p":"/gzip","d":"用来压缩文件"},"halt":{"n":"halt","p":"/halt","d":"关闭正在运行的Linux操作系统"},"hcitool":{"n":"hcitool","p":"/hcitool","d":"hcitool是一个Linux命令行工具,用于管理和调试蓝牙设备。它可以用于扫描周围的蓝牙设备、连接到蓝牙设备发送命令和数据包等。"},"hdparm":{"n":"hdparm","p":"/hdparm","d":"显示与设定硬盘的参数"},"head":{"n":"head","p":"/head","d":"显示文件的开头部分。"},"help":{"n":"help","p":"/help","d":"该命令是bash内建命令,用于显示bash内建命令的帮助信息。"},"hexdump":{"n":"hexdump","p":"/hexdump","d":"显示文件十六进制格式"},"history":{"n":"history","p":"/history","d":"显示或操作历史列表。"},"host":{"n":"host","p":"/host","d":"常用的分析域名查询工具"},"hostid":{"n":"hostid","p":"/hostid","d":"显示当前主机的十六进制数字标识。"},"hostname":{"n":"hostname","p":"/hostname","d":"显示和设置系统的主机名"},"hostnamectl":{"n":"hostnamectl","p":"/hostnamectl","d":"查询或更改系统主机名"},"hping3":{"n":"hping3","p":"/hping3","d":"测试网络及主机的安全"},"htdigest":{"n":"htdigest","p":"/htdigest","d":"Apache服务器内置工具"},"htop":{"n":"htop","p":"/htop","d":"[非内部命令]一个互动的进程查看器,可以动态观察系统进程状况"},"htpasswd":{"n":"htpasswd","p":"/htpasswd","d":"apache服务器创建密码认证文件"},"hwclock":{"n":"hwclock","p":"/hwclock","d":"显示与设定硬件时钟"},"iconv":{"n":"iconv","p":"/iconv","d":"转换文件的编码方式"},"id":{"n":"id","p":"/id","d":"打印真实以及有效的用户和所在组的信息"},"ifcfg":{"n":"ifcfg","p":"/ifcfg","d":"置Linux中的网络接口参数"},"ifconfig":{"n":"ifconfig","p":"/ifconfig","d":"配置和显示Linux系统网卡的网络参数"},"ifdown":{"n":"ifdown","p":"/ifdown","d":"禁用指定的网络接口"},"ifstat":{"n":"ifstat","p":"/ifstat","d":"统计网络接口流量状态"},"iftop":{"n":"iftop","p":"/iftop","d":"一款实时流量监控工具"},"ifup":{"n":"ifup","p":"/ifup","d":"激活指定的网络接口"},"indent":{"n":"indent","p":"/indent","d":"格式化C语言的源文件"},"info":{"n":"info","p":"/info","d":"Linux下info格式的帮助指令"},"init":{"n":"init","p":"/init","d":"init进程是所有Linux进程的父进程"},"inotifywait":{"n":"inotifywait","p":"/inotifywait","d":"异步文件系统监控机制"},"insmod":{"n":"insmod","p":"/insmod","d":"将给定的模块加载到内核中"},"install":{"n":"install","p":"/install","d":"安装或升级软件或备份数据"},"iostat":{"n":"iostat","p":"/iostat","d":"iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。iowait 指在一个采样周期内有百分之几的时间是属于以下情况:CPU处于空闲状态并且至少有一个未完成的磁盘IO请求。"},"iotop":{"n":"iotop","p":"/iotop","d":"用来监视磁盘I/O使用状况的工具"},"ip":{"n":"ip","p":"/ip","d":"网络配置工具"},"ip6tables-restore":{"n":"ip6tables-restore","p":"/ip6tables-restore","d":"还原ip6tables表"},"ip6tables-save":{"n":"ip6tables-save","p":"/ip6tables-save","d":"保存ip6tables表配置"},"ip6tables":{"n":"ip6tables","p":"/ip6tables","d":"linux中防火墙软件"},"ipcalc":{"n":"ipcalc","p":"/ipcalc","d":"简单的IP地址计算器"},"ipcrm":{"n":"ipcrm","p":"/ipcrm","d":"删除消息队列、信号集、或者共享内存标识"},"ipcs":{"n":"ipcs","p":"/ipcs","d":"分析消息队列共享内存和信号量"},"iperf":{"n":"iperf","p":"/iperf","d":"网络性能测试工具"},"iptables-restore":{"n":"iptables-restore","p":"/iptables-restore","d":"还原iptables表的配置"},"iptables-save":{"n":"iptables-save","p":"/iptables-save","d":"备份iptables的表配置"},"iptables":{"n":"iptables","p":"/iptables","d":"Linux上常用的防火墙软件"},"iptraf":{"n":"iptraf","p":"/iptraf","d":"实时地监视网卡流量"},"iptstate":{"n":"iptstate","p":"/iptstate","d":"显示iptables的工作状态"},"iscsiadm":{"n":"iscsiadm","p":"/iscsiadm","d":"管理iSCSI连接"},"ispell":{"n":"ispell","p":"/ispell","d":"检查文件中出现的拼写错误"},"jed":{"n":"jed","p":"/jed","d":"主要用于编辑代码的编辑器"},"jobs":{"n":"jobs","p":"/jobs","d":"显示作业的状态。"},"joe":{"n":"joe","p":"/joe","d":"强大的纯文本编辑器"},"join":{"n":"join","p":"/join","d":"两个文件中指定栏位内容相同的行连接起来"},"journalctl":{"n":"journalctl","p":"/journalctl","d":"检索 systemd 日志,是 CentOS 7 才有的工具。"},"jq":{"n":"jq","p":"/jq","d":"一个灵活的轻量级命令行JSON处理器"},"jwhois":{"n":"jwhois","p":"/jwhois","d":"whois 客户端服务"},"kernelversion":{"n":"kernelversion","p":"/kernelversion","d":"打印当前内核的主版本号"},"kexec":{"n":"kexec","p":"/kexec","d":"从当前正在运行的内核引导到一个新内核"},"kill":{"n":"kill","p":"/kill","d":"发送信号到进程。"},"killall":{"n":"killall","p":"/killall","d":"使用进程的名称来杀死一组进程"},"last":{"n":"last","p":"/last","d":"列出目前与过去登入系统的用户相关信息"},"lastb":{"n":"lastb","p":"/lastb","d":"列出登入系统失败的用户相关信息"},"lastlog":{"n":"lastlog","p":"/lastlog","d":"显示系统中所有用户最近一次登录信息"},"ld":{"n":"ld","p":"/ld","d":"将目标文件连接为可执行程序"},"ldconfig":{"n":"ldconfig","p":"/ldconfig","d":"动态链接库管理命令"},"ldd":{"n":"ldd","p":"/ldd","d":"打印程序或者库文件所依赖的共享库列表"},"less":{"n":"less","p":"/less","d":"分屏上下翻页浏览文件内容"},"let":{"n":"let","p":"/let","d":"简单的计算器,执行算术表达式。"},"lftp":{"n":"lftp","p":"/lftp","d":"优秀的文件客户端程序"},"lftpget":{"n":"lftpget","p":"/lftpget","d":"调用lftp指令下载指定的文件"},"lha":{"n":"lha","p":"/lha","d":"压缩或解压缩lzh格式文件"},"lilo":{"n":"lilo","p":"/lilo","d":"安装核心载入开机管理程序"},"ln":{"n":"ln","p":"/ln","d":"用来为文件创建链接"},"lnstat":{"n":"lnstat","p":"/lnstat","d":"显示Linux系统的网路状态"},"local":{"n":"local","p":"/local","d":"在函数内定义局部变量。"},"locate":{"n":"locate","p":"/locate","d":"比 find 好用的文件查找工具"},"logger":{"n":"logger","p":"/logger","d":"在系统日志中记录相应条目"},"login":{"n":"login","p":"/login","d":"登录系统或切换用户身份"},"logname":{"n":"logname","p":"/logname","d":"打印当前终端登录用户的名称。"},"logout":{"n":"logout","p":"/logout","d":"退出当前登录的Shell"},"logrotate":{"n":"logrotate","p":"/logrotate","d":"系统日志进行轮转、压缩和删除"},"logsave":{"n":"logsave","p":"/logsave","d":"将命令的输出信息保存到指定的日志文件"},"logwatch":{"n":"logwatch","p":"/logwatch","d":"可定制和可插入式的日志监视系统"},"look":{"n":"look","p":"/look","d":"显示文件中以指定字符串开头的任意行"},"losetup":{"n":"losetup","p":"/losetup","d":"设定与控制循环(loop)设备"},"lp":{"n":"lp","p":"/lp","d":"打印文件或修改排队的打印任务"},"lpadmin":{"n":"lpadmin","p":"/lpadmin","d":"配置CUPS套件中的打印机和类"},"lpc":{"n":"lpc","p":"/lpc","d":"命令行方式打印机控制程序"},"lpq":{"n":"lpq","p":"/lpq","d":"显示打印队列中的打印任务的状态信息"},"lpr":{"n":"lpr","p":"/lpr","d":"将文件发送给指定打印机进行打印"},"lprm":{"n":"lprm","p":"/lprm","d":"删除打印队列中的打印任务"},"lpstat":{"n":"lpstat","p":"/lpstat","d":"显示CUPS中打印机的状态信息"},"ls":{"n":"ls","p":"/ls","d":"显示目录内容列表"},"lsattr":{"n":"lsattr","p":"/lsattr","d":"查看文件的第二扩展文件系统属性"},"lsb_release":{"n":"lsb_release","p":"/lsb_release","d":"显示发行版本信息"},"lsblk":{"n":"lsblk","p":"/lsblk","d":"列出块设备信息"},"lscpu":{"n":"lscpu","p":"/lscpu","d":"显示有关CPU架构的信息"},"lsmod":{"n":"lsmod","p":"/lsmod","d":"显示已载入系统的模块"},"lsof":{"n":"lsof","p":"/lsof","d":"显示Linux系统当前已打开的所有文件列表 `lsof -p pid`"},"lspci":{"n":"lspci","p":"/lspci","d":"显示当前主机的所有PCI总线信息"},"lsusb":{"n":"lsusb","p":"/lsusb","d":"显示本机的USB设备列表信息"},"ltrace":{"n":"ltrace","p":"/ltrace","d":"用来跟踪进程调用库函数的情况"},"lvcreate":{"n":"lvcreate","p":"/lvcreate","d":"用于创建LVM的逻辑卷"},"lvdisplay":{"n":"lvdisplay","p":"/lvdisplay","d":"显示逻辑卷属性"},"lvextend":{"n":"lvextend","p":"/lvextend","d":"扩展逻辑卷空间"},"lvreduce":{"n":"lvreduce","p":"/lvreduce","d":"收缩逻辑卷空间"},"lvremove":{"n":"lvremove","p":"/lvremove","d":"删除指定LVM逻辑卷"},"lvresize":{"n":"lvresize","p":"/lvresize","d":"调整逻辑卷空间大小"},"lvscan":{"n":"lvscan","p":"/lvscan","d":"扫描逻辑卷"},"lynx":{"n":"lynx","p":"/lynx","d":"纯文本模式的网页浏览器"},"mail":{"n":"mail","p":"/mail","d":"命令行下发送和接收电子邮件"},"mailq":{"n":"mailq","p":"/mailq","d":"显示待发送的邮件队列"},"mailstat":{"n":"mailstat","p":"/mailstat","d":"显示到达的邮件状态"},"make":{"n":"make","p":"/make","d":"GNU的工程化编译工具"},"man":{"n":"man","p":"/man","d":"查看Linux中的指令帮助"},"mapfile":{"n":"mapfile","p":"/mapfile","d":"从标准输入读取行并赋值到数组。"},"md5sum":{"n":"md5sum","p":"/md5sum","d":"计算和校验文件报文摘要的工具程序"},"mesg":{"n":"mesg","p":"/mesg","d":"设置当前终端的写权限"},"mii-tool":{"n":"mii-tool","p":"/mii-tool","d":"配置网络设备协商方式的工具"},"mkbootdisk":{"n":"mkbootdisk","p":"/mkbootdisk","d":"可建立目前系统的启动盘"},"mkcert":{"n":"mkcert","p":"/mkcert","d":"用来生成自签证书的工具"},"mkdir":{"n":"mkdir","p":"/mkdir","d":"用来创建目录"},"mke2fs":{"n":"mke2fs","p":"/mke2fs","d":"创建磁盘分区上的“etc2/etc3”文件系统"},"mkfs":{"n":"mkfs","p":"/mkfs","d":"用于在设备上创建Linux文件系统"},"mkinitrd":{"n":"mkinitrd","p":"/mkinitrd","d":"建立要载入ramdisk的映像文件"},"mkisofs":{"n":"mkisofs","p":"/mkisofs","d":"建立ISO 9660映像文件"},"mknod":{"n":"mknod","p":"/mknod","d":"创建字符设备文件和块设备文件"},"mkswap":{"n":"mkswap","p":"/mkswap","d":"建立和设置SWAP交换分区"},"mktemp":{"n":"mktemp","p":"/mktemp","d":"创建临时文件供shell脚本使用"},"modetest":{"n":"modetest","p":"/modetest","d":"DRM/KMS驱动程序libdrm中的模式测试工具"},"modprobe":{"n":"modprobe","p":"/modprobe","d":"自动处理可载入模块"},"more":{"n":"more","p":"/more","d":"显示文件内容,每次显示一屏"},"mount":{"n":"mount","p":"/mount","d":"用于挂载Linux系统外的文件"},"mpstat":{"n":"mpstat","p":"/mpstat","d":"显示各个可用CPU的状态"},"mtools":{"n":"mtools","p":"/mtools","d":"显示mtools支持的指令"},"mtr":{"n":"mtr","p":"/mtr","d":"`mtr` 结合了 `traceroute` 和 `ping` 程序的功能,是一款简单的网络诊断工具"},"mv":{"n":"mv","p":"/mv","d":"用来对文件或目录重新命名"},"mysql":{"n":"mysql","p":"/mysql","d":"MySQL服务器客户端工具"},"mysqladmin":{"n":"mysqladmin","p":"/mysqladmin","d":"MySQL服务器管理客户端"},"mysqldump":{"n":"mysqldump","p":"/mysqldump","d":"MySQL数据库中备份工具"},"mysqlimport":{"n":"mysqlimport","p":"/mysqlimport","d":"为MySQL服务器用命令行方式导入数据"},"mysqlshow":{"n":"mysqlshow","p":"/mysqlshow","d":"显示MySQL中数据库相关信息"},"named-checkzone":{"n":"named-checkzone","p":"/named-checkzone","d":"使用named-checkzone命令可以进行区域文件有效性检查和转换,必须指定区域名称和区域文件名称"},"nano":{"n":"nano","p":"/nano","d":"字符终端文本编辑器"},"nc":{"n":"nc","p":"/nc","d":"nc是网络工具中的瑞士军刀"},"ncftp":{"n":"ncftp","p":"/ncftp","d":"是增强的的FTP工具"},"neofetch":{"n":"neofetch","p":"/neofetch","d":"显示带有发行徽标的系统信息的工具"},"nethogs":{"n":"nethogs","p":"/nethogs","d":"终端下的网络流量监控工具"},"netstat":{"n":"netstat","p":"/netstat","d":"查看Linux中网络系统状态信息"},"newusers":{"n":"newusers","p":"/newusers","d":"用于批处理的方式一次创建多个命令"},"nfsstat":{"n":"nfsstat","p":"/nfsstat","d":"列出NFS客户端和服务器的工作状态"},"ngrep":{"n":"ngrep","p":"/ngrep","d":"方便的数据包匹配和显示工具"},"nice":{"n":"nice","p":"/nice","d":"调整程序执行的优先权等级"},"nisdomainname":{"n":"nisdomainname","p":"/nisdomainname","d":"显示主机NIS的域名"},"nl":{"n":"nl","p":"/nl","d":"为每一个文件添加行号。"},"nm":{"n":"nm","p":"/nm","d":"显示二进制目标文件的符号表"},"nmap":{"n":"nmap","p":"/nmap","d":"网络探测和安全审核"},"nmcli":{"n":"nmcli","p":"/nmcli","d":"地址配置工具"},"nohup":{"n":"nohup","p":"/nohup","d":"将程序以忽略挂起信号的方式运行起来"},"nologin":{"n":"nologin","p":"/nologin","d":"拒绝用户登录系统"},"nproc":{"n":"nproc","p":"/nproc","d":"打印可用的处理器单元数量。"},"nslookup":{"n":"nslookup","p":"/nslookup","d":"查询域名DNS信息的工具"},"ntpdate":{"n":"ntpdate","p":"/ntpdate","d":"使用网络计时协议(NTP)设置日期和时间"},"ntsysv":{"n":"ntsysv","p":"/ntsysv","d":"集中管理系统的各种服务"},"objdump":{"n":"objdump","p":"/objdump","d":"显示二进制文件信息"},"od":{"n":"od","p":"/od","d":"输出文件的八进制、十六进制等格式编码的字节"},"openssl":{"n":"openssl","p":"/openssl","d":"强大的安全套接字层密码库"},"pacman":{"n":"pacman","p":"/pacman","d":"Arch Linux 系统及其衍生系统中默认使用的包管理器"},"parted":{"n":"parted","p":"/parted","d":"磁盘分区和分区大小调整工具"},"partprobe":{"n":"partprobe","p":"/partprobe","d":"不重启的情况下重读分区"},"passwd":{"n":"passwd","p":"/passwd","d":"用于让用户可以更改自己的密码"},"paste":{"n":"paste","p":"/paste","d":"将多个文件按列队列合并"},"patch":{"n":"patch","p":"/patch","d":"为开放源代码软件安装补丁程序"},"pathchk":{"n":"pathchk","p":"/pathchk","d":"检查文件中不可移植的部分"},"perl":{"n":"perl","p":"/perl","d":"perl语言解释器"},"pfctl":{"n":"pfctl","p":"/pfctl","d":"PF防火墙的配置命令"},"pgrep":{"n":"pgrep","p":"/pgrep","d":"根据用户给出的信息在当前运行进程中查找并列出符合条件的进程ID(PID)"},"php":{"n":"php","p":"/php","d":"PHP语言的命令行接口"},"pico":{"n":"pico","p":"/pico","d":"功能强大全屏幕的文本编辑器"},"pidof":{"n":"pidof","p":"/pidof","d":"查找指定名称的进程的进程号ID号"},"pidstat":{"n":"pidstat","p":"/pidstat","d":"监控进程的系统资源占用情况"},"pigz":{"n":"pigz","p":"/pigz","d":"可以用来解压缩文件,gzip的并行实现升级版"},"ping":{"n":"ping","p":"/ping","d":"测试主机之间网络的连通性(ipv4)"},"ping6":{"n":"ping6","p":"/ping6","d":"测试主机之间网络的连通性(ipv6)"},"pip":{"n":"pip","p":"/pip","d":"Python 编程语言中的包管理器,用于安装和管理第三方 Python 模块"},"pkexec":{"n":"pkexec","p":"/pkexec","d":"以其他用户身份执行命令"},"pkill":{"n":"pkill","p":"/pkill","d":"可以按照进程名杀死进程"},"pmap":{"n":"pmap","p":"/pmap","d":"报告进程的内存映射关系"},"popd":{"n":"popd","p":"/popd","d":"从目录堆栈中删除目录。"},"poweroff":{"n":"poweroff","p":"/poweroff","d":"关闭Linux系统,关闭记录会被写入到/var/log/wtmp日志文件中"},"ppp-off":{"n":"ppp-off","p":"/ppp-off","d":"关闭ppp连线"},"pr":{"n":"pr","p":"/pr","d":"将文本文件转换成适合打印的格式"},"printf":{"n":"printf","p":"/printf","d":"格式化并输出结果。"},"protoize":{"n":"protoize","p":"/protoize","d":"GNU-C代码转换为ANSI-C代码"},"prtstat":{"n":"prtstat","p":"/prtstat","d":"显示进程信息"},"ps":{"n":"ps","p":"/ps","d":"报告当前系统的进程状态"},"pssh":{"n":"pssh","p":"/pssh","d":"批量管理执行"},"pstack":{"n":"pstack","p":"/pstack","d":"显示每个进程的栈跟踪"},"pstree":{"n":"pstree","p":"/pstree","d":"以树状图的方式展现进程之间的派生关系"},"pushd":{"n":"pushd","p":"/pushd","d":"将目录添加到目录堆栈顶部。"},"pv":{"n":"pv","p":"/pv","d":"显示当前在命令行执行的命令的进度信息,管道查看器"},"pvchange":{"n":"pvchange","p":"/pvchange","d":"修改物理卷属性"},"pvck":{"n":"pvck","p":"/pvck","d":"检测物理卷的LVM元数据的一致性"},"pvcreate":{"n":"pvcreate","p":"/pvcreate","d":"将物理硬盘分区初始化为物理卷"},"pvdisplay":{"n":"pvdisplay","p":"/pvdisplay","d":"显示物理卷的属性"},"pvremove":{"n":"pvremove","p":"/pvremove","d":"删除一个存在的物理卷"},"pvs":{"n":"pvs","p":"/pvs","d":"输出物理卷信息报表"},"pvscan":{"n":"pvscan","p":"/pvscan","d":"扫描系统中所有硬盘的物理卷列表"},"pwck":{"n":"pwck","p":"/pwck","d":"用来验证系统认证文件内容和格式的完整性"},"pwconv":{"n":"pwconv","p":"/pwconv","d":"用来开启用户的投影密码"},"pwd":{"n":"pwd","p":"/pwd","d":"显示当前工作目录的绝对路径。"},"pwdx":{"n":"pwdx","p":"/pwdx","d":"用于显示指定进程的当前工作目录"},"pwunconv":{"n":"pwunconv","p":"/pwunconv","d":"用来关闭用户的投影密码"},"quota":{"n":"quota","p":"/quota","d":"显示磁盘已使用的空间与限制"},"quotacheck":{"n":"quotacheck","p":"/quotacheck","d":"检查磁盘的使用空间与限制"},"quotaoff":{"n":"quotaoff","p":"/quotaoff","d":"关闭Linux内核中指定文件系统的磁盘配额功能"},"quotaon":{"n":"quotaon","p":"/quotaon","d":"激活Linux内核中指定文件系统的磁盘配额功能"},"rcconf":{"n":"rcconf","p":"/rcconf","d":"Debian Linux下的运行等级服务配置工具"},"rcp":{"n":"rcp","p":"/rcp","d":"使在两台Linux主机之间的文件复制操作更简单"},"read":{"n":"read","p":"/read","d":"从键盘读取变量值"},"readelf":{"n":"readelf","p":"/readelf","d":"用于显示elf格式文件的信息"},"readonly":{"n":"readonly","p":"/readonly","d":"标记shell变量或函数为只读"},"reboot":{"n":"reboot","p":"/reboot","d":"重新启动正在运行的Linux操作系统"},"reject":{"n":"reject","p":"/reject","d":"指示打印系统拒绝发往指定目标打印机的打印任务"},"rename":{"n":"rename","p":"/rename","d":"用字符串替换的方式批量改变文件名"},"renice":{"n":"renice","p":"/renice","d":"修改正在运行的进程的调度优先级"},"reposync":{"n":"reposync","p":"/reposync","d":"同步yum存储库到本地目录"},"repquota":{"n":"repquota","p":"/repquota","d":"报表的格式输出磁盘空间限制的状态"},"resize":{"n":"resize","p":"/resize","d":"命令设置终端机视窗的大小"},"restore":{"n":"restore","p":"/restore","d":"所进行的操作和dump指令相反"},"restorecon":{"n":"restorecon","p":"/restorecon","d":"恢复文件的安全上下文"},"return":{"n":"return","p":"/return","d":"从函数中退出并返回数值。"},"rev":{"n":"rev","p":"/rev","d":"将文件内容以字符为单位反序输出"},"rexec":{"n":"rexec","p":"/rexec","d":"远程执行Linux系统下命令"},"rlogin":{"n":"rlogin","p":"/rlogin","d":"从当前终端登录到远程Linux主机"},"rm":{"n":"rm","p":"/rm","d":"用于删除给定的文件和目录"},"rmdir":{"n":"rmdir","p":"/rmdir","d":"用来删除空目录"},"rmmod":{"n":"rmmod","p":"/rmmod","d":"从运行的内核中移除指定的内核模块"},"route":{"n":"route","p":"/route","d":"显示并设置Linux中静态路由表"},"rpm":{"n":"rpm","p":"/rpm","d":"RPM软件包的管理工具"},"rpm2cpio":{"n":"rpm2cpio","p":"/rpm2cpio","d":"将RPM软件包转换为cpio格式的文件"},"rpmbuild":{"n":"rpmbuild","p":"/rpmbuild","d":"创建RPM的二进制软件包和源码软件包"},"rpmdb":{"n":"rpmdb","p":"/rpmdb","d":"初始化和重建RPM数据库"},"rpmquery":{"n":"rpmquery","p":"/rpmquery","d":"从RPM数据库中查询软件包信息"},"rpmsign":{"n":"rpmsign","p":"/rpmsign","d":"使用RPM软件包的签名管理工具"},"rpmverify":{"n":"rpmverify","p":"/rpmverify","d":"验证已安装的RPM软件包的正确性"},"rsh":{"n":"rsh","p":"/rsh","d":"连接远程主机并执行命令"},"rsync":{"n":"rsync","p":"/rsync","d":"远程数据同步工具"},"runlevel":{"n":"runlevel","p":"/runlevel","d":"打印当前Linux系统的运行等级"},"sar":{"n":"sar","p":"/sar","d":"系统运行状态统计工具"},"scp":{"n":"scp","p":"/scp","d":"加密的方式在本地主机和远程主机之间复制文件"},"screen":{"n":"screen","p":"/screen","d":"用于命令行终端切换"},"script":{"n":"script","p":"/script","d":"记录终端会话的所有操作"},"scriptreplay":{"n":"scriptreplay","p":"/scriptreplay","d":"重新播放终端会话的所有操作"},"sed":{"n":"sed","p":"/sed","d":"功能强大的流式文本编辑器"},"seinfo":{"n":"seinfo","p":"/seinfo","d":"查询SELinux的策略提供多少相关规则"},"semanage":{"n":"semanage","p":"/semanage","d":"默认目录的安全上下文查询与修改"},"sendmail":{"n":"sendmail","p":"/sendmail","d":"著名电子邮件服务器"},"seq":{"n":"seq","p":"/seq","d":"以指定增量从首数开始打印数字到尾数"},"service":{"n":"service","p":"/service","d":"控制系统服务的实用工具"},"sesearch":{"n":"sesearch","p":"/sesearch","d":"查询SELinux策略的规则详情"},"set":{"n":"set","p":"/set","d":"显示或设置shell特性及shell变量"},"setfacl":{"n":"setfacl","p":"/setfacl","d":"设置文件访问控制列表"},"setpci":{"n":"setpci","p":"/setpci","d":"查询和配置PCI设备的使用工具"},"setsebool":{"n":"setsebool","p":"/setsebool","d":"修改SElinux策略内各项规则的布尔值"},"setsid":{"n":"setsid","p":"/setsid","d":"在新的会话中运行程序"},"sftp-server":{"n":"sftp-server","p":"/sftp-server","d":"sftp协议的服务器端程序"},"sftp":{"n":"sftp","p":"/sftp","d":"交互式的文件传输程序"},"sh":{"n":"sh","p":"/sh","d":"shell命令解释器"},"sha256sum":{"n":"sha256sum","p":"/sha256sum","d":"用于计算文件的 SHA-256 哈希值"},"shift":{"n":"shift","p":"/shift","d":"移动位置参数。"},"shopt":{"n":"shopt","p":"/shopt","d":"显示和设置shell操作选项"},"showmount":{"n":"showmount","p":"/showmount","d":"显示NFS服务器加载的信息"},"shuf":{"n":"shuf","p":"/shuf","d":"产生随机的排列。"},"shutdown":{"n":"shutdown","p":"/shutdown","d":"用来执行系统关机的命令"},"skill":{"n":"skill","p":"/skill","d":"向选定的进程发送信号冻结进程"},"slabtop":{"n":"slabtop","p":"/slabtop","d":"实时显示内核slab内存缓存信息"},"sleep":{"n":"sleep","p":"/sleep","d":"将目前动作延迟一段时间"},"slocate":{"n":"slocate","p":"/slocate","d":"命令查找文件或目录"},"smartmontools":{"n":"smartmontools","p":"/smartmontools","d":"Smartmontools 是一种硬盘检测工具,通过控制和管理硬盘的SMART(Self Monitoring Analysis and Reporting Technology,自动检测分析及报告技术)技术来实现的"},"smbclient":{"n":"smbclient","p":"/smbclient","d":"交互方式访问samba服务器"},"smbpasswd":{"n":"smbpasswd","p":"/smbpasswd","d":"samba用户和密码管理工具"},"sort":{"n":"sort","p":"/sort","d":"对文本文件中所有行进行排序。"},"source":{"n":"source","p":"/source","d":"在当前Shell环境中从指定文件读取和执行命令。"},"speedtest-cli":{"n":"speedtest-cli","p":"/speedtest-cli","d":"命令行下测试服务器外网速度"},"spell":{"n":"spell","p":"/spell","d":"对文件进行拼写检查"},"split":{"n":"split","p":"/split","d":"分割任意大小的文件"},"squid":{"n":"squid","p":"/squid","d":"squid服务器守护进程"},"squidclient":{"n":"squidclient","p":"/squidclient","d":"squid服务器的客户端管理工具"},"ss":{"n":"ss","p":"/ss","d":"比 netstat 好用的socket统计信息,iproute2 包附带的另一个工具,允许你查询 socket 的有关统计信息"},"ssh-add":{"n":"ssh-add","p":"/ssh-add","d":"把专用密钥添加到ssh-agent的高速缓存中"},"ssh-agent":{"n":"ssh-agent","p":"/ssh-agent","d":"ssh密钥管理器"},"ssh-copy-id":{"n":"ssh-copy-id","p":"/ssh-copy-id","d":"把本地的ssh公钥文件安装到远程主机对应的账户下"},"ssh-keygen":{"n":"ssh-keygen","p":"/ssh-keygen","d":"为ssh生成、管理和转换认证密钥"},"ssh-keyscan":{"n":"ssh-keyscan","p":"/ssh-keyscan","d":"收集主机公钥的使用工具"},"ssh":{"n":"ssh","p":"/ssh","d":"openssh套件中的客户端连接工具"},"sshd":{"n":"sshd","p":"/sshd","d":"openssh软件套件中的服务器守护进程"},"sshpass":{"n":"sshpass","p":"/sshpass","d":"免交互 SSH 登录工具。"},"startx":{"n":"startx","p":"/startx","d":"用来启动X Window"},"stat":{"n":"stat","p":"/stat","d":"用于显示文件的状态信息"},"strace":{"n":"strace","p":"/strace","d":"跟踪系统调用和信号"},"strings":{"n":"strings","p":"/strings","d":"在对象文件或二进制文件中查找可打印的字符串"},"stty":{"n":"stty","p":"/stty","d":"修改终端命令行的相关设置"},"su":{"n":"su","p":"/su","d":"用于切换当前用户身份到其他用户身份"},"sudo":{"n":"sudo","p":"/sudo","d":"以其他身份来执行命令"},"sum":{"n":"sum","p":"/sum","d":"计算文件的校验码和显示块数"},"supervisord":{"n":"supervisord","p":"/supervisord","d":"配置后台服务/常驻进程的进程管家工具"},"suspend":{"n":"suspend","p":"/suspend","d":"挂起shell的执行。"},"swapoff":{"n":"swapoff","p":"/swapoff","d":"关闭指定的交换空间"},"swapon":{"n":"swapon","p":"/swapon","d":"激活Linux系统中交换空间"},"sync":{"n":"sync","p":"/sync","d":"用于强制被改变的内容立刻写入磁盘"},"sysctl":{"n":"sysctl","p":"/sysctl","d":"时动态地修改内核的运行参数"},"syslog":{"n":"syslog","p":"/syslog","d":"系统默认的日志守护进程"},"systemctl":{"n":"systemctl","p":"/systemctl","d":"系统服务管理器指令"},"systool":{"n":"systool","p":"/systool","d":"显示基于总线、类和拓扑显示系统中设备的信息"},"tac":{"n":"tac","p":"/tac","d":"连接多个文件并以行为单位反向打印到标准输出。"},"tail":{"n":"tail","p":"/tail","d":"在屏幕上显示指定文件的末尾若干行"},"tailf":{"n":"tailf","p":"/tailf","d":"在屏幕上显示指定文件的末尾若干行内容,通常用于日志文件的跟踪输出"},"talk":{"n":"talk","p":"/talk","d":"让用户和其他用户聊天"},"tar":{"n":"tar","p":"/tar","d":"将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。"},"tcpdump":{"n":"tcpdump","p":"/tcpdump","d":"一款sniffer工具,是Linux上的抓包工具,嗅探器"},"tcpreplay":{"n":"tcpreplay","p":"/tcpreplay","d":"将保存在 PCAP 文件包重新发送,用于性能或者功能测试"},"tee":{"n":"tee","p":"/tee","d":"从标准输入读取数据并重定向到标准输出和文件。"},"telinit":{"n":"telinit","p":"/telinit","d":"切换当前正在运行系统的运行等级"},"telnet":{"n":"telnet","p":"/telnet","d":"登录远程主机和管理(测试ip端口是否连通)"},"tempfile":{"n":"tempfile","p":"/tempfile","d":"shell中给临时文件命名"},"test":{"n":"test","p":"/test","d":"执行条件表达式。"},"tftp":{"n":"tftp","p":"/tftp","d":"在本机和tftp服务器之间使用TFTP协议传输文件"},"time":{"n":"time","p":"/time","d":"统计给定命令所花费的总时间"},"timedatectl":{"n":"timedatectl","p":"/timedatectl","d":"用于在 Linux 中设置或查询系统时间、日期和时区等配置。"},"times":{"n":"times","p":"/times","d":"显示进程累计时间。"},"tload":{"n":"tload","p":"/tload","d":"显示系统负载状况"},"tmux":{"n":"tmux","p":"/tmux","d":"Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权"},"top":{"n":"top","p":"/top","d":"显示或管理执行中的程序"},"touch":{"n":"touch","p":"/touch","d":"创建新的空文件"},"tput":{"n":"tput","p":"/tput","d":"通过terminfo数据库对终端会话进行初始化和操作"},"tr":{"n":"tr","p":"/tr","d":"将字符进行替换压缩和删除"},"tracepath":{"n":"tracepath","p":"/tracepath","d":"追踪目的主机经过的路由信息"},"traceroute":{"n":"traceroute","p":"/traceroute","d":"显示数据包到主机间的路径"},"trap":{"n":"trap","p":"/trap","d":"捕捉信号和其他事件并执行命令。"},"tree":{"n":"tree","p":"/tree","d":"树状图列出目录的内容"},"true":{"n":"true","p":"/true","d":"返回状态为成功。"},"tty":{"n":"tty","p":"/tty","d":"显示连接到当前标准输入的终端设备文件名"},"type":{"n":"type","p":"/type","d":"显示指定命令的类型。"},"ulimit":{"n":"ulimit","p":"/ulimit","d":"控制shell程序的资源"},"umask":{"n":"umask","p":"/umask","d":"显示或设置创建文件的权限掩码。"},"umount":{"n":"umount","p":"/umount","d":"用于卸载已经加载的文件系统"},"unalias":{"n":"unalias","p":"/unalias","d":"删除由alias设置的别名"},"uname":{"n":"uname","p":"/uname","d":"打印系统信息。"},"unarj":{"n":"unarj","p":"/unarj","d":"解压缩由arj命令创建的压缩包"},"uncompress":{"n":"uncompress","p":"/uncompress","d":"用来解压.Z文件"},"unexpand":{"n":"unexpand","p":"/unexpand","d":"将文件的空白字符转换为制表符"},"uniq":{"n":"uniq","p":"/uniq","d":"显示或忽略重复的行。"},"unlink":{"n":"unlink","p":"/unlink","d":"系统调用函数unlink去删除指定的文件"},"unprotoize":{"n":"unprotoize","p":"/unprotoize","d":"删除C语言源代码文件中的函数原型"},"unrar":{"n":"unrar","p":"/unrar","d":"解压rar文件命令,从 rar 压缩包中提取文件"},"unset":{"n":"unset","p":"/unset","d":"删除指定的shell变量或函数。"},"unzip":{"n":"unzip","p":"/unzip","d":"用于解压缩由zip命令压缩的压缩包"},"updatedb":{"n":"updatedb","p":"/updatedb","d":"创建或更新slocate命令所必需的数据库文件"},"uptime":{"n":"uptime","p":"/uptime","d":"查看Linux系统负载信息"},"useradd":{"n":"useradd","p":"/useradd","d":"创建的新的系统用户"},"userdel":{"n":"userdel","p":"/userdel","d":"用于删除给定的用户以及与用户相关的文件"},"usermod":{"n":"usermod","p":"/usermod","d":"用于修改用户的基本信息"},"usernetctl":{"n":"usernetctl","p":"/usernetctl","d":"被允许时操作指定的网络接口"},"users":{"n":"users","p":"/users","d":"打印当前主机所有登陆用户的名称。"},"uucico":{"n":"uucico","p":"/uucico","d":"UUCP文件传输服务程序"},"uupick":{"n":"uupick","p":"/uupick","d":"命令处理传送进来的文件"},"uuto":{"n":"uuto","p":"/uuto","d":"将文件传送到远端的UUCP主机"},"vdfuse":{"n":"vdfuse","p":"/vdfuse","d":"VirtualBox软件挂载VDI分区文件工具"},"vgchange":{"n":"vgchange","p":"/vgchange","d":"修改卷组属性"},"vgconvert":{"n":"vgconvert","p":"/vgconvert","d":"转换卷组元数据格式"},"vgcreate":{"n":"vgcreate","p":"/vgcreate","d":"用于创建LVM卷组"},"vgdisplay":{"n":"vgdisplay","p":"/vgdisplay","d":"显示LVM卷组的信息"},"vgextend":{"n":"vgextend","p":"/vgextend","d":"向卷组中添加物理卷"},"vgreduce":{"n":"vgreduce","p":"/vgreduce","d":"从卷组中删除物理卷"},"vgremove":{"n":"vgremove","p":"/vgremove","d":"用于用户删除LVM卷组"},"vgrename":{"n":"vgrename","p":"/vgrename","d":"使用vgrename命令可以重命名卷组的名称"},"vgscan":{"n":"vgscan","p":"/vgscan","d":"扫描并显示系统中的卷组"},"vi":{"n":"vi","p":"/vi","d":"功能强大的纯文本编辑器"},"vmstat":{"n":"vmstat","p":"/vmstat","d":"显示虚拟内存状态"},"volname":{"n":"volname","p":"/volname","d":"显示指定的ISO-9660格式的设备的卷名称"},"w":{"n":"w","p":"/w","d":"显示目前登入系统的用户信息"},"wait":{"n":"wait","p":"/wait","d":"等待进程执行完后返回"},"wall":{"n":"wall","p":"/wall","d":"向系统当前所有打开的终端上输出信息"},"watch":{"n":"watch","p":"/watch","d":"可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令"},"wc":{"n":"wc","p":"/wc","d":"统计文件的字节数、字数、行数"},"wget":{"n":"wget","p":"/wget","d":"Linux系统下载文件工具"},"whatis":{"n":"whatis","p":"/whatis","d":"查询一个命令执行什么功能"},"whereis":{"n":"whereis","p":"/whereis","d":"查找二进制程序、代码等相关文件路径"},"which":{"n":"which","p":"/which","d":"查找并显示给定命令的绝对路径"},"who":{"n":"who","p":"/who","d":"显示当前所有登陆用户的信息。"},"whoami":{"n":"whoami","p":"/whoami","d":"打印当前有效的用户ID对应的名称"},"write":{"n":"write","p":"/write","d":"向指定登录用户终端上发送信息"},"xargs":{"n":"xargs","p":"/xargs","d":"给其他命令传递参数的一个过滤器"},"xauth":{"n":"xauth","p":"/xauth","d":"显示和编辑被用于连接X服务器的认证信息"},"xclip":{"n":"xclip","p":"/xclip","d":"管理 X 粘贴板"},"xhost":{"n":"xhost","p":"/xhost","d":"制哪些X客户端能够在X服务器上显示"},"xinit":{"n":"xinit","p":"/xinit","d":"是Linux下X-Window系统的初始化程序"},"xlsatoms":{"n":"xlsatoms","p":"/xlsatoms","d":"列出X服务器内部所有定义的原子成分"},"xlsclients":{"n":"xlsclients","p":"/xlsclients","d":"列出显示器中的客户端应用程序"},"xlsfonts":{"n":"xlsfonts","p":"/xlsfonts","d":"列出X Server使用的字体"},"xrandr":{"n":"xrandr","p":"/xrandr","d":"X 窗口系统配置管理工具"},"xset":{"n":"xset","p":"/xset","d":"设置X-Window系统中的用户爱好的实用工具"},"xz":{"n":"xz","p":"/xz","d":"POSIX 平台开发具有高压缩率的工具"},"yes":{"n":"yes","p":"/yes","d":"重复打印指定字符串"},"ypdomainname":{"n":"ypdomainname","p":"/ypdomainname","d":"显示主机的NIS的域名"},"yum":{"n":"yum","p":"/yum","d":"基于RPM的软件包管理器"},"zcat":{"n":"zcat","p":"/zcat","d":"显示压缩包中文件的内容"},"zfore":{"n":"zfore","p":"/zfore","d":"强制为gzip格式的压缩文件添加.gz后缀"},"zip":{"n":"zip","p":"/zip","d":"可以用来解压缩文件"},"zipinfo":{"n":"zipinfo","p":"/zipinfo","d":"用来列出压缩文件信息"},"zipsplit":{"n":"zipsplit","p":"/zipsplit","d":"将较大的zip压缩包分割成各个较小的压缩包"},"znew":{"n":"znew","p":"/znew","d":"将.Z压缩包重新转化为gzip命令压缩的.gz压缩包"}} \ No newline at end of file From 14ce75c9c8ca717e17628647bdc02679f3c051a3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 3 Sep 2024 05:35:50 +0000 Subject: [PATCH 511/566] doc: update README.md. --- README.md | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index e964f2474f5..0d517ea15ec 100644 --- a/README.md +++ b/README.md @@ -266,49 +266,49 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. L 圆头圆脑 clay-wangzhi -Glett 烟草的香味 -Jayin Tang +Glett 丛林意志 -Zijing Zhang +Jayin Tang Fubin Zhang __FresHmaN -dulltackle -ernest +Zijing Zhang 谈笑风生间 +ernest +dulltackle +zyy2477 rgshare loverainye +James Wang +Lnkstls lavaicer SteveLauC -Lnkstls -James Wang -Qliangw Wang Yujia alfred +Qliangw 沙漠之子 -zyy2477 Shell xhal VVatt gggwvg -BingCoke -Ein Verne -FunKeen -Pan, Wen-Ming -RichardLCD -Shan Chenyu -Xingwen Zhang -Xrtero -YEUNGCHIE Dazhuangw Alterem YH -jcdj666 -jqz3.tech -juemuren4449 -kassadin -kid1412621 +YEUNGCHIE +Xrtero +Xingwen Zhang +Shan Chenyu +RichardLCD +Pan, Wen-Ming +FunKeen +BingCoke +Ein Verne leo +kid1412621 +kassadin +juemuren4449 +jqz3.tech +jcdj666 lewis1573 linuxwd Ricardowang From 8555c10fb16118fa10cfaf4f3a483bb2e8b4bda4 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 3 Sep 2024 05:35:51 +0000 Subject: [PATCH 512/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 46 +++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index d6c1e7bb095..2eac794cb6d 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -11,49 +11,49 @@ L 圆头圆脑 clay-wangzhi -Glett 烟草的香味 -Jayin Tang +Glett 丛林意志 -Zijing Zhang +Jayin Tang Fubin Zhang __FresHmaN -dulltackle -ernest +Zijing Zhang 谈笑风生间 +ernest +dulltackle +zyy2477 rgshare loverainye +James Wang +Lnkstls lavaicer SteveLauC -Lnkstls -James Wang -Qliangw Wang Yujia alfred +Qliangw 沙漠之子 -zyy2477 Shell xhal VVatt gggwvg -BingCoke -Ein Verne -FunKeen -Pan, Wen-Ming -RichardLCD -Shan Chenyu -Xingwen Zhang -Xrtero -YEUNGCHIE Dazhuangw Alterem YH -jcdj666 -jqz3.tech -juemuren4449 -kassadin -kid1412621 +YEUNGCHIE +Xrtero +Xingwen Zhang +Shan Chenyu +RichardLCD +Pan, Wen-Ming +FunKeen +BingCoke +Ein Verne leo +kid1412621 +kassadin +juemuren4449 +jqz3.tech +jcdj666 lewis1573 linuxwd Ricardowang From 424972567368f0518da79aac5c449afe3e645ffe Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Tue, 3 Sep 2024 13:44:41 +0800 Subject: [PATCH 513/566] released v1.19.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c52d9644e3a..b4051540693 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "linux-command", - "version": "1.18.0", + "version": "1.19.0", "description": "Linux Command", "homepage": "https://jaywcjlove.github.io/linux-command/", "main": "dist/data.json", From 16c4a08fdee723e07ad6e9cb751a8198580e6b13 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Tue, 3 Sep 2024 15:21:42 +0800 Subject: [PATCH 514/566] fix(docset): resolve error during docset file generation. #601 --- scripts/dash.mjs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/dash.mjs b/scripts/dash.mjs index fc518caa074..fc62b40f9b5 100644 --- a/scripts/dash.mjs +++ b/scripts/dash.mjs @@ -118,7 +118,9 @@ async function build() { console.info('compressing tgz'); // https://github.com/node-modules/compressing/issues/42 建议最好休眠15s,等待其余资源复制完毕 - spawn("sleep", ['15']) + // 确保所有操作完成后再压缩 + await new Promise(resolve => setTimeout(resolve, 30000)); // 增加到 30 秒 + const outputPath = pathJoin(process.cwd(), '.deploy', 'linux-command.docset.tgz'); await tgz.compressDir(DOCSET_DIR, outputPath); } From 3c6f616c5ffd74a5a74ef25733da300d9deb6242 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Tue, 3 Sep 2024 15:22:47 +0800 Subject: [PATCH 515/566] released v1.19.1 #601 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b4051540693..bceaab71802 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "linux-command", - "version": "1.19.0", + "version": "1.19.1", "description": "Linux Command", "homepage": "https://jaywcjlove.github.io/linux-command/", "main": "dist/data.json", From 0f186819584d47074b67d3981a118c76aaddbdf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 15:24:22 +0800 Subject: [PATCH 516/566] chore(deps-dev): bump sqlite3 from 5.0.8 to 5.1.5 (#528) Bumps [sqlite3](https://github.com/TryGhost/node-sqlite3) from 5.0.8 to 5.1.5. - [Release notes](https://github.com/TryGhost/node-sqlite3/releases) - [Commits](https://github.com/TryGhost/node-sqlite3/compare/v5.0.8...v5.1.5) --- updated-dependencies: - dependency-name: sqlite3 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index bceaab71802..4045d316e8b 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "fs-extra": "~10.1.0", "markdown-to-html-cli": "~4.0.0", "sitemap-generator": "~8.5.1", - "sqlite3": "5.0.8", + "sqlite3": "5.1.5", "stylus": "~0.59.0", "uglify-js": "~3.17.0" }, From 7851b27f46d126cb59bb7bfd538e09e293e7edfc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 15:24:48 +0800 Subject: [PATCH 517/566] chore(deps): update dependency uglify-js to ~3.19.0 (#583) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4045d316e8b..219e8a72373 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "sitemap-generator": "~8.5.1", "sqlite3": "5.1.5", "stylus": "~0.59.0", - "uglify-js": "~3.17.0" + "uglify-js": "~3.19.0" }, "engines": { "node": ">=16.0.0" From 27374284c18165a06c44a59ad3dbe2663b849dc5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 3 Sep 2024 15:34:13 +0800 Subject: [PATCH 518/566] chore(deps): update dependency stylus to ~0.63.0 (#522) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 219e8a72373..8bba58fe3ac 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "markdown-to-html-cli": "~4.0.0", "sitemap-generator": "~8.5.1", "sqlite3": "5.1.5", - "stylus": "~0.59.0", + "stylus": "~0.63.0", "uglify-js": "~3.19.0" }, "engines": { From cb46889491b405aef4704741e2a2e84634ffcda4 Mon Sep 17 00:00:00 2001 From: duzhuoshanwai <65448395+duzhuoshanwai@users.noreply.github.com> Date: Thu, 12 Sep 2024 21:36:11 +0800 Subject: [PATCH 519/566] doc: update docker.md (#603) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加新的安装方式 --- command/docker.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/command/docker.md b/command/docker.md index 7245dff9fde..5e293866f5e 100644 --- a/command/docker.md +++ b/command/docker.md @@ -37,6 +37,17 @@ sudo systemctl start docker ``` +```bash +# Docker官方提供的快速安装脚本 https://github.com/docker/docker-install +# 不建议在生产环境中使用 +curl -fsSL https://get.docker.com -o get-docker.sh +sudo sh ./get-docker.sh --dry-run + +# 使用systemctl设置开机启动 +sudo systemctl enable docker.service +sudo systemctl enable containerd.service +``` + ## 语法 ```shell From 6321537d9ffcf4300075c3ff58d19f7418199dd8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 12 Sep 2024 13:36:43 +0000 Subject: [PATCH 520/566] doc: update README.md. --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 0d517ea15ec..029e2a69740 100644 --- a/README.md +++ b/README.md @@ -266,13 +266,13 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. L 圆头圆脑 clay-wangzhi -烟草的香味 Glett -丛林意志 +烟草的香味 Jayin Tang +丛林意志 +Zijing Zhang Fubin Zhang __FresHmaN -Zijing Zhang 谈笑风生间 ernest dulltackle @@ -313,7 +313,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. linuxwd Ricardowang cole -myliwenbo +dufu miniwater noodles2hg nsnans From c50c19a78f070c420d6d2bd57333d9ce563df0b5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 12 Sep 2024 13:36:44 +0000 Subject: [PATCH 521/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 2eac794cb6d..58eb30f9304 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -11,13 +11,13 @@ L 圆头圆脑 clay-wangzhi -烟草的香味 Glett -丛林意志 +烟草的香味 Jayin Tang +丛林意志 +Zijing Zhang Fubin Zhang __FresHmaN -Zijing Zhang 谈笑风生间 ernest dulltackle @@ -58,7 +58,7 @@ linuxwd Ricardowang cole -myliwenbo +dufu miniwater noodles2hg nsnans From f4645362823b263cca816edd9854539afab83c26 Mon Sep 17 00:00:00 2001 From: will Date: Fri, 20 Sep 2024 13:19:35 +0800 Subject: [PATCH 522/566] chore: Add kubernetes deployment (#605) * add kubernetes deployment * add kubernetes deployment README * update deployment README * update deployment yaml --- deploy/yamls/README.md | 64 +++++++++++++++++++++++++++++++++ deploy/yamls/linux-command.yaml | 50 ++++++++++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 deploy/yamls/README.md create mode 100644 deploy/yamls/linux-command.yaml diff --git a/deploy/yamls/README.md b/deploy/yamls/README.md new file mode 100644 index 00000000000..f7fe3316f70 --- /dev/null +++ b/deploy/yamls/README.md @@ -0,0 +1,64 @@ +# 快速入门指南 + +本指南旨在帮助您在 Kubernetes 中部署基于 `wcjiang/linux-command` 镜像的 `linux-command` 应用。该应用提供了一套 `Deployment`,并通过 `Service` 对外暴露服务端口。 + +## 前提条件 + +- 已安装并配置好的 Kubernetes 集群 +- 安装并配置好的 `kubectl`,并连接至你的 Kubernetes 集群 + +## 安装步骤 + +我们将使用此存储库中的`kubectl`应用 YAML 文件,该文件将安装 `linux-command` 应用。 + +```bash +$ kubectl apply -f https://raw.githubusercontent.com/jaywcjlove/linux-command/master/deploy/yamls/linux-command.yaml +``` + +检查 `Deployment` 状态: + +```bash +$ kubectl get deployments -n linux-command +NAME READY UP-TO-DATE AVAILABLE AGE +linux-command 1/1 1 1 17m +``` + +你可以查看 `Pod` 的状态以确保其正常运行: + +```bash +$ kubectl get pods -n linux-command +NAME READY STATUS RESTARTS AGE +linux-command-fff454654-427zp 1/1 Running 0 12m +``` + +验证 `Service` 是否成功创建并获取暴露的端口: + +``` +$ kubectl get services -n linux-command +NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE +linux-command-service NodePort 10.96.2.225 9665:30204/TCP 18m +``` + +## 访问应用 + +通过获取 `NodePort` 的端口来访问应用。以下是获取 `NodePort` 服务信息的命令: + +``` +$ kubectl get svc linux-command-service -n linux-command +``` + +根据输出,使用 `EXTERNAL-IP:PORT` 访问服务。例如: + +``` +http://: +``` + +## 卸载应用 + +如果需要删除已部署的资源,可以按以下顺序操作: + +``` +kubectl delete -f linux-command.yaml +``` + +这将会清理所有创建的 Kubernetes 资源。 diff --git a/deploy/yamls/linux-command.yaml b/deploy/yamls/linux-command.yaml new file mode 100644 index 00000000000..bc7fd6abb44 --- /dev/null +++ b/deploy/yamls/linux-command.yaml @@ -0,0 +1,50 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: linux-command +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: linux-command + namespace: linux-command + labels: + app: linux-command +spec: + replicas: 1 + selector: + matchLabels: + app: linux-command + template: + metadata: + labels: + app: linux-command + spec: + containers: + - name: linux-command-container + image: wcjiang/linux-command:latest + imagePullPolicy: IfNotPresent + ports: + - containerPort: 3000 + resources: + requests: + cpu: "100m" + memory: "50Mi" + limits: + cpu: "100m" + memory: "50Mi" +--- +apiVersion: v1 +kind: Service +metadata: + name: linux-command-service + namespace: linux-command +spec: + selector: + app: linux-command + ports: + - protocol: TCP + port: 9665 + targetPort: 3000 + type: NodePort From 8e072074ca2f4ff33955b77216ee2185d87354d1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 05:20:07 +0000 Subject: [PATCH 523/566] doc: update README.md. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 029e2a69740..957067ae295 100644 --- a/README.md +++ b/README.md @@ -326,12 +326,12 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. gedune gang.yang ecjtusbs +duzhuoshanwai dongpohezui Deny dayday cxalc Forever121 -c2ch Yidan Wang Wendy May 远方 @@ -364,6 +364,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. sfwwslm rexlin600 oliver +c2ch MinsonLee Marnm mwei From 3281700170ba24f83467bd89d7fea083b714f20c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 05:20:08 +0000 Subject: [PATCH 524/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 58eb30f9304..ef252c950f0 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -71,12 +71,12 @@ gedune gang.yang ecjtusbs +duzhuoshanwai dongpohezui Deny dayday cxalc Forever121 -c2ch Yidan Wang Wendy May 远方 @@ -109,6 +109,7 @@ sfwwslm rexlin600 oliver +c2ch MinsonLee Marnm mwei From d85be58c782bde0f94b3fb4c8e527d9d1dc6d9b3 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Tue, 3 Sep 2024 18:53:00 +0800 Subject: [PATCH 525/566] doc: update command/iostat.md --- command/iostat.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/command/iostat.md b/command/iostat.md index 2c41ac779a5..b90088c5248 100644 --- a/command/iostat.md +++ b/command/iostat.md @@ -1,7 +1,12 @@ iostat === -iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。 +监视系统输入输出设备和CPU的使用情况 + +## 补充说明 + +**iostat命令** 被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。 + iowait 指在一个采样周期内有百分之几的时间是属于以下情况:CPU处于空闲状态并且至少有一个未完成的磁盘IO请求。 ## 安装 iostat From 50b5782734189b8ad8990b5b56f97153e196577c Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Fri, 20 Sep 2024 13:23:05 +0800 Subject: [PATCH 526/566] chore: rename deploy/yamls -> k8s #605 --- {deploy/yamls => k8s}/README.md | 0 {deploy/yamls => k8s}/linux-command.yaml | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename {deploy/yamls => k8s}/README.md (100%) rename {deploy/yamls => k8s}/linux-command.yaml (100%) diff --git a/deploy/yamls/README.md b/k8s/README.md similarity index 100% rename from deploy/yamls/README.md rename to k8s/README.md diff --git a/deploy/yamls/linux-command.yaml b/k8s/linux-command.yaml similarity index 100% rename from deploy/yamls/linux-command.yaml rename to k8s/linux-command.yaml From d82ca52f067ad06579902d3a3a18e44159d6961c Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Fri, 20 Sep 2024 19:21:04 +0800 Subject: [PATCH 527/566] doc: update k8s/README.md --- k8s/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/k8s/README.md b/k8s/README.md index f7fe3316f70..146392149aa 100644 --- a/k8s/README.md +++ b/k8s/README.md @@ -12,7 +12,7 @@ 我们将使用此存储库中的`kubectl`应用 YAML 文件,该文件将安装 `linux-command` 应用。 ```bash -$ kubectl apply -f https://raw.githubusercontent.com/jaywcjlove/linux-command/master/deploy/yamls/linux-command.yaml +$ kubectl apply -f https://raw.githubusercontent.com/jaywcjlove/linux-command/refs/heads/master/k8s/linux-command.yaml ``` 检查 `Deployment` 状态: From 9870dba05f36cb9656073cf58085376ba8030a42 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 11:22:02 +0000 Subject: [PATCH 528/566] doc: update README.md. --- README.md | 107 +++++++++++++++++++++++++++--------------------------- 1 file changed, 54 insertions(+), 53 deletions(-) diff --git a/README.md b/README.md index 957067ae295..e2995e3f3b2 100644 --- a/README.md +++ b/README.md @@ -273,42 +273,41 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Zijing Zhang Fubin Zhang __FresHmaN -谈笑风生间 -ernest dulltackle +ernest +谈笑风生间 zyy2477 rgshare loverainye -James Wang -Lnkstls lavaicer SteveLauC +Lnkstls +James Wang +Qliangw Wang Yujia alfred -Qliangw 沙漠之子 Shell xhal VVatt gggwvg +BingCoke +Ein Verne +FunKeen +Pan, Wen-Ming +RichardLCD +Shan Chenyu +Xingwen Zhang +Xrtero +YEUNGCHIE Dazhuangw Alterem YH -YEUNGCHIE -Xrtero -Xingwen Zhang -Shan Chenyu -RichardLCD -Pan, Wen-Ming -FunKeen -BingCoke -Ein Verne -leo -kid1412621 -kassadin -juemuren4449 jqz3.tech -jcdj666 +juemuren4449 +kassadin +kid1412621 +leo lewis1573 linuxwd Ricardowang @@ -317,6 +316,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. miniwater noodles2hg nsnans +oliver +jcdj666 hululu1068 huangyao hotdogc1017 @@ -331,40 +332,39 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Deny dayday cxalc -Forever121 -Yidan Wang -Wendy May -远方 -谢民皆 -Kyofin -老犁 -继刚 -移动的红烧肉 -极简XksA -ReZero -Loofra -Wei Xu -尘埃 -孤城落寞 -七朔 +Mystic zyimm -zuixin369 -zoomdong -zodiac -zjlovezj -yanyx -Lingfeng Wang -weibk -UniqueDing -tutianyu101 -tangke -snovey -shuangcui -shc -sfwwslm +七朔 +孤城落寞 +尘埃 +Wei Xu +Loofra +ReZero +极简XksA +移动的红烧肉 +继刚 +老犁 +Kyofin +谢民皆 +远方 +Wendy May +Yidan Wang rexlin600 -oliver -c2ch +sfwwslm +shc +shuangcui +snovey +tangke +tutianyu101 +UniqueDing +weibk +will +Lingfeng Wang +yanyx +zjlovezj +zodiac +zoomdong +zuixin369 MinsonLee Marnm mwei @@ -395,6 +395,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 +Forever121 +c2ch brinkqiang bell azureology @@ -423,8 +425,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rining Wu Ray Yee QinShower -Q.Ben Zheng -Mystic +Q.Ben Zheng 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From f6a17c0c577ea708d802e963c7c9ab3ae40e5a09 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 11:22:03 +0000 Subject: [PATCH 529/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 107 +++++++++++++++++++------------------- 1 file changed, 54 insertions(+), 53 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index ef252c950f0..80deae78548 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -18,42 +18,41 @@ Zijing Zhang Fubin Zhang __FresHmaN -谈笑风生间 -ernest dulltackle +ernest +谈笑风生间 zyy2477 rgshare loverainye -James Wang -Lnkstls lavaicer SteveLauC +Lnkstls +James Wang +Qliangw Wang Yujia alfred -Qliangw 沙漠之子 Shell xhal VVatt gggwvg +BingCoke +Ein Verne +FunKeen +Pan, Wen-Ming +RichardLCD +Shan Chenyu +Xingwen Zhang +Xrtero +YEUNGCHIE Dazhuangw Alterem YH -YEUNGCHIE -Xrtero -Xingwen Zhang -Shan Chenyu -RichardLCD -Pan, Wen-Ming -FunKeen -BingCoke -Ein Verne -leo -kid1412621 -kassadin -juemuren4449 jqz3.tech -jcdj666 +juemuren4449 +kassadin +kid1412621 +leo lewis1573 linuxwd Ricardowang @@ -62,6 +61,8 @@ miniwater noodles2hg nsnans +oliver +jcdj666 hululu1068 huangyao hotdogc1017 @@ -76,40 +77,39 @@ Deny dayday cxalc -Forever121 -Yidan Wang -Wendy May -远方 -谢民皆 -Kyofin -老犁 -继刚 -移动的红烧肉 -极简XksA -ReZero -Loofra -Wei Xu -尘埃 -孤城落寞 -七朔 +Mystic zyimm -zuixin369 -zoomdong -zodiac -zjlovezj -yanyx -Lingfeng Wang -weibk -UniqueDing -tutianyu101 -tangke -snovey -shuangcui -shc -sfwwslm +七朔 +孤城落寞 +尘埃 +Wei Xu +Loofra +ReZero +极简XksA +移动的红烧肉 +继刚 +老犁 +Kyofin +谢民皆 +远方 +Wendy May +Yidan Wang rexlin600 -oliver -c2ch +sfwwslm +shc +shuangcui +snovey +tangke +tutianyu101 +UniqueDing +weibk +will +Lingfeng Wang +yanyx +zjlovezj +zodiac +zoomdong +zuixin369 MinsonLee Marnm mwei @@ -140,6 +140,8 @@ Azroy Alan 0x_000 +Forever121 +c2ch brinkqiang bell azureology @@ -168,8 +170,7 @@ Rining Wu Ray Yee QinShower -Q.Ben Zheng -Mystic +Q.Ben Zheng

数据来源于 GitHub Contributors,使用action-contributors创建。 From 686f4452a14fd4fb02cf00dd0838d6b01004a195 Mon Sep 17 00:00:00 2001 From: will Date: Fri, 20 Sep 2024 19:25:45 +0800 Subject: [PATCH 530/566] chore: add helm charts (#606) * add helm charts * update README --- deploy/helm/charts/linux-command/.helmignore | 23 +++++++ deploy/helm/charts/linux-command/Chart.yaml | 21 +++++++ deploy/helm/charts/linux-command/README.md | 44 +++++++++++++ .../linux-command/templates/_helpers.tpl | 62 +++++++++++++++++++ .../linux-command/templates/deployment.yaml | 32 ++++++++++ .../linux-command/templates/service.yaml | 13 ++++ deploy/helm/charts/linux-command/values.yaml | 20 ++++++ 7 files changed, 215 insertions(+) create mode 100644 deploy/helm/charts/linux-command/.helmignore create mode 100644 deploy/helm/charts/linux-command/Chart.yaml create mode 100644 deploy/helm/charts/linux-command/README.md create mode 100644 deploy/helm/charts/linux-command/templates/_helpers.tpl create mode 100644 deploy/helm/charts/linux-command/templates/deployment.yaml create mode 100644 deploy/helm/charts/linux-command/templates/service.yaml create mode 100644 deploy/helm/charts/linux-command/values.yaml diff --git a/deploy/helm/charts/linux-command/.helmignore b/deploy/helm/charts/linux-command/.helmignore new file mode 100644 index 00000000000..0e8a0eb36f4 --- /dev/null +++ b/deploy/helm/charts/linux-command/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/deploy/helm/charts/linux-command/Chart.yaml b/deploy/helm/charts/linux-command/Chart.yaml new file mode 100644 index 00000000000..62db357f2ec --- /dev/null +++ b/deploy/helm/charts/linux-command/Chart.yaml @@ -0,0 +1,21 @@ +apiVersion: v2 +name: linux-command +description: A Helm chart for Kubernetes +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: 0.1.0 +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "0.1.0" diff --git a/deploy/helm/charts/linux-command/README.md b/deploy/helm/charts/linux-command/README.md new file mode 100644 index 00000000000..042c4695a6b --- /dev/null +++ b/deploy/helm/charts/linux-command/README.md @@ -0,0 +1,44 @@ +# linux-command + +linux-command 的 Helm 图表。该图表使用 Helm 软件包管理器在 Kubernetes 集群上引导部署 linux-command。 + +## 安装 Chart + +``` +$ helm install linux-command ./linux-command --namespace linux-command --create-namespace +``` + +## 卸载 Chart + +``` +$ helm -n linux-command uninstall linux-command +``` + +这会删除与图表相关的所有 Kubernetes 组件,并删除发布。 + +## 配置参数 + +下表列出了 linux-command 图表的可配置参数及其默认值。 + +| Key | Type | Default | Description | +| ------------------------------------------------------------ | ------ | ------------------------- | ----------- | +| linuxCommand.linuxCommandContainer.image.repository | string | `"wcjiang/linux-command"` | | +| linuxCommand.linuxCommandContainer.image.tag | string | `"latest"` | | +| linuxCommand.linuxCommandContainer.imagePullPolicy | string | `"IfNotPresent"` | | +| linuxCommand.linuxCommandContainer.resources.limits.cpu | string | `"100m"` | | +| linuxCommand.linuxCommandContainer.resources.limits.memory | string | `"50Mi"` | | +| linuxCommand.linuxCommandContainer.resources.requests.cpu | string | `"100m"` | | +| linuxCommand.linuxCommandContainer.resources.requests.memory | string | `"50Mi"` | | +| linuxCommand.replicas | int | `1` | | +| service.ports[0].port | int | `9665` | | +| service.ports[0].protocol | string | `"TCP"` | | +| service.ports[0].targetPort | int | `3000` | | +| service.type | string | `"NodePort"` | | + +使用`-set key=value[,key=value]`参数为`helm install`指定每个参数。 + +或者,也可以在安装图表时提供指定参数值的 YAML 文件。例如 + +``` +helm install -f values.yaml ./linux-command +``` diff --git a/deploy/helm/charts/linux-command/templates/_helpers.tpl b/deploy/helm/charts/linux-command/templates/_helpers.tpl new file mode 100644 index 00000000000..68cb3b48b25 --- /dev/null +++ b/deploy/helm/charts/linux-command/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "linux-command.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "linux-command.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "linux-command.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "linux-command.labels" -}} +helm.sh/chart: {{ include "linux-command.chart" . }} +{{ include "linux-command.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "linux-command.selectorLabels" -}} +app.kubernetes.io/name: {{ include "linux-command.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "linux-command.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "linux-command.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/deploy/helm/charts/linux-command/templates/deployment.yaml b/deploy/helm/charts/linux-command/templates/deployment.yaml new file mode 100644 index 00000000000..fbfc1318671 --- /dev/null +++ b/deploy/helm/charts/linux-command/templates/deployment.yaml @@ -0,0 +1,32 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "linux-command.fullname" . }}-linux-command + labels: + app: linux-command + {{- include "linux-command.labels" . | nindent 4 }} +spec: + replicas: {{ .Values.linuxCommand.replicas }} + selector: + matchLabels: + app: linux-command + {{- include "linux-command.selectorLabels" . | nindent 6 }} + template: + metadata: + labels: + app: linux-command + {{- include "linux-command.selectorLabels" . | nindent 8 }} + spec: + containers: + - env: + - name: KUBERNETES_CLUSTER_DOMAIN + value: {{ quote .Values.kubernetesClusterDomain }} + image: {{ .Values.linuxCommand.linuxCommandContainer.image.repository }}:{{ .Values.linuxCommand.linuxCommandContainer.image.tag + | default .Chart.AppVersion }} + imagePullPolicy: {{ .Values.linuxCommand.linuxCommandContainer.imagePullPolicy + }} + name: linux-command-container + ports: + - containerPort: 3000 + resources: {{- toYaml .Values.linuxCommand.linuxCommandContainer.resources | nindent + 10 }} \ No newline at end of file diff --git a/deploy/helm/charts/linux-command/templates/service.yaml b/deploy/helm/charts/linux-command/templates/service.yaml new file mode 100644 index 00000000000..4f5faa02ee7 --- /dev/null +++ b/deploy/helm/charts/linux-command/templates/service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "linux-command.fullname" . }}-service + labels: + {{- include "linux-command.labels" . | nindent 4 }} +spec: + type: {{ .Values.service.type }} + selector: + app: linux-command + {{- include "linux-command.selectorLabels" . | nindent 4 }} + ports: + {{- .Values.service.ports | toYaml | nindent 2 }} diff --git a/deploy/helm/charts/linux-command/values.yaml b/deploy/helm/charts/linux-command/values.yaml new file mode 100644 index 00000000000..5b449e33bcb --- /dev/null +++ b/deploy/helm/charts/linux-command/values.yaml @@ -0,0 +1,20 @@ +linuxCommand: + linuxCommandContainer: + image: + repository: wcjiang/linux-command + tag: latest + imagePullPolicy: IfNotPresent + resources: + limits: + cpu: 100m + memory: 50Mi + requests: + cpu: 100m + memory: 50Mi + replicas: 1 +service: + ports: + - port: 9665 + protocol: TCP + targetPort: 3000 + type: NodePort From fc97de6b4433b48915e86ba478ef22718b5e18bd Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 11:26:34 +0000 Subject: [PATCH 531/566] doc: update README.md. --- README.md | 72 +++++++++++++++++++++++++++---------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index e2995e3f3b2..0c9bfce4a34 100644 --- a/README.md +++ b/README.md @@ -289,6 +289,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 沙漠之子 Shell xhal +will VVatt gggwvg BingCoke @@ -303,6 +304,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Dazhuangw Alterem YH +jcdj666 jqz3.tech juemuren4449 kassadin @@ -316,8 +318,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. miniwater noodles2hg nsnans -oliver -jcdj666 hululu1068 huangyao hotdogc1017 @@ -332,39 +332,40 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Deny dayday cxalc -Mystic -zyimm -七朔 -孤城落寞 -尘埃 -Wei Xu -Loofra -ReZero -极简XksA -移动的红烧肉 -继刚 -老犁 -Kyofin -谢民皆 -远方 -Wendy May +Forever121 Yidan Wang -rexlin600 -sfwwslm -shc -shuangcui -snovey -tangke -tutianyu101 -UniqueDing -weibk -will -Lingfeng Wang -yanyx -zjlovezj -zodiac -zoomdong +Wendy May +远方 +谢民皆 +Kyofin +老犁 +继刚 +移动的红烧肉 +极简XksA +ReZero +Loofra +Wei Xu +尘埃 +孤城落寞 +七朔 +zyimm zuixin369 +zoomdong +zodiac +zjlovezj +yanyx +Lingfeng Wang +weibk +UniqueDing +tutianyu101 +tangke +snovey +shuangcui +shc +sfwwslm +rexlin600 +oliver +c2ch MinsonLee Marnm mwei @@ -395,8 +396,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 -Forever121 -c2ch brinkqiang bell azureology @@ -425,7 +424,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rining Wu Ray Yee QinShower -Q.Ben Zheng +Q.Ben Zheng +Mystic 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From a727bb37dbfe5d14c27a6d5857a9ab64fc3e435b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 11:26:35 +0000 Subject: [PATCH 532/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 72 +++++++++++++++++++-------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 80deae78548..3c6664e164b 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -34,6 +34,7 @@ 沙漠之子 Shell xhal +will VVatt gggwvg BingCoke @@ -48,6 +49,7 @@ Dazhuangw Alterem YH +jcdj666 jqz3.tech juemuren4449 kassadin @@ -61,8 +63,6 @@ miniwater noodles2hg nsnans -oliver -jcdj666 hululu1068 huangyao hotdogc1017 @@ -77,39 +77,40 @@ Deny dayday cxalc -Mystic -zyimm -七朔 -孤城落寞 -尘埃 -Wei Xu -Loofra -ReZero -极简XksA -移动的红烧肉 -继刚 -老犁 -Kyofin -谢民皆 -远方 -Wendy May +Forever121 Yidan Wang -rexlin600 -sfwwslm -shc -shuangcui -snovey -tangke -tutianyu101 -UniqueDing -weibk -will -Lingfeng Wang -yanyx -zjlovezj -zodiac -zoomdong +Wendy May +远方 +谢民皆 +Kyofin +老犁 +继刚 +移动的红烧肉 +极简XksA +ReZero +Loofra +Wei Xu +尘埃 +孤城落寞 +七朔 +zyimm zuixin369 +zoomdong +zodiac +zjlovezj +yanyx +Lingfeng Wang +weibk +UniqueDing +tutianyu101 +tangke +snovey +shuangcui +shc +sfwwslm +rexlin600 +oliver +c2ch MinsonLee Marnm mwei @@ -140,8 +141,6 @@ Azroy Alan 0x_000 -Forever121 -c2ch brinkqiang bell azureology @@ -170,7 +169,8 @@ Rining Wu Ray Yee QinShower -Q.Ben Zheng +Q.Ben Zheng +Mystic

数据来源于 GitHub Contributors,使用action-contributors创建。 From 4997c40f80e78409d4fba3d339e6ccfc8b9158e1 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Fri, 20 Sep 2024 19:27:15 +0800 Subject: [PATCH 533/566] chore: renamed deploy/helm/ -> k8s/helm/ #606 --- {deploy => k8s}/helm/charts/linux-command/.helmignore | 0 {deploy => k8s}/helm/charts/linux-command/Chart.yaml | 0 {deploy => k8s}/helm/charts/linux-command/README.md | 0 {deploy => k8s}/helm/charts/linux-command/templates/_helpers.tpl | 0 .../helm/charts/linux-command/templates/deployment.yaml | 0 {deploy => k8s}/helm/charts/linux-command/templates/service.yaml | 0 {deploy => k8s}/helm/charts/linux-command/values.yaml | 0 7 files changed, 0 insertions(+), 0 deletions(-) rename {deploy => k8s}/helm/charts/linux-command/.helmignore (100%) rename {deploy => k8s}/helm/charts/linux-command/Chart.yaml (100%) rename {deploy => k8s}/helm/charts/linux-command/README.md (100%) rename {deploy => k8s}/helm/charts/linux-command/templates/_helpers.tpl (100%) rename {deploy => k8s}/helm/charts/linux-command/templates/deployment.yaml (100%) rename {deploy => k8s}/helm/charts/linux-command/templates/service.yaml (100%) rename {deploy => k8s}/helm/charts/linux-command/values.yaml (100%) diff --git a/deploy/helm/charts/linux-command/.helmignore b/k8s/helm/charts/linux-command/.helmignore similarity index 100% rename from deploy/helm/charts/linux-command/.helmignore rename to k8s/helm/charts/linux-command/.helmignore diff --git a/deploy/helm/charts/linux-command/Chart.yaml b/k8s/helm/charts/linux-command/Chart.yaml similarity index 100% rename from deploy/helm/charts/linux-command/Chart.yaml rename to k8s/helm/charts/linux-command/Chart.yaml diff --git a/deploy/helm/charts/linux-command/README.md b/k8s/helm/charts/linux-command/README.md similarity index 100% rename from deploy/helm/charts/linux-command/README.md rename to k8s/helm/charts/linux-command/README.md diff --git a/deploy/helm/charts/linux-command/templates/_helpers.tpl b/k8s/helm/charts/linux-command/templates/_helpers.tpl similarity index 100% rename from deploy/helm/charts/linux-command/templates/_helpers.tpl rename to k8s/helm/charts/linux-command/templates/_helpers.tpl diff --git a/deploy/helm/charts/linux-command/templates/deployment.yaml b/k8s/helm/charts/linux-command/templates/deployment.yaml similarity index 100% rename from deploy/helm/charts/linux-command/templates/deployment.yaml rename to k8s/helm/charts/linux-command/templates/deployment.yaml diff --git a/deploy/helm/charts/linux-command/templates/service.yaml b/k8s/helm/charts/linux-command/templates/service.yaml similarity index 100% rename from deploy/helm/charts/linux-command/templates/service.yaml rename to k8s/helm/charts/linux-command/templates/service.yaml diff --git a/deploy/helm/charts/linux-command/values.yaml b/k8s/helm/charts/linux-command/values.yaml similarity index 100% rename from deploy/helm/charts/linux-command/values.yaml rename to k8s/helm/charts/linux-command/values.yaml From ffc270e9860edf93cd58c1072144e29ac8ed98fa Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 11:28:40 +0000 Subject: [PATCH 534/566] doc: update README.md. --- README.md | 72 +++++++++++++++++++++++++++---------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index 0c9bfce4a34..e2995e3f3b2 100644 --- a/README.md +++ b/README.md @@ -289,7 +289,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 沙漠之子 Shell xhal -will VVatt gggwvg BingCoke @@ -304,7 +303,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Dazhuangw Alterem YH -jcdj666 jqz3.tech juemuren4449 kassadin @@ -318,6 +316,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. miniwater noodles2hg nsnans +oliver +jcdj666 hululu1068 huangyao hotdogc1017 @@ -332,40 +332,39 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Deny dayday cxalc -Forever121 -Yidan Wang -Wendy May -远方 -谢民皆 -Kyofin -老犁 -继刚 -移动的红烧肉 -极简XksA -ReZero -Loofra -Wei Xu -尘埃 -孤城落寞 -七朔 +Mystic zyimm -zuixin369 -zoomdong -zodiac -zjlovezj -yanyx -Lingfeng Wang -weibk -UniqueDing -tutianyu101 -tangke -snovey -shuangcui -shc -sfwwslm +七朔 +孤城落寞 +尘埃 +Wei Xu +Loofra +ReZero +极简XksA +移动的红烧肉 +继刚 +老犁 +Kyofin +谢民皆 +远方 +Wendy May +Yidan Wang rexlin600 -oliver -c2ch +sfwwslm +shc +shuangcui +snovey +tangke +tutianyu101 +UniqueDing +weibk +will +Lingfeng Wang +yanyx +zjlovezj +zodiac +zoomdong +zuixin369 MinsonLee Marnm mwei @@ -396,6 +395,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 +Forever121 +c2ch brinkqiang bell azureology @@ -424,8 +425,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rining Wu Ray Yee QinShower -Q.Ben Zheng -Mystic +Q.Ben Zheng 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From 5cd5a451b49e996f557abd9201cd94b0e0a87809 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Sep 2024 11:28:41 +0000 Subject: [PATCH 535/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 72 +++++++++++++++++++-------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 3c6664e164b..80deae78548 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -34,7 +34,6 @@ 沙漠之子 Shell xhal -will VVatt gggwvg BingCoke @@ -49,7 +48,6 @@ Dazhuangw Alterem YH -jcdj666 jqz3.tech juemuren4449 kassadin @@ -63,6 +61,8 @@ miniwater noodles2hg nsnans +oliver +jcdj666 hululu1068 huangyao hotdogc1017 @@ -77,40 +77,39 @@ Deny dayday cxalc -Forever121 -Yidan Wang -Wendy May -远方 -谢民皆 -Kyofin -老犁 -继刚 -移动的红烧肉 -极简XksA -ReZero -Loofra -Wei Xu -尘埃 -孤城落寞 -七朔 +Mystic zyimm -zuixin369 -zoomdong -zodiac -zjlovezj -yanyx -Lingfeng Wang -weibk -UniqueDing -tutianyu101 -tangke -snovey -shuangcui -shc -sfwwslm +七朔 +孤城落寞 +尘埃 +Wei Xu +Loofra +ReZero +极简XksA +移动的红烧肉 +继刚 +老犁 +Kyofin +谢民皆 +远方 +Wendy May +Yidan Wang rexlin600 -oliver -c2ch +sfwwslm +shc +shuangcui +snovey +tangke +tutianyu101 +UniqueDing +weibk +will +Lingfeng Wang +yanyx +zjlovezj +zodiac +zoomdong +zuixin369 MinsonLee Marnm mwei @@ -141,6 +140,8 @@ Azroy Alan 0x_000 +Forever121 +c2ch brinkqiang bell azureology @@ -169,8 +170,7 @@ Rining Wu Ray Yee QinShower -Q.Ben Zheng -Mystic +Q.Ben Zheng

数据来源于 GitHub Contributors,使用action-contributors创建。 From 06c56e9e88777b46bc358f4d2cfaedb651b48bac Mon Sep 17 00:00:00 2001 From: bestlaw66 <94432849+bestlaw66@users.noreply.github.com> Date: Thu, 31 Oct 2024 11:30:27 +0800 Subject: [PATCH 536/566] docs: add BT Panel Deployment Method (#613) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在国内有大部分用户都在使用宝塔面板管理服务器,因此增加使用宝塔面板部署的教程,可视化的部署文档可以帮助用户更加便捷的部署Linux Command --- README.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/README.md b/README.md index e2995e3f3b2..870475462a4 100644 --- a/README.md +++ b/README.md @@ -94,6 +94,41 @@ http://localhost:9665/ 通过 Vercel 分配的域名访问,或者自行在设置中绑定域名。 +## 宝塔面板 + +可通过宝塔面板应用商店快速部署 linux-command + +

+部署步骤 + +### 前提 + +* 仅适用于宝塔面板 9.2.0 及以上版本 +* 安装宝塔面板,前往[宝塔面板](https://www.bt.cn/new/download.html)官网,选择正式版的脚本下载安装 + +### 部署 + +1. 登录宝塔面板,在左侧菜单栏中点击 `Docker` +2. 首次会提示安装`Docker`和`Docker Compose`服务,点击立即安装,若已安装请忽略。 +3. 安装完成后在`Docker-应用商店-实用工具`中找到 `linux-command`,点击`安装`,也可以在搜索框直接搜索`linux`。 +4. 设置域名等基本信息,点击`确定` +* 说明: + * 名称:应用名称,默认`linuxcommand_随机字符` + * 版本选择:默认`latest` + * 域名:如您需要通过域名访问,请在此处填写您的域名 + * 允许外部访问:如您需通过`IP+Port`直接访问,请勾选,如您已经设置了域名,请不要勾选此处 + * 端口:默认`3000`,可自行修改 + * CPU 限制:0 为不限制,根据实际需要设置 + * 内存限制:0 为不限制,根据实际需要设置 +5. 提交后面板会自动进行应用初始化,大概需要`1-3`分钟,初始化完成后即可访问。 + +### 访问 linux-command + +* 如果您填写域名,请在浏览器输入您的域名访问,如`http://demo.linux-command`,即可访问 `linux-command` 页面。 +* 如您选择`IP+端口访问`请在浏览器地址栏中输入域名访问 `http://<宝塔面板IP>:6806`,即可访问 `linux-command` 页面。 + +
+ ## Linux命令分类 *这里存放Linux 命令大全并不全,你可以通过[linux-command](https://jaywcjlove.github.io/linux-command/)来搜索,它是把 [command](./assets/command) 目录里面搜集的命令,生成了静态HTML并提供预览以及索引搜索。* From 3ad005aafe6e4f9eb924f8e9e93063b0c4cee27b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 31 Oct 2024 03:30:54 +0000 Subject: [PATCH 537/566] doc: update README.md. --- README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 870475462a4..7fe84730157 100644 --- a/README.md +++ b/README.md @@ -324,6 +324,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 沙漠之子 Shell xhal +will VVatt gggwvg BingCoke @@ -338,6 +339,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Dazhuangw Alterem YH +jcdj666 jqz3.tech juemuren4449 kassadin @@ -351,8 +353,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. miniwater noodles2hg nsnans -oliver -jcdj666 hululu1068 huangyao hotdogc1017 @@ -367,6 +367,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Deny dayday cxalc +Forever121 Mystic zyimm 七朔 @@ -384,6 +385,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 远方 Wendy May Yidan Wang +oliver rexlin600 sfwwslm shc @@ -393,7 +395,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. tutianyu101 UniqueDing weibk -will Lingfeng Wang yanyx zjlovezj @@ -430,9 +431,9 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 -Forever121 c2ch brinkqiang +bestlaw66 bell azureology Ashine From 7c36a2f50f29d7e747fa1a32774312230365d64a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 31 Oct 2024 03:30:54 +0000 Subject: [PATCH 538/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 80deae78548..cc6ddf65f69 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -34,6 +34,7 @@ 沙漠之子 Shell xhal +will VVatt gggwvg BingCoke @@ -48,6 +49,7 @@ Dazhuangw Alterem YH +jcdj666 jqz3.tech juemuren4449 kassadin @@ -61,8 +63,6 @@ miniwater noodles2hg nsnans -oliver -jcdj666 hululu1068 huangyao hotdogc1017 @@ -77,6 +77,7 @@ Deny dayday cxalc +Forever121 Mystic zyimm 七朔 @@ -94,6 +95,7 @@ 远方 Wendy May Yidan Wang +oliver rexlin600 sfwwslm shc @@ -103,7 +105,6 @@ tutianyu101 UniqueDing weibk -will Lingfeng Wang yanyx zjlovezj @@ -140,9 +141,9 @@ Azroy Alan 0x_000 -Forever121 c2ch brinkqiang +bestlaw66 bell azureology Ashine From 2268588c603129baa8191f51a1e3230ae16ca04e Mon Sep 17 00:00:00 2001 From: chaofan Date: Tue, 12 Nov 2024 10:49:56 +0800 Subject: [PATCH 539/566] doc: update command/free.md (#615) Add `-h` args description. --- command/free.md | 1 + 1 file changed, 1 insertion(+) diff --git a/command/free.md b/command/free.md index 7559c114305..11e927b395b 100644 --- a/command/free.md +++ b/command/free.md @@ -24,6 +24,7 @@ free(选项) -s<间隔秒数> # 持续观察内存使用状况; -t # 显示内存总和列; -V # 显示版本信息。 +-h, --human # 自动缩放到最短三位单位的并打印输出 ``` ### 实例 From a607043c9aeb9de834d06d7613cddb25ad827753 Mon Sep 17 00:00:00 2001 From: YEUNGCHIE <30793662+yeungchie@users.noreply.github.com> Date: Tue, 26 Nov 2024 10:20:14 +0800 Subject: [PATCH 540/566] doc: update command/strings.md (#617) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `实例` 中的第二个例子的命令错误,缺少管道符 `|` --- command/strings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/command/strings.md b/command/strings.md index baf174c6c85..bdc513d0856 100644 --- a/command/strings.md +++ b/command/strings.md @@ -38,7 +38,7 @@ strings /bin/ls 列出ls中所有的ASCII文本: ```shell -cat /bin/ls strings +cat /bin/ls | strings ``` 查找ls中包含libc的字符串,不区分大小写: From fbba20936881da812101e162fc76c088227f006d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 26 Nov 2024 02:20:46 +0000 Subject: [PATCH 541/566] doc: update README.md. --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7fe84730157..6d5641f5c21 100644 --- a/README.md +++ b/README.md @@ -315,6 +315,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. rgshare loverainye lavaicer +YEUNGCHIE SteveLauC Lnkstls James Wang @@ -335,7 +336,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Shan Chenyu Xingwen Zhang Xrtero -YEUNGCHIE Dazhuangw Alterem YH @@ -368,7 +368,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 -Mystic +chaofan zyimm 七朔 孤城落寞 @@ -401,6 +401,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. zodiac zoomdong zuixin369 +Mystic MinsonLee Marnm mwei From e3700384a490b965b0d97df58c658bed2c4f3e96 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 26 Nov 2024 02:20:47 +0000 Subject: [PATCH 542/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index cc6ddf65f69..3a73c8c7702 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -25,6 +25,7 @@ rgshare loverainye lavaicer +YEUNGCHIE SteveLauC Lnkstls James Wang @@ -45,7 +46,6 @@ Shan Chenyu Xingwen Zhang Xrtero -YEUNGCHIE Dazhuangw Alterem YH @@ -78,7 +78,7 @@ dayday cxalc Forever121 -Mystic +chaofan zyimm 七朔 孤城落寞 @@ -111,6 +111,7 @@ zodiac zoomdong zuixin369 +Mystic MinsonLee Marnm mwei From f5b04886c016cb7dd5b270134ef7ae0837929455 Mon Sep 17 00:00:00 2001 From: githubwxz Date: Fri, 29 Nov 2024 10:23:26 +0800 Subject: [PATCH 543/566] doc: Update README.md (#618) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6d5641f5c21..e9fb3880b6c 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ **推荐使用的镜像 web 版本** -[**`srebro.cn`**](https://linux.srebro.cn/),[**`getaifun.com`**](https://getaifun.com/linux),[**`linux.devonline.net`**](http://linux.devonline.net/),[**`man.zch.ooo`**](https://man.zch.ooo/),[**`linux.mmoke.com`**](https://linux.mmoke.com),[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/),[**`linux.zyimm.com`**](http://linux.zyimm.com/),[**`linux.vovuo.com`**](https://linux.vovuo.com/),[`linux.liguiying.cn`](https://linux.liguiying.cn/), [`renye.net`](https://renye.net/), [`diqi.org`](https://diqi.org/),[`linux.alistnas.xyz`](https://linux.alistnas.xyz/),[`nenufm.com`](https://www.nenufm.com/linux-command/) +[**`linuxsearch.largeinfo.cc`**](http://linuxsearch.largeinfo.cc),[**`srebro.cn`**](https://linux.srebro.cn/),[**`getaifun.com`**](https://getaifun.com/linux),[**`linux.devonline.net`**](http://linux.devonline.net/),[**`man.zch.ooo`**](https://man.zch.ooo/),[**`linux.mmoke.com`**](https://linux.mmoke.com),[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/),[**`linux.zyimm.com`**](http://linux.zyimm.com/),[**`linux.vovuo.com`**](https://linux.vovuo.com/),[`linux.liguiying.cn`](https://linux.liguiying.cn/), [`renye.net`](https://renye.net/), [`diqi.org`](https://diqi.org/),[`linux.alistnas.xyz`](https://linux.alistnas.xyz/),[`nenufm.com`](https://www.nenufm.com/linux-command/) **其它 web 版本** From 84d686c1f700b5419ae47e6dfd3082756862dbeb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 29 Nov 2024 02:23:58 +0000 Subject: [PATCH 544/566] doc: update README.md. --- README.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index e9fb3880b6c..32266489134 100644 --- a/README.md +++ b/README.md @@ -317,7 +317,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. lavaicer YEUNGCHIE SteveLauC -Lnkstls +MioMuse James Wang Qliangw Wang Yujia @@ -333,12 +333,13 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. FunKeen Pan, Wen-Ming RichardLCD -Shan Chenyu -Xingwen Zhang -Xrtero Dazhuangw Alterem YH +Shan Chenyu +Xingwen Zhang +Xrtero +hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -352,11 +353,10 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dufu miniwater noodles2hg -nsnans -hululu1068 huangyao hotdogc1017 gcluffy +githubwxz ghy gesty gedune @@ -369,6 +369,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. cxalc Forever121 chaofan +nsnans zyimm 七朔 孤城落寞 From b8b93894b9d7609994afdbfdca5a1b155a213975 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 29 Nov 2024 02:23:59 +0000 Subject: [PATCH 545/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 3a73c8c7702..a8d7ec9c534 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -27,7 +27,7 @@ lavaicer YEUNGCHIE SteveLauC -Lnkstls +MioMuse James Wang Qliangw Wang Yujia @@ -43,12 +43,13 @@ FunKeen Pan, Wen-Ming RichardLCD -Shan Chenyu -Xingwen Zhang -Xrtero Dazhuangw Alterem YH +Shan Chenyu +Xingwen Zhang +Xrtero +hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -62,11 +63,10 @@ dufu miniwater noodles2hg -nsnans -hululu1068 huangyao hotdogc1017 gcluffy +githubwxz ghy gesty gedune @@ -79,6 +79,7 @@ cxalc Forever121 chaofan +nsnans zyimm 七朔 孤城落寞 From 0775c0d74e6e87f4f6268cff5fde377bbc4cc8bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=B6=E8=8B=8F=E5=A6=82=E6=98=AF?= <57750156+fusurus@users.noreply.github.com> Date: Sat, 21 Dec 2024 18:57:38 +0800 Subject: [PATCH 546/566] doc: Update nohup.md (#621) --- command/nohup.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/command/nohup.md b/command/nohup.md index 6a60c8f9a39..8e168243154 100644 --- a/command/nohup.md +++ b/command/nohup.md @@ -47,4 +47,16 @@ nohup wget site.com/file.zip nohup ping -c 10 baidu.com ``` +### 最简单的后台运行 +nohup command & +### 输出默认重定向到当前目录下 nohup.out 文件 +nohup python main.py & +### 自定义输出文件(标准输出和错误输出合并到 main.log) +nohup python main.py >> main.log 2>&1 & +### 与上一个例子相同作用的简写方法 +nohup python main.py &> main.log & +### 不记录输出信息 +nohup python main.py &> /dev/null & +### 不记录输出信息并将程序的进程号写入 pidfile.txt 文件中,方便后续杀死进程 +nohup python main.py &> /dev/null & echo $! > pidfile.txt From a6207d7ab2ccba2e8c10501c7824005688b7dc09 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 21 Dec 2024 19:05:55 +0800 Subject: [PATCH 547/566] doc: update command/nohup.md --- command/nohup.md | 51 +++++++++++++++++++++++++++++++++++------------- 1 file changed, 37 insertions(+), 14 deletions(-) diff --git a/command/nohup.md b/command/nohup.md index 8e168243154..e0ee09d8efb 100644 --- a/command/nohup.md +++ b/command/nohup.md @@ -9,23 +9,24 @@ nohup 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到`$HOME/nohup.out`文件中。如果没有文件能创建或打开以用于追加,那么 command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。 -### 语法 +### 语法 +```shell nohup(选项)(参数) +``` -### 选项 +### 选项 ```shell --help:在线帮助; --version:显示版本信息。 ``` -### 参数 +### 参数 程序及选项:要运行的程序及选项。 -### 实例 - +### 实例 使用nohup命令提交作业,如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件: @@ -47,16 +48,38 @@ nohup wget site.com/file.zip nohup ping -c 10 baidu.com ``` -### 最简单的后台运行 +最简单的后台运行 + +```shell nohup command & -### 输出默认重定向到当前目录下 nohup.out 文件 -nohup python main.py & -### 自定义输出文件(标准输出和错误输出合并到 main.log) -nohup python main.py >> main.log 2>&1 & -### 与上一个例子相同作用的简写方法 +``` + +输出默认重定向到当前目录下 nohup.out 文件 + +```shell +nohup python main.py & +``` + +自定义输出文件(标准输出和错误输出合并到 main.log) + +```shell +nohup python main.py >> main.log 2>&1 & +``` + +与上一个例子相同作用的简写方法 + +```shell nohup python main.py &> main.log & -### 不记录输出信息 +``` + +不记录输出信息 + +```shell nohup python main.py &> /dev/null & -### 不记录输出信息并将程序的进程号写入 pidfile.txt 文件中,方便后续杀死进程 -nohup python main.py &> /dev/null & echo $! > pidfile.txt +``` +不记录输出信息并将程序的进程号写入 pidfile.txt 文件中,方便后续杀死进程 + +```shell +nohup python main.py &> /dev/null & echo $! > pidfile.txt +``` \ No newline at end of file From 5b5557f91e2f2d472a1f296fa659c974875e9dc4 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 21 Dec 2024 11:06:33 +0000 Subject: [PATCH 548/566] doc: update README.md. --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 32266489134..0cc1ae7f14e 100644 --- a/README.md +++ b/README.md @@ -339,7 +339,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Shan Chenyu Xingwen Zhang Xrtero -hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -353,6 +352,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dufu miniwater noodles2hg +nsnans +hululu1068 huangyao hotdogc1017 gcluffy @@ -368,14 +369,13 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 -chaofan -nsnans -zyimm +oliver 七朔 孤城落寞 尘埃 Wei Xu Loofra +扶苏如是 ReZero 极简XksA 移动的红烧肉 @@ -386,7 +386,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 远方 Wendy May Yidan Wang -oliver rexlin600 sfwwslm shc @@ -402,6 +401,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. zodiac zoomdong zuixin369 +zyimm +chaofan Mystic MinsonLee Marnm From fc723b6dec1ebe066ab181d22c21b74b91be9481 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 21 Dec 2024 11:06:34 +0000 Subject: [PATCH 549/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index a8d7ec9c534..782e5d82414 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -49,7 +49,6 @@ Shan Chenyu Xingwen Zhang Xrtero -hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -63,6 +62,8 @@ dufu miniwater noodles2hg +nsnans +hululu1068 huangyao hotdogc1017 gcluffy @@ -78,14 +79,13 @@ dayday cxalc Forever121 -chaofan -nsnans -zyimm +oliver 七朔 孤城落寞 尘埃 Wei Xu Loofra +扶苏如是 ReZero 极简XksA 移动的红烧肉 @@ -96,7 +96,6 @@ 远方 Wendy May Yidan Wang -oliver rexlin600 sfwwslm shc @@ -112,6 +111,8 @@ zodiac zoomdong zuixin369 +zyimm +chaofan Mystic MinsonLee Marnm From 1f11d8a430781027f9abca93c7ba3106ffe6c235 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 21 Dec 2024 19:08:55 +0800 Subject: [PATCH 550/566] doc: update command/as.md --- command/as.md | 46 +++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/command/as.md b/command/as.md index 622f791b0c3..12578067995 100644 --- a/command/as.md +++ b/command/as.md @@ -5,15 +5,15 @@ as ## 补充说明 -**as命令** GNU组织推出的一款汇编语言编译器,它支持多种不同类型的处理器。 +**as命令** 是GNU组织推出的一款汇编语言编译器,它支持多种不同类型的处理器。 -### 语法 +### 语法 ```shell -as(选项)(参数) +as [选项] [参数] ``` -### 选项 +### 选项 ```shell -ac:忽略失败条件; @@ -33,8 +33,44 @@ as(选项)(参数) --statistics:打印汇编所用的最大空间和总时间。 ``` -### 参数 +### 参数 汇编文件:指定要汇编的源文件。 +### 示例 +编译一个汇编文件并生成目标文件 + +```shell +as -o output.o source.s +``` + +忽略调试指令并生成目标文件 + +```shell +as -ad -o output.o source.s +``` + +生成包含调试信息的目标文件 + +```shell +as -g -o output.o source.s +``` + +包括宏扩展并生成目标文件 + +```shell +as -am -o output.o source.s +``` + +打印汇编所用的最大空间和总时间 + +```shell +as --statistics -o output.o source.s +``` + +跳过空白和注释预处理并生成目标文件 + +```shell +as -f -o output.o source.s +``` \ No newline at end of file From 2a181511e989d95e3f0ec9f802298d65e7d10fe6 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 21 Dec 2024 19:10:44 +0800 Subject: [PATCH 551/566] doc: update command/at.md --- command/at.md | 41 ++++++++++++++++++++++++++++++----------- 1 file changed, 30 insertions(+), 11 deletions(-) diff --git a/command/at.md b/command/at.md index 5b3ca031569..352063efe3a 100644 --- a/command/at.md +++ b/command/at.md @@ -5,17 +5,17 @@ at ## 补充说明 -**at命令** 用于在指定时间执行命令。at允许使用一套相当复杂的指定时间的方法。它能够接受在当天的hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。当然也能够使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的 词语来指定时间。用户还能够采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午。 也能够指定命令执行的具体日期,指定格式为month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必须跟在指定时间的后面。 +**at命令** 用于在指定时间执行命令。at允许使用一套相当复杂的指定时间的方法。它能够接受在当天的hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。当然也能够使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的词语来指定时间。用户还能够采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午。也能够指定命令执行的具体日期,指定格式为month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必须跟在指定时间的后面。 -上面介绍的都是绝对计时法,其实还能够使用相对计时法,这对于安排不久就要执行的命令是很有好处的。指定格式为:`now + count time-units`,now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量,究竟是几天,还是几小时,等等。 更有一种计时方法就是直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。 +上面介绍的都是绝对计时法,其实还能够使用相对计时法,这对于安排不久就要执行的命令是很有好处的。指定格式为:`now + count time-units`,now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量,究竟是几天,还是几小时,等等。更有一种计时方法就是直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。 -### 语法 +### 语法 ```shell at [-V] [-q 队列] [-f 文件] [-mldbv] 时间 at -c 作业 [作业...] ``` -### 选项 +### 选项 ```shell -f:指定包含具体指令的任务文件; @@ -25,13 +25,13 @@ at [-V] [-q 队列] [-f 文件] [-mldbv] 时间 at -c 作业 [作业...] -m:任务执行完成后向用户发送E-mail。 ``` -### 参数 +### 参数 日期时间:指定任务执行的日期时间。 -### 实例 +### 示例 -三天后的下午 5 点锺执行`/bin/ls`: +三天后的下午 5 点钟执行`/bin/ls`: ```shell [root@localhost ~]# at 5pm+3 days @@ -60,10 +60,6 @@ job 8 at 2013-01-06 17:20 删除已经设置的任务: ```shell -[root@localhost ~]# atq -8 2013-01-06 17:20 a root -7 2013-01-08 17:00 a root - [root@localhost ~]# atrm 7 [root@localhost ~]# atq 8 2013-01-06 17:20 a root @@ -80,5 +76,28 @@ umask 22此处省略n个字符 date >/root/2013.log ``` +使用任务文件执行任务: + +```shell +[root@localhost ~]# echo "/bin/ls" > mytask.txt +[root@localhost ~]# at -f mytask.txt 5pm+3 days +job 9 at 2013-01-08 17:00 +``` + +指定任务队列执行任务: +```shell +[root@localhost ~]# at -q b 5pm+3 days +at> /bin/ls +at> +job 10 at 2013-01-08 17:00 +``` +任务执行完成后发送E-mail通知: + +```shell +[root@localhost ~]# at -m 5pm+3 days +at> /bin/ls +at> +job 11 at 2013-01-08 17:00 +``` \ No newline at end of file From d27f05592debd0f09eb43e7011bf9617a1d3db4e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 21 Dec 2024 11:16:46 +0000 Subject: [PATCH 552/566] doc: update README.md. --- README.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 0cc1ae7f14e..32266489134 100644 --- a/README.md +++ b/README.md @@ -339,6 +339,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Shan Chenyu Xingwen Zhang Xrtero +hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -352,8 +353,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dufu miniwater noodles2hg -nsnans -hululu1068 huangyao hotdogc1017 gcluffy @@ -369,13 +368,14 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 -oliver +chaofan +nsnans +zyimm 七朔 孤城落寞 尘埃 Wei Xu Loofra -扶苏如是 ReZero 极简XksA 移动的红烧肉 @@ -386,6 +386,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 远方 Wendy May Yidan Wang +oliver rexlin600 sfwwslm shc @@ -401,8 +402,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. zodiac zoomdong zuixin369 -zyimm -chaofan Mystic MinsonLee Marnm From 0ae1a1bc6eee39d0c86b8dda2dbdd0764c7c1bba Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 21 Dec 2024 11:16:47 +0000 Subject: [PATCH 553/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 782e5d82414..a8d7ec9c534 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -49,6 +49,7 @@ Shan Chenyu Xingwen Zhang Xrtero +hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -62,8 +63,6 @@ dufu miniwater noodles2hg -nsnans -hululu1068 huangyao hotdogc1017 gcluffy @@ -79,13 +78,14 @@ dayday cxalc Forever121 -oliver +chaofan +nsnans +zyimm 七朔 孤城落寞 尘埃 Wei Xu Loofra -扶苏如是 ReZero 极简XksA 移动的红烧肉 @@ -96,6 +96,7 @@ 远方 Wendy May Yidan Wang +oliver rexlin600 sfwwslm shc @@ -111,8 +112,6 @@ zodiac zoomdong zuixin369 -zyimm -chaofan Mystic MinsonLee Marnm From b1272c9afbdbebabd3714be6ba8d85fa49a7db2a Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 21 Dec 2024 19:18:27 +0800 Subject: [PATCH 554/566] doc: update command/atq.md --- command/atq.md | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/command/atq.md b/command/atq.md index ae1ad20ddd5..5fd86e76812 100644 --- a/command/atq.md +++ b/command/atq.md @@ -7,30 +7,56 @@ atq **atq命令** 显示系统中待执行的任务列表,也就是列出当前用户的at任务列表。 -### 语法 +### 语法 ```shell atq [-V] [-q 队列] [-v] ``` -### 选项 +### 选项 ```shell -V:显示版本号; -q:查询指定队列的任务。 ``` -### 实例 +### 示例 + +创建一个在10分钟后执行的任务,并列出当前用户的任务列表: ```shell -at now + 10 minutes +[root@localhost ~]# at now + 10 minutes at> echo 1111 -at> +at> job 3 at Fri Apr 26 12:56:00 2013 +``` -atq +使用`atq`命令查看当前用户的任务列表: + +```shell +[root@localhost ~]# atq 3 Fri Apr 26 12:56:00 2013 a root ``` +查询指定队列的任务: +```shell +[root@localhost ~]# at -q a now + 10 minutes +at> echo "Task in queue a" +at> +job 4 at Fri Apr 26 13:06:00 2013 +``` +使用`atq`命令查看队列`a`中的任务: + +```shell +[root@localhost ~]# atq -q a +4 Fri Apr 26 13:06:00 2013 a root +``` + +显示`atq`命令的版本号: + +```shell +[root@localhost ~]# atq -V +atq (GNU at) 3.1.20 +``` \ No newline at end of file From 69890bc63e856ae264dd02fafd926a3d3821dac8 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 21 Dec 2024 19:20:18 +0800 Subject: [PATCH 555/566] doc: update command/atop.md --- command/atop.md | 62 +++++++++++++++++++++++++++++++------------------ 1 file changed, 40 insertions(+), 22 deletions(-) diff --git a/command/atop.md b/command/atop.md index a33cf5ab340..0b5535f1f10 100644 --- a/command/atop.md +++ b/command/atop.md @@ -5,26 +5,32 @@ atop ## 补充说明 -[非内部程序,需要安装]它以一定的频率记录系统的运行状态,所采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中,服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其[源码](https://github.com/Atoptool/atop)和[rpm安装包](https://pkgs.org/download/atop)。 +**atop命令** 是一款开源的系统监控工具,它以一定的频率记录系统的运行状态,采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中。服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其[源码](https://github.com/Atoptool/atop)和[rpm安装包](https://pkgs.org/download/atop)。 ## 语法 ```shell -atop(选项)(参数) +atop [选项] [参数] ``` ## 说明 -**ATOP列**:该列显示了主机名、信息采样日期和时间点 +### ATOP列 -**PRC列**:该列显示进程整体运行情况 +该列显示了主机名、信息采样日期和时间点。 + +### PRC列 + +该列显示进程整体运行情况: - sys、usr字段分别指示进程在内核态和用户态的运行时间 - #proc字段指示进程总数 - #zombie字段指示僵尸进程的数量 - #exit字段指示atop采样周期期间退出的进程数量 -**CPU列**:该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况,我们知道CPU可被用于执行进程、处理中断,也可处于空闲状态(空闲状态分两种,一种是活动进程等待磁盘IO导致CPU空闲,另一种是完全空闲) +### CPU列 + +该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况: - sys、usr字段指示CPU被用于处理进程时,进程在内核态、用户态所占CPU的时间比例 - irq字段指示CPU被用于处理中断的时间比例 @@ -33,15 +39,21 @@ atop(选项)(参数) CPU列各个字段指示值相加结果为N00%,其中N为cpu核数。 -cpu列:该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100% +### cpu列 -**CPL列**:该列显示CPU负载情况 +该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100%。 + +### CPL列 + +该列显示CPU负载情况: - avg1、avg5和avg15字段:过去1分钟、5分钟和15分钟内运行队列中的平均进程数量 - csw字段指示上下文交换次数 - intr字段指示中断发生次数 -**MEM列**:该列指示内存的使用情况 +### MEM列 + +该列指示内存的使用情况: - tot字段指示物理内存总量 - free字段指示空闲内存的大小 @@ -49,43 +61,49 @@ cpu列:该列显示某一核cpu的使用情况,各字段含义可参照CPU - buff字段指示用于文件缓存的内存大小 - slab字段指示系统内核占用的内存大小 -**SWP列**:该列指示交换空间的使用情况 +### SWP列 + +该列指示交换空间的使用情况: - tot字段指示交换区总量 - free字段指示空闲交换空间大小 -**PAG列**:该列指示虚拟内存分页情况 +### PAG列 + +该列指示虚拟内存分页情况: + +- swin、swout字段:换入和换出内存页数 -swin、swout字段:换入和换出内存页数 +### DSK列 -**DSK列**:该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息 +该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息: - sda字段:磁盘设备标识 - busy字段:磁盘忙时比例 - read、write字段:读、写请求数量 -**NET列**:多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息 +### NET列 -- XXXi 字段指示各层或活动网口收包数目 -- XXXo 字段指示各层或活动网口发包数目 +多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息: -## atop日志 +- XXXi字段指示各层或活动网口收包数目 +- XXXo字段指示各层或活动网口发包数目 -每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用"atop -r XXX"命令对日志文件进行查看。那以什么形式保存atop日志文件呢? +## atop日志 -对于atop日志文件的保存方式,我们可以这样: +每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用`atop -r XXX`命令对日志文件进行查看。日志文件的保存方式如下: - 每天保存一个atop日志文件,该日志文件记录当天信息 -- 日志文件以"atop_YYYYMMDD"的方式命名 +- 日志文件以`atop_YYYYMMDD`的方式命名 - 设定日志失效期限,自动删除一段时间前的日志文件 -其实atop开发者已经提供了以上日志保存方式,相应的atop.daily脚本可以在源码目录下找到。在atop.daily脚本中,我们可以通过修改INTERVAL变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天): +atop开发者提供了以上日志保存方式,相应的`atop.daily`脚本可以在源码目录下找到。在`atop.daily`脚本中,我们可以通过修改`INTERVAL`变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天): ```shell (sleep 3; find $LOGPATH -name 'atop_*' -mtime +28 -exec rm {} \; )& ``` -最后,我们修改cron文件,每天凌晨执行atop.daily脚本: +最后,我们修改cron文件,每天凌晨执行`atop.daily`脚本: ```shell 0 0 * * * root /etc/cron.daily/atop.daily @@ -93,4 +111,4 @@ swin、swout字段:换入和换出内存页数 ## 相关资料 -- [官方手册](http://www.atoptool.nl/download/man_atop-1.pdf) +- [官方手册](http://www.atoptool.nl/download/man_atop-1.pdf) \ No newline at end of file From cc8725734644d7b54ad55e602bbf10b8c99d6b26 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 21 Dec 2024 11:21:12 +0000 Subject: [PATCH 556/566] doc: update README.md. --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 32266489134..0cc1ae7f14e 100644 --- a/README.md +++ b/README.md @@ -339,7 +339,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Shan Chenyu Xingwen Zhang Xrtero -hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -353,6 +352,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dufu miniwater noodles2hg +nsnans +hululu1068 huangyao hotdogc1017 gcluffy @@ -368,14 +369,13 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. dayday cxalc Forever121 -chaofan -nsnans -zyimm +oliver 七朔 孤城落寞 尘埃 Wei Xu Loofra +扶苏如是 ReZero 极简XksA 移动的红烧肉 @@ -386,7 +386,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 远方 Wendy May Yidan Wang -oliver rexlin600 sfwwslm shc @@ -402,6 +401,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. zodiac zoomdong zuixin369 +zyimm +chaofan Mystic MinsonLee Marnm From 065edf179120c3c494f9c49db6a542e27a6f211f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 21 Dec 2024 11:21:13 +0000 Subject: [PATCH 557/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index a8d7ec9c534..782e5d82414 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -49,7 +49,6 @@ Shan Chenyu Xingwen Zhang Xrtero -hululu1068 jcdj666 jqz3.tech juemuren4449 @@ -63,6 +62,8 @@ dufu miniwater noodles2hg +nsnans +hululu1068 huangyao hotdogc1017 gcluffy @@ -78,14 +79,13 @@ dayday cxalc Forever121 -chaofan -nsnans -zyimm +oliver 七朔 孤城落寞 尘埃 Wei Xu Loofra +扶苏如是 ReZero 极简XksA 移动的红烧肉 @@ -96,7 +96,6 @@ 远方 Wendy May Yidan Wang -oliver rexlin600 sfwwslm shc @@ -112,6 +111,8 @@ zodiac zoomdong zuixin369 +zyimm +chaofan Mystic MinsonLee Marnm From db88f1b96abf561fb43e6960c2e6b4367f83fdce Mon Sep 17 00:00:00 2001 From: Jeremy2214 <97098763+Jeremy2214@users.noreply.github.com> Date: Thu, 26 Dec 2024 22:09:22 +0800 Subject: [PATCH 558/566] doc: update touch.md (#624) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修正拼写错误,把“更该”,改为“更改” --- command/touch.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/command/touch.md b/command/touch.md index 37a1a698718..384efbff5e5 100644 --- a/command/touch.md +++ b/command/touch.md @@ -20,7 +20,7 @@ touch(选项)(参数) -c:或--no-create 不建立任何文件; -d:<时间日期> 使用指定的日期时间,而非现在的时间; -f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题; --m:或--time=mtime或--time=modify 只更该变动时间; +-m:或--time=mtime或--time=modify 只更改变动时间; -r:<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同; -t:<日期时间> 使用指定的日期时间,而非现在的时间; --help:在线帮助; From 43f5dc092158096541fe43765a21b47c32e71359 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 26 Dec 2024 14:10:10 +0000 Subject: [PATCH 559/566] doc: update README.md. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0cc1ae7f14e..7db5d94c9bc 100644 --- a/README.md +++ b/README.md @@ -384,7 +384,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Kyofin 谢民皆 远方 -Wendy May +bycs Yidan Wang rexlin600 sfwwslm From d4998a1000660bae9572328effbd136e6d350d70 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 26 Dec 2024 14:10:11 +0000 Subject: [PATCH 560/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 782e5d82414..3cd264242ed 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -94,7 +94,7 @@ Kyofin 谢民皆 远方 -Wendy May +bycs Yidan Wang rexlin600 sfwwslm From 36a4edf169ac064f875621ab381fe6580032a07e Mon Sep 17 00:00:00 2001 From: QinShower Date: Sun, 29 Dec 2024 20:45:56 +0800 Subject: [PATCH 561/566] feat: Create getfacl.md (#625) add getfacl --- command/getfacl.md | 49 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 command/getfacl.md diff --git a/command/getfacl.md b/command/getfacl.md new file mode 100644 index 00000000000..fbfb5271ee9 --- /dev/null +++ b/command/getfacl.md @@ -0,0 +1,49 @@ +getfacl +=== + +获取文件访问控制列表(access control lists) + +## 补充说明 + +对于每个文件,`getfacl`都会显示文件名、所有者、组和访问控制列表 (ACL)。如果目录有默认ACL,`getfacl` 也会显示默认ACL。非目录不能有默认ACL。 +如果在不支持 ACL 的文件系统上使用`getfacl`,`getfacl`会显示由传统文件模式权限位定义的访问权限。请参考`setfacl`。 + +### 选项 + +```shell +-a, --access # 显示文件访问控制列表。 +-d, --default # 显示默认访问控制列表。 +-c, --omit-header # 不显示注释头(每个文件输出的前三行)。 +-e, --all-effective # 打印所有有效权限注释,即使与 ACL 条目定义的权限相同。 +-E, --no-effective # 不打印有效权限注释。 +-s, --skip-base # 跳过只有基本 ACL 条目(所有者、组、其他)的文件。 +-R, --recursive # 递归列出所有文件和目录的 ACL。 +-L, --logical # 逻辑路径,跟踪目录的符号链接。默认行为是跟踪符号链接参数,跳过子目录中遇到的符号链接。仅与 -R 结合使用时有效。 +-P, --physical # 物理路径,不跟踪指向目录的符号链接。这也会跳过符号链接参数。 仅与 -R 结合使用时有效。 +-t, --tabular # 使用另一种表格输出格式。同时显示 ACL 和默认 ACL。因 ACL 屏蔽条目而无效的权限会以大写。ACL_USER_OBJ 和 ACL_GROUP_OBJ 条目的条目标签名称也以大写字母显示,这有助于识别这些条目。 +-p, --absolute-names # 不删除前导斜线字符 (`/')。默认行为是去掉前导斜线字符。 +-n, --numeric # 列出数字用户和组 ID。 +-v, --version # 打印 getfacl 的版本并退出。 +-h, --help # 打印命令行选项的帮助说明。 +-- # 命令行选项结束。所有剩余参数都被解释为文件名,即使它们以破折号字符开头。 +- # 如果文件名参数是单破折号字符,getfacl 将从标准输入读取文件列表。 +``` + +### 实例 + +getfacl 命令默认显示文件访问控制列表。打开终端,并输入以下命令: + +```shell +getfacl tmp + +# file: tmp +# owner: zdx +# group: zdx +# flags: -s- +user::rwx +group::rwx +other::r-x +default:user::rwx +default:group::rwx +default:other::r-x +``` From 6603a44cb5e02252ea88a6cb5b44d4d5fa21fede Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 29 Dec 2024 12:46:28 +0000 Subject: [PATCH 562/566] doc: update README.md. --- README.md | 66 +++++++++++++++++++++++++++---------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index 7db5d94c9bc..3a39ff29e2e 100644 --- a/README.md +++ b/README.md @@ -328,24 +328,25 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. will VVatt gggwvg -BingCoke -Ein Verne -FunKeen -Pan, Wen-Ming -RichardLCD Dazhuangw Alterem YH -Shan Chenyu -Xingwen Zhang Xrtero -jcdj666 -jqz3.tech -juemuren4449 -kassadin -kid1412621 -leo +Xingwen Zhang +Shan Chenyu +RichardLCD +Pan, Wen-Ming +Jeremy2214 +BingCoke +FunKeen +Ein Verne lewis1573 +leo +kid1412621 +kassadin +juemuren4449 +jqz3.tech +Forever121 linuxwd Ricardowang cole @@ -353,23 +354,23 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. miniwater noodles2hg nsnans -hululu1068 -huangyao -hotdogc1017 -gcluffy -githubwxz -ghy -gesty -gedune -gang.yang -ecjtusbs -duzhuoshanwai -dongpohezui -Deny -dayday -cxalc -Forever121 oliver +cxalc +dayday +Deny +dongpohezui +duzhuoshanwai +ecjtusbs +gang.yang +gedune +gesty +ghy +githubwxz +gcluffy +hotdogc1017 +huangyao +hululu1068 +jcdj666 七朔 孤城落寞 尘埃 @@ -402,7 +403,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. zoomdong zuixin369 zyimm -chaofan +Q.Ben Zheng Mystic MinsonLee Marnm @@ -418,7 +419,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. LaudOak Karl Horky Nexchard -Jeremy2214 Jack.A.Black Jack Huntout Zhang @@ -434,6 +434,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Azroy Alan 0x_000 +chaofan c2ch brinkqiang bestlaw66 @@ -463,8 +464,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Robigus Rining Wu Ray Yee -QinShower -Q.Ben Zheng +QinShower 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 From 000517ef32d2b01efb98d58ea9b91f178000c37f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 29 Dec 2024 12:46:28 +0000 Subject: [PATCH 563/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 66 +++++++++++++++++++-------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 3cd264242ed..77ec8c5d696 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -38,24 +38,25 @@ will VVatt gggwvg -BingCoke -Ein Verne -FunKeen -Pan, Wen-Ming -RichardLCD Dazhuangw Alterem YH -Shan Chenyu -Xingwen Zhang Xrtero -jcdj666 -jqz3.tech -juemuren4449 -kassadin -kid1412621 -leo +Xingwen Zhang +Shan Chenyu +RichardLCD +Pan, Wen-Ming +Jeremy2214 +BingCoke +FunKeen +Ein Verne lewis1573 +leo +kid1412621 +kassadin +juemuren4449 +jqz3.tech +Forever121 linuxwd Ricardowang cole @@ -63,23 +64,23 @@ miniwater noodles2hg nsnans -hululu1068 -huangyao -hotdogc1017 -gcluffy -githubwxz -ghy -gesty -gedune -gang.yang -ecjtusbs -duzhuoshanwai -dongpohezui -Deny -dayday -cxalc -Forever121 oliver +cxalc +dayday +Deny +dongpohezui +duzhuoshanwai +ecjtusbs +gang.yang +gedune +gesty +ghy +githubwxz +gcluffy +hotdogc1017 +huangyao +hululu1068 +jcdj666 七朔 孤城落寞 尘埃 @@ -112,7 +113,7 @@ zoomdong zuixin369 zyimm -chaofan +Q.Ben Zheng Mystic MinsonLee Marnm @@ -128,7 +129,6 @@ LaudOak Karl Horky Nexchard -Jeremy2214 Jack.A.Black Jack Huntout Zhang @@ -144,6 +144,7 @@ Azroy Alan 0x_000 +chaofan c2ch brinkqiang bestlaw66 @@ -173,8 +174,7 @@ Robigus Rining Wu Ray Yee -QinShower -Q.Ben Zheng +QinShower

数据来源于 GitHub Contributors,使用action-contributors创建。 From ec0fe45c48cf973ae69974e7d766029ed4df2f90 Mon Sep 17 00:00:00 2001 From: duzhuoshanwai <65448395+duzhuoshanwai@users.noreply.github.com> Date: Sat, 11 Jan 2025 11:07:52 +0800 Subject: [PATCH 564/566] doc: update column.md (#629) * doc: update README.md. * doc: update template/contributors.ejs. * Update column.md * doc: update README.md. * doc: update template/contributors.ejs. --------- Co-authored-by: github-actions[bot] --- README.md | 146 +++++++++++++++++++------------------- command/column.md | 53 ++++++++++++++ template/contributors.ejs | 146 +++++++++++++++++++------------------- 3 files changed, 199 insertions(+), 146 deletions(-) diff --git a/README.md b/README.md index 3a39ff29e2e..79063b9841c 100644 --- a/README.md +++ b/README.md @@ -308,45 +308,46 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Zijing Zhang Fubin Zhang __FresHmaN -dulltackle -ernest 谈笑风生间 +ernest +dulltackle zyy2477 -rgshare -loverainye -lavaicer -YEUNGCHIE SteveLauC +YEUNGCHIE MioMuse James Wang +lavaicer +loverainye +rgshare Qliangw -Wang Yujia -alfred 沙漠之子 +Wang Yujia Shell xhal will VVatt gggwvg -Dazhuangw -Alterem -YH -Xrtero -Xingwen Zhang -Shan Chenyu -RichardLCD -Pan, Wen-Ming -Jeremy2214 +alfred +duzhuoshanwai +Ein Verne BingCoke FunKeen -Ein Verne -lewis1573 -leo -kid1412621 -kassadin -juemuren4449 +Jeremy2214 +Pan, Wen-Ming +QinShower +RichardLCD +Shan Chenyu +Xingwen Zhang +Xrtero +YH +Alterem +Dazhuangw jqz3.tech -Forever121 +juemuren4449 +kassadin +kid1412621 +leo +lewis1573 linuxwd Ricardowang cole @@ -355,55 +356,54 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. noodles2hg nsnans oliver -cxalc -dayday -Deny -dongpohezui -duzhuoshanwai -ecjtusbs -gang.yang -gedune -gesty -ghy -githubwxz -gcluffy -hotdogc1017 -huangyao -hululu1068 jcdj666 -七朔 -孤城落寞 -尘埃 -Wei Xu -Loofra -扶苏如是 -ReZero -极简XksA -移动的红烧肉 -继刚 -老犁 -Kyofin -谢民皆 -远方 -bycs +hululu1068 +huangyao +hotdogc1017 +gcluffy +githubwxz +ghy +gesty +gedune +gang.yang +ecjtusbs +dongpohezui +Deny +dayday +cxalc +Q.Ben Zheng Yidan Wang -rexlin600 -sfwwslm -shc -shuangcui -snovey -tangke -tutianyu101 -UniqueDing -weibk -Lingfeng Wang -yanyx -zjlovezj -zodiac -zoomdong -zuixin369 +bycs +远方 +谢民皆 +Kyofin +老犁 +继刚 +移动的红烧肉 +极简XksA +ReZero +扶苏如是 +Loofra +Wei Xu +尘埃 +孤城落寞 +七朔 zyimm -Q.Ben Zheng +zuixin369 +zoomdong +zodiac +zjlovezj +yanyx +Lingfeng Wang +weibk +UniqueDing +tutianyu101 +tangke +snovey +shuangcui +shc +sfwwslm +rexlin600 Mystic MinsonLee Marnm @@ -431,9 +431,10 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Danny DaYangtuo247 Cui Yang -Azroy +azroy Alan 0x_000 +Forever121 chaofan c2ch brinkqiang @@ -463,8 +464,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. Rocher Robigus Rining Wu -Ray Yee -QinShower +Ray Yee 贡献者列表,由 [contributors](https://github.com/jaywcjlove/github-action-contributors) 自动生成 diff --git a/command/column.md b/command/column.md index 62e30329471..c93c184692b 100644 --- a/command/column.md +++ b/command/column.md @@ -26,6 +26,8 @@ file(可选),当没有指定文件时,默认会从标准输入读取, -s, --separator 指定识别表格的分隔符 -o, --output-separator 输出表格的列分隔符,默认为两个空格 -x, --fillrows 在列之前填充行 +-N, --table-columns 添加列名(逗号分隔) +-J --json 格式化为JSON输出(需要配合-N/--table-columns使用) -h, --help 显示此帮助 -V, --version 输出版本信息 ``` @@ -121,3 +123,54 @@ MemReq Metal3 pin 108.215 159.92 RdWrBar Metal3 pin 87.415 159.92 clock Metal3 pin 74.935 159.92 ``` + +- 添加列名并以JSON格式输出 + +```shell +$ column -J -s ":" -N "Username,Password,UID,GID,Gecos,HomeDirectory,Shell" /etc/passwd +{ + "table": [ + { + "username": "root", + "password": "x", + "uid": "0", + "gid": "0", + "gecos": "root", + "homedirectory": "/root", + "shell": "/bin/bash" + },{ + "username": "daemon", + "password": "x", + "uid": "1", + "gid": "1", + "gecos": "daemon", + "homedirectory": "/usr/sbin", + "shell": "/usr/sbin/nologin" + },{ + "username": "bin", + "password": "x", + "uid": "2", + "gid": "2", + "gecos": "bin", + "homedirectory": "/bin", + "shell": "/usr/sbin/nologin" + },{ + "username": "sys", + "password": "x", + "uid": "3", + "gid": "3", + "gecos": "sys", + "homedirectory": "/dev", + "shell": "/usr/sbin/nologin" + },{ + "username": "sync", + "password": "x", + "uid": "4", + "gid": "65534", + "gecos": "sync", + "homedirectory": "/bin", + "shell": "/bin/sync" + } + ] +} +``` diff --git a/template/contributors.ejs b/template/contributors.ejs index 77ec8c5d696..65bfe00654f 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -18,45 +18,46 @@ Zijing Zhang Fubin Zhang __FresHmaN -dulltackle -ernest 谈笑风生间 +ernest +dulltackle zyy2477 -rgshare -loverainye -lavaicer -YEUNGCHIE SteveLauC +YEUNGCHIE MioMuse James Wang +lavaicer +loverainye +rgshare Qliangw -Wang Yujia -alfred 沙漠之子 +Wang Yujia Shell xhal will VVatt gggwvg -Dazhuangw -Alterem -YH -Xrtero -Xingwen Zhang -Shan Chenyu -RichardLCD -Pan, Wen-Ming -Jeremy2214 +alfred +duzhuoshanwai +Ein Verne BingCoke FunKeen -Ein Verne -lewis1573 -leo -kid1412621 -kassadin -juemuren4449 +Jeremy2214 +Pan, Wen-Ming +QinShower +RichardLCD +Shan Chenyu +Xingwen Zhang +Xrtero +YH +Alterem +Dazhuangw jqz3.tech -Forever121 +juemuren4449 +kassadin +kid1412621 +leo +lewis1573 linuxwd Ricardowang cole @@ -65,55 +66,54 @@ noodles2hg nsnans oliver -cxalc -dayday -Deny -dongpohezui -duzhuoshanwai -ecjtusbs -gang.yang -gedune -gesty -ghy -githubwxz -gcluffy -hotdogc1017 -huangyao -hululu1068 jcdj666 -七朔 -孤城落寞 -尘埃 -Wei Xu -Loofra -扶苏如是 -ReZero -极简XksA -移动的红烧肉 -继刚 -老犁 -Kyofin -谢民皆 -远方 -bycs +hululu1068 +huangyao +hotdogc1017 +gcluffy +githubwxz +ghy +gesty +gedune +gang.yang +ecjtusbs +dongpohezui +Deny +dayday +cxalc +Q.Ben Zheng Yidan Wang -rexlin600 -sfwwslm -shc -shuangcui -snovey -tangke -tutianyu101 -UniqueDing -weibk -Lingfeng Wang -yanyx -zjlovezj -zodiac -zoomdong -zuixin369 +bycs +远方 +谢民皆 +Kyofin +老犁 +继刚 +移动的红烧肉 +极简XksA +ReZero +扶苏如是 +Loofra +Wei Xu +尘埃 +孤城落寞 +七朔 zyimm -Q.Ben Zheng +zuixin369 +zoomdong +zodiac +zjlovezj +yanyx +Lingfeng Wang +weibk +UniqueDing +tutianyu101 +tangke +snovey +shuangcui +shc +sfwwslm +rexlin600 Mystic MinsonLee Marnm @@ -141,9 +141,10 @@ Danny DaYangtuo247 Cui Yang -Azroy +azroy Alan 0x_000 +Forever121 chaofan c2ch brinkqiang @@ -173,8 +174,7 @@ Rocher Robigus Rining Wu -Ray Yee -QinShower +Ray Yee

数据来源于 GitHub Contributors,使用action-contributors创建。 From 2507c01aefb7b642ffbd29a2eee99a7d452183d7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 11 Jan 2025 03:08:24 +0000 Subject: [PATCH 565/566] doc: update README.md. --- README.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 79063b9841c..fc680067304 100644 --- a/README.md +++ b/README.md @@ -312,24 +312,23 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. ernest dulltackle zyy2477 +rgshare +loverainye SteveLauC YEUNGCHIE +lavaicer MioMuse James Wang -lavaicer -loverainye -rgshare -Qliangw +Ein Verne +gggwvg +VVatt +will +xhal +Shell 沙漠之子 +Qliangw Wang Yujia -Shell -xhal -will -VVatt -gggwvg alfred -duzhuoshanwai -Ein Verne BingCoke FunKeen Jeremy2214 @@ -367,11 +366,11 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. gedune gang.yang ecjtusbs +duzhuoshanwai dongpohezui Deny dayday cxalc -Q.Ben Zheng Yidan Wang bycs 远方 @@ -404,6 +403,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. shc sfwwslm rexlin600 +Q.Ben Zheng Mystic MinsonLee Marnm From b8469913bda874ad4e6565feeb82b03a5123be22 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 11 Jan 2025 03:08:24 +0000 Subject: [PATCH 566/566] doc: update template/contributors.ejs. --- template/contributors.ejs | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/template/contributors.ejs b/template/contributors.ejs index 65bfe00654f..6baa3744322 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -22,24 +22,23 @@ ernest dulltackle zyy2477 +rgshare +loverainye SteveLauC YEUNGCHIE +lavaicer MioMuse James Wang -lavaicer -loverainye -rgshare -Qliangw +Ein Verne +gggwvg +VVatt +will +xhal +Shell 沙漠之子 +Qliangw Wang Yujia -Shell -xhal -will -VVatt -gggwvg alfred -duzhuoshanwai -Ein Verne BingCoke FunKeen Jeremy2214 @@ -77,11 +76,11 @@ gedune gang.yang ecjtusbs +duzhuoshanwai dongpohezui Deny dayday cxalc -Q.Ben Zheng Yidan Wang bycs 远方 @@ -114,6 +113,7 @@ shc sfwwslm rexlin600 +Q.Ben Zheng Mystic MinsonLee Marnm