diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index abe8b762fe5..ce92c74ed0d 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,3 +1,4 @@ -ko_fi: jaywcjlove -buy_me_a_coffee: jaywcjlove -custom: ["https://www.paypal.me/kennyiseeyou", "https://jaywcjlove.github.io/#/sponsor"] +github: [jaywcjlove] +#ko_fi: jaywcjlove +#buy_me_a_coffee: jaywcjlove +# custom: ["https://wangchujiang.com/#/sponsor"] diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c8dcecc907c..ccb244953b2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,10 +11,10 @@ jobs: contents: write id-token: write steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: - node-version: 20 + node-version: 24 registry-url: 'https://registry.npmjs.org' - name: Generate Contributors Images @@ -66,7 +66,7 @@ jobs: - name: Update Dash Feed run: | - echo "${{steps.create_tag.outputs.versionNumber}}https://jaywcjlove.github.io/linux-command/linux-command.docset.tgz"> .deploy/linux-command-docset.xml + echo "${{steps.create_tag.outputs.versionNumber}}https://github.com/jaywcjlove/linux-command/releases/download/${{steps.create_tag.outputs.version}}/linux-command.docset.tgz"> .deploy/linux-command-docset.xml - name: Generate Changelog id: changelog @@ -124,6 +124,7 @@ jobs: ``` - run: rm -rf .deploy/linux-command.docset + - run: rm -rf .deploy/linux-command.docset.tgz - name: Deploy uses: peaceiris/actions-gh-pages@v4 @@ -134,11 +135,9 @@ jobs: user_name: github-actions[bot] user_email: github-actions[bot]@users.noreply.github.com - - run: npm publish --access public --provenance + - run: NODE_AUTH_TOKEN="" npm publish --access public --provenance continue-on-error: true name: 📦 linux-command publish to NPM - env: - NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} # Create Docker Image - name: Set up Docker Buildx @@ -165,66 +164,3 @@ jobs: context: . platforms: linux/amd64,linux/arm64 tags: ${{ secrets.DOCKER_USER }}/linux-command:${{steps.changelog.outputs.version}} - - # # Create Docker Image in Github - # - name: Login to the GitHub Container Registry - # uses: docker/login-action@v2 - # with: - # registry: ghcr.io - # username: ${{ github.actor }} - # password: ${{ secrets.GITHUB_TOKEN }} - - # - name: Build and push image:latest - # uses: docker/build-push-action@v6 - # with: - # push: true - # context: . - # platforms: linux/amd64,linux/arm64 - # tags: ghcr.io/jaywcjlove/linux-command:latest - - # - name: Build and push image:tags - # uses: docker/build-push-action@v6 - # if: steps.create_tag.outputs.successful - # with: - # push: true - # context: . - # platforms: linux/amd64,linux/arm64 - # tags: ghcr.io/jaywcjlove/linux-command:${{steps.changelog.outputs.version}} - - # # Create Docker Image - # - name: Docker login - # run: docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} - - # - name: Build linux-command image - # run: | - # rm -rf .deploy/linux-command.docset.tgz - # docker image build -t linux-command . - - # - name: Tags & Push image(latest) - # run: | - # docker tag linux-command ${{ secrets.DOCKER_USER }}/linux-command:latest - # docker push ${{ secrets.DOCKER_USER }}/linux-command:latest - - # - name: Tags & Push image - # if: steps.create_tag.outputs.successful - # run: | - # echo "outputs.tag - ${{ steps.changelog.outputs.version }}" - # docker tag linux-command ${{ secrets.DOCKER_USER }}/linux-command:${{steps.changelog.outputs.version}} - # docker push ${{ secrets.DOCKER_USER }}/linux-command:${{steps.changelog.outputs.version}} - - # # Create Docker Image in Github - # - name: Login to GitHub registry - # run: echo ${{ github.token }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin - - # - name: Build docker image - # run: docker build -t ghcr.io/jaywcjlove/linux-command:latest . - - # - name: Publish to GitHub registry - # run: docker push ghcr.io/jaywcjlove/linux-command:latest - - # - name: Tag docker image (beta) and publish to GitHub registry - # if: steps.create_tag.outputs.successful - # run: | - # echo "version: v${{ steps.changelog.outputs.version }}" - # docker tag ghcr.io/jaywcjlove/linux-command:latest ghcr.io/jaywcjlove/linux-command:${{steps.changelog.outputs.version}} - # docker push ghcr.io/jaywcjlove/linux-command:${{steps.changelog.outputs.version}} diff --git a/README.md b/README.md index eccb6b37e1b..6871eb31f37 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,26 @@ +
+ Special thanks to: +
+
+ + + doloffer sponsorship + +
+ DolOffer - 一站式数字订阅充值平台
+ 主营 GPT、Claude 等 AI 多类数字服务会员正版订阅,9 折优惠码 AI8888,极速发货,售后无忧

+ + + Fakey sponsorship + +
+ Fakey - Manga Translator
+ Available for Android, iOS and browser extension

+ +

+
+
+

@@ -5,12 +28,12 @@

Linux Command

-[![Buy me a coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor) +[![Buy me a coffee](https://img.shields.io/badge/Buy_Me_a_Coffee-ffdd00?logo=buy-me-a-coffee&logoColor=black)](https://jaywcjlove.github.io/#/sponsor) +[![Follow On X](https://img.shields.io/badge/Follow%20on%20X-333333?logo=x&logoColor=white)](https://x.com/jaywcjlove) [![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) [![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) [![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/wcjiang/linux-command?logo=docker)](https://hub.docker.com/r/wcjiang/linux-command) 当前仓库搜集了 600 多个 Linux 命令,是一个非盈利性的仓库,生成了一个 web 网站方便使用,目前网站没有任何广告,内容包含 Linux 命令手册、详解、学习,内容来自网络和网友的补充,非常值得收藏的 Linux 命令速查手册。版权归属原作者,对任何法律问题及风险不承担任何责任,没有任何商业目的,如果认为侵犯了您的版权,请来信告知。我不能完全保证内容的正确性。通过使用本站内容带来的风险与我无关。当使用本站时,代表您已接受了本站的使用条款和隐私条款。 @@ -20,58 +43,125 @@ 非常感谢一直以来支持我开源项目的朋友们!如果您认可我的工作,欢迎通过 [赞助](https://wangchujiang.com/#/sponsor) 我或下载并使用我开发的 [macOS 应用](https://wangchujiang.com/#/app) 来支持我。以下是我个人独立开发的 macOS 应用列表:

- Mousio - Musicer - Audioer - FileSentinel - FocusCursor - Videoer - KeyClicker - DayBar - Iconed - RightMenu Master - Quick RSS - Quick RSS - Web Serve - Copybook Generator - DevTutor for SwiftUI - RegexMate - Time Passage - Iconize Folder - Textsound Saver - Create Custom Symbols - DevHub - Resume Revise - Palette Genius - Symbol Scribe + Zipora: Zip/RAR/7Z 解压工具 + Scap: Screenshot & Markup Edit + Screen Test + Deskmark + Keyzer + Vidwall Hub + VidCrop + Vidwall + Mousio Hint + Mousio + Musicer + Audioer + FileSentinel + FocusCursor + Videoer + KeyClicker + DayBar + Iconed + Menuist + Quick RSS + Quick RSS + Web Serve + Copybook Generator + DevTutor for SwiftUI + RegexMate + Time Passage + Iconize Folder + Textsound Saver + Create Custom Symbols + DevHub + Resume Revise + Palette Genius + Symbol Scribe

## Web 版本 -[Github Web](http://jaywcjlove.github.io/linux-command/) | [Gitee Web](http://jaywcjlove.gitee.io/linux-command/) | [Githack](https://raw.githack.com/jaywcjlove/linux-command/gh-pages/index.html) | [Statically](https://cdn.statically.io/gh/jaywcjlove/linux-command/gh-pages/index.html) +[Github Web](http://jaywcjlove.github.io/linux-command/) | [Githack](https://raw.githack.com/jaywcjlove/linux-command/gh-pages/index.html) | [Statically](https://cdn.statically.io/gh/jaywcjlove/linux-command/gh-pages/index.html) | [English](https://benben17.github.io/linux-command) 扫描二维码移动端预览搜索,也可通过二维码下面链接地址打开使用,下面网站是通过 Github Action 自动更新。 -⚠️ [Gitee Web](http://jaywcjlove.gitee.io/linux-command/) 存在 `违禁违规` 内容问题 [#283](https://github.com/jaywcjlove/linux-command/issues/283)。 - [![Linux 命令大全](https://user-images.githubusercontent.com/1680273/123261718-ab585380-d529-11eb-86e1-e97cdcd78150.png)](https://jaywcjlove.github.io/linux-command/) 预览搜索:**https://git.io/linux** [![Linux 命令大全](https://user-images.githubusercontent.com/1680273/123261829-ce830300-d529-11eb-8cea-a39059b972dd.gif)](https://jaywcjlove.github.io/linux-command/) -你可以随意部署 web 版,这非常简单,只需要克隆 [`gh-pages`](https://github.com/jaywcjlove/linux-command/tree/gh-pages) 分支代码到你的静态服务就可以了。你也可以将 [`command`](https://github.com/jaywcjlove/linux-command/tree/master/command) 目录中的 Markdown 文件拿去自己生成 HTML。还可以使用下方 docker 方法部署 web 版。 +你可以随意部署 web 版,这非常简单,只需要克隆 [gh-pages](https://github.com/jaywcjlove/linux-command/tree/gh-pages) 分支代码到你的静态服务就可以了。你也可以将 [`command`](https://github.com/jaywcjlove/linux-command/tree/master/command) 目录中的 Markdown 文件拿去自己生成 HTML。还可以使用下方 [Docker 部署](#docker-部署) web 版。 -⚠️ 你们拿过去部署的静态网站,还是希望挂个 GitHub 地址,这样大家共同维护命令文档,让文档更加完善,更加丰富,当然你删除本站所有信息相关信息,其实我也不太在意,默认允许你们随意搞,我不负任何负责。如果您也部署了一份,可以将网址放到下面 :)。 +⚠️ 部署的静态网站,还是希望挂个 GitHub 地址,这样大家共同维护命令文档,让文档更加完善,更加丰富,当然删除本站所有相关信息,其实我也不太在意,默认允许你们随意搞,我不负任何负责。如果您也部署了一份,可以将网址放到下面 :)。 + +由于中国国内访问,时常打不开,你可以访问下面镜像网站。也可以通过推荐或提交 PR 的方式添加你的[镜像站 #649](https://github.com/jaywcjlove/linux-command/issues/649#issue-3141950597),以提升权重并加快搜索引擎收录。 **推荐使用的镜像 web 版本** -[**`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.top`](https://linux.alistnas.top/),[`nenufm.com`](https://www.nenufm.com/linux-command/), [`linux.jiangyang.online`](https://linux.jiangyang.online/) +[**`itool123.cn`**](https://linux.itool123.cn) +[**`235978.xyz`**](https://linux-command.235978.xyz) +[**`hycer.cn`**](https://linux.hycer.cn) +[**`chaoxi.online`**](https://linux.chaoxi.online) +[**`iced.eu.org`**](https://command.iced.eu.org/) +[**`85604608.xyz`**](https://85604608.xyz) +[**`ykkit.cn`**](https://linux.ykkit.cn) +[**`geekswg.js.cool`**](https://geekswg.js.cool/linux-command/) +[**`szsyw.cn`**](https://projects.szsyw.cn/linux/) +[**`lukix.xyz`**](https://linux.lukix.xyz/) +[**`lihaicheng.cn`**](https://linux.lihaicheng.cn) +[**`kkcry.com`**](https://linux.kkcry.com) +[**`dyh1319.asia`**](https://linux.dyh1319.asia) +[**`qqcl.com`**](https://linux.qqcl.com/) +[**`huiyex.top`**](https://linux.huiyex.top) +[**`wu114.cn`**](https://linux.wu114.cn) +[**`waadri.top`**](https://linuxcommand.waadri.top) +[**`zanglikun.com`**](https://linux.zanglikun.com) +[**`alapi.cn`**](https://linux.alapi.cn) +[**`fasfuah.icu`**](https://linux.fasfuah.icu) +[**`cnxiaobai.com`**](https://linux.cnxiaobai.com) +[**`sicangge.com`**](https://linux.sicangge.com) +[**`largeinfo.cc`**](http://linuxsearch.largeinfo.cc) +[**`srebro.cn`**](https://linux.srebro.cn/) +[**`getaifun.com`**](https://getaifun.com/linux) +[**`devonline.net`**](http://linux.devonline.net/) +[**`man.zch.ooo`**](https://man.zch.ooo/) +[**`mmoke.com`**](https://linux.mmoke.com) +[**`bqrdh.com`**](https://tools.bqrdh.com/linux-command/) +[**`zyimm.com`**](http://linux.zyimm.com/) +[**`vovuo.com`**](https://linux.vovuo.com/) +[**`shinote.net`**](https://linux.shinote.net/) +[**`dogexorg.com`**](http://linux.dogexorg.com/) +[**`alexander.xin`**](https://linux-command.alexander.xin/) +[`vekicc.com`](https://ll.vekicc.com/) +[`liguiying.cn`](https://linux.liguiying.cn/) +[`renye.net`](https://renye.net/) +[`diqi.org`](https://diqi.org/) +[`alistnas.top`](https://linux.alistnas.top/) +[`nenufm.com`](https://www.nenufm.com/linux-command/) +[`jiangyang.online`](https://linux.jiangyang.online/) +[`xiyung.cn`](https://xiyung.cn/linux-command/) +[`78888889.xyz`](https://linux-command.78888889.xyz/) **其它 web 版本** -[`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/),[`buyao.vip`](https://demo.buyao.vip/linux/),[`hezhiqiang.gitbook.io`](https://hezhiqiang.gitbook.io/linux/),[`utils.fun`](https://linux.utils.fun/), [`51tools.info`](https://51tools.info/linux/) - +[`briline.net`](http://linux.briline.net) +[`pkslow.com`](https://www.pkslow.com/linux-commands/index.html) +[`ifdev.cn`](https://cmd.ifdev.cn) +[`witnect.top`](https://witnect.top/) +[`lylme.com`](https://linux.lylme.com/) +[`ftqq.com`](https://linux.ftqq.com/) +[`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/) +[`buyao.vip`](https://demo.buyao.vip/linux/) +[`hezhiqiang.gitbook.io`](https://hezhiqiang.gitbook.io/linux/) +[`utils.fun`](https://linux.utils.fun/) +[`51tools.info`](https://51tools.info/linux/) +[`ddosi.org`](https://www.ddosi.org/linux-cmd/) +[`jin2005-issues.github.io`](https://jin2005-issues.github.io/linux-command.github.io) ## 其它版本 - [KDE/Krunner](https://github.com/roachsinai/krunner-linuxcommands) @@ -84,7 +174,7 @@ - [`@chenjiandongx/how`](https://github.com/chenjiandongx/how) Python 版 [#129](https://github.com/jaywcjlove/linux-command/issues/129),由 [**@陈键冬**](https://github.com/chenjiandongx) 提供 - [`@chenjiandongx/pls`](https://github.com/chenjiandongx/pls) Golang 版 [#129](https://github.com/jaywcjlove/linux-command/issues/129),由 [**@陈键冬**](https://github.com/chenjiandongx) 提供 -## Docker +## Docker 部署 [![Docker Image Version (latest by date)](https://img.shields.io/docker/v/wcjiang/linux-command?logo=docker)](https://hub.docker.com/r/wcjiang/linux-command) [![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/wcjiang/linux-command?logo=docker)](https://hub.docker.com/r/wcjiang/linux-command) [![Docker Pulls](https://img.shields.io/docker/pulls/wcjiang/linux-command?logo=docker)](https://hub.docker.com/r/wcjiang/linux-command) @@ -92,16 +182,12 @@ ```bash docker pull wcjiang/linux-command -# Or -docker pull ghcr.io/jaywcjlove/linux-command:latest ``` ```bash docker run --name linux-command --rm -d -p 9665:3000 wcjiang/linux-command:latest # Or docker run --name linux-command -itd -p 9665:3000 wcjiang/linux-command:latest -# Or -docker run --name linux-command -itd -p 9665:3000 ghcr.io/jaywcjlove/linux-command:latest ``` 在浏览器中访问以下 URL @@ -125,6 +211,22 @@ http://localhost:9665/ 通过 Vercel 分配的域名访问,或者自行在设置中绑定域名。 + +## Netlify + +可以点击下面按钮一键部署至 [Netlify](https://netlify.com): + +[![Deploy to Netlify Button](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/jaywcjlove/linux-command) + +
+部署结果 + +![](./assets/netlify.png) + +
+ +通过 Netlify 分配的域名访问,或者自行在设置中绑定域名。 + ## 宝塔面板 可通过宝塔面板应用商店快速部署 linux-command @@ -160,6 +262,47 @@ http://localhost:9665/ +## 1Panel面板 + +可通过1Panel面板应用商店快速部署 linux-command + +
+部署步骤 + +### 前提 + +- 仅适用于1Panel面板v1.10.32-lts及以上版本 + +- 安装1Panel面板,前往[1Panel](https://1panel.cn/)官网,选择正式版安装脚本下载安装 + +### 部署 + +1. 登录1Panel面板,在左侧菜单栏中点击 `应用商店` +2. 在 `应用商店-开发工具` 中找到 `linux-command`,点击`安装`,也可以在搜索框直接搜索 +3. 点击 `确定` + +- 说明: + + - 名称:应用名称,默认 `linux-command` + - 版本:默认最新发行版 + - 端口:默认`40255` + - 端口外部访问:如你需通过 `IP+Port` 直接访问,请勾选,同时会开放服务器防火墙端口 + - CPU限制:默认为0,不限制,可根据实际需要设置 + - 内存限制:默认为0,不限制,可根据实际需要设置 + +4. 提交后面板会自动进行应用安装启动,应用状态会变为`安装中`,大概需要`1-3`分钟,耐心等待安装完成 +5. 当应用状态变为`已启动`后,点击左侧的网站,首次使用需要安装`OpenResty`,点击`安装` +6. 安装完成后,点击`网站`菜单栏左上角`创建`,在弹出的页面中选择`反向代理` +7. 在`主域名`填入你的域名,网站代号会自动生成,代理选择`http`,代理地址填写`127.0.0.1:40255`,点击`确定` +8. (可选) 配置你创建的网站,可根据需要配置`https`访问增强访问安全性 + +### 访问 linux-command + +- 如果你通过`OpenResty`反向代理反代了网站,并且填写了域名,请在浏览器输入`域名`访问 +- 如你选择了 `端口外部访问`,请在浏览器地输入 `http://<1panel面板ip>:40255` 访问 + +
+ ## Linux命令分类 *这里存放Linux 命令大全并不全,你可以通过[linux-command](https://jaywcjlove.github.io/linux-command/)来搜索,它是把 [command](./assets/command) 目录里面搜集的命令,生成了静态HTML并提供预览以及索引搜索。* @@ -253,7 +396,7 @@ https://raw.githubusercontent.com/jaywcjlove/linux-command/master/command/<命 ### 社区网站 - [Linux中国](https://linux.cn/) - 各种资讯、文章、技术 -- [实验楼](https://www.shiyanlou.com/) - 免费提供了Linux在线环境,不用在自己机子上装系统也可以学习Linux,超方便实用。 +- [LabEx](https://labex.io/) - 免费提供了Linux在线环境,不用在自己机子上装系统也可以学习Linux,超方便实用。 - [鸟哥的linux私房菜](http://linux.vbird.org/) - 非常适合Linux入门初学者看的教程。 - [Linux公社](http://www.linuxidc.com/) - Linux相关的新闻、教程、主题、壁纸都有。 - [Linux Today](http://www.linuxde.net) - Linux新闻资讯发布,Linux职业技术学习!。 @@ -263,10 +406,9 @@ https://raw.githubusercontent.com/jaywcjlove/linux-command/master/command/<命 - [Linux思维导图整理](http://www.jianshu.com/p/59f759207862) - [Linux初学者进阶学习资源整理](http://www.jianshu.com/p/fe2a790b41eb) -- [Linux 基础入门(新版)](https://www.shiyanlou.com/courses/1) +- [Linux 新手入门(动手实验)](https://labex.io/zh/courses/linux-for-noobs) - [【译】Linux概念架构的理解](http://www.jianshu.com/p/c5ae8f061cfe) [En](http://oss.org.cn/ossdocs/linux/kernel/a1/index.html) - [Linux 守护进程的启动方法](http://www.ruanyifeng.com/blog/2016/02/linux-daemon.html) -- [Linux编程之内存映射](https://www.shiyanlou.com/questions/2992) - [Linux知识点小结](https://blog.huachao.me/2016/1/Linux%E7%9F%A5%E8%AF%86%E7%82%B9%E5%B0%8F%E7%BB%93/) - [10大白帽黑客专用的 Linux 操作系统](https://linux.cn/article-6971-1.html) @@ -333,62 +475,71 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. L 圆头圆脑 clay-wangzhi -Glett 烟草的香味 -Jayin Tang +Glett 丛林意志 -Zijing Zhang -Fubin Zhang +Jayin Tang +Shan Chenyu __FresHmaN -dulltackle +Fubin Zhang +Zijing Zhang +JiangHuDao ernest +dulltackle 谈笑风生间 zyy2477 rgshare -loverainye -lavaicer -YEUNGCHIE -James Wang MioMuse -Xrtero -Shan Chenyu +Jeremy2214 SteveLauC +James Wang +Xrtero +YEUNGCHIE duzhuoshanwai -gggwvg -VVatt -will -xhal -Shell -沙漠之子 +lavaicer +loverainye alfred -Wang Yujia Qliangw -Dazhuangw -Alterem -YH -Xingwen Zhang -RichardLCD -QinShower -Pan, Wen-Ming -Jeremy2214 +沙漠之子 +永恒 +Wang Yujia +Shell +H Liu +will +VVatt +jcdj666 +gggwvg BingCoke -FunKeen +Abrillant Lee Ein Verne -lewis1573 -leo -NanoNova -kassadin -juemuren4449 +FunKeen +Skuld +Jinzhou Huang +KrisMagic +Pan, Wen-Ming +QinShower +RichardLCD +Xingwen Zhang +YH +Alterem +Dazhuangw +hululu1068 +illmons jqz3.tech -jcdj666 +juemuren4449 +kassadin +NanoNova +kmephistoh +leo +lewis1573 linuxwd Ricardowang cole dufu miniwater noodles2hg -nsnans -zyimm +Forever121 +cxalc dayday Deny dongpohezui @@ -403,9 +554,8 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. hanwei gcluffy hotdogc1017 -huangyao -hululu1068 -illmons +Mr.BigBelly +oliver 七朔 孤城落寞 尘埃 @@ -414,6 +564,7 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 扶苏如是 ReZero 极简XksA +淘金的小宇 移动的红烧肉 继刚 老犁 @@ -422,61 +573,64 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. 远方 bycs Yidan Wang -oliver rexlin600 -sfwwslm +gwj shc shuangcui snovey tangke -tutianyu101 +可爱软萌喵 UniqueDing waiwai weibk Lingfeng Wang -yanyx +yanyx zjlovezj zodiac zoomdong zuixin369 -0x_000 +zyimm +Jack +Jack.A.Black +Jelly Nexchard Karl Horky LaudOak Legend LexsionLee -孟思行 +hengli Lin Wuxian -LinuxZilong +zlshi6 Lix Lucien Wang mwei Marnm -MinsonLee -Mystic -Q.Ben Zheng -Alan +XBG +0x_000 +AlenPann azroy Cui Yang +DYH1319 DaYangtuo247 Danny -Derek +Lucas Zhao Divenire -Frankie -Github1977 +Dongyan Qian +Everything-is-one +Frankie Guiying Li +Hang 重劍無鋒 HighScorePlayer Huntout Zhang -Jack -Jack.A.Black -Jelly +Xiaodong DENG Xonline-Tech Xu Chunyang Yan Sheng Yunbin Liu 0Knot (0KN) +Zlanghu One Person’s Revelry amit794 Ashine @@ -486,8 +640,9 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. brinkqiang c2ch chaofan -Forever121 -cxalc +MinsonLee +Mystic +Q.Ben Zheng Ray Yee Rining Wu Robigus @@ -502,8 +657,6 @@ Adobe软件的最佳替代品 [原文在这里](https://linux.cn/article-8928-1. T-TRz879 Na Meng Wingrez -XBG -Xiaodong DENG diff --git a/assets/netlify.png b/assets/netlify.png new file mode 100644 index 00000000000..b874b04c708 Binary files /dev/null and b/assets/netlify.png differ diff --git a/command/apk.md b/command/apk.md index 153480507f6..724b7ce7845 100644 --- a/command/apk.md +++ b/command/apk.md @@ -27,8 +27,8 @@ apk add --upgrade busybox # 指定升级部分软件包 ### 搜索 ```shell -apk search # 查找所以可用软件包 -apk search -v # 查找所以可用软件包及其描述内容 +apk search # 查找所有可用软件包 +apk search -v # 查找所有可用软件包及其描述内容 apk search -v 'acf*' # 通过软件包名称查找软件包 apk search -v -d 'docker' # 通过描述文件查找特定的软件包 ``` @@ -128,4 +128,4 @@ rc-update add sshd /etc/init.d/sshd start /etc/sshd_config apk add dropbear # another openssh implementation -``` \ No newline at end of file +``` diff --git a/command/badblocks.md b/command/badblocks.md index dbd00a31a20..39526f00d0a 100644 --- a/command/badblocks.md +++ b/command/badblocks.md @@ -27,7 +27,7 @@ badblock(选项)(参数) * 磁盘装置:指定要检查的磁盘装置; * 磁盘区块数:指定磁盘装置的区块总数; -* 启始区块:指定要从哪个区块开始检查。 +* 起始区块:指定要从哪个区块开始检查。 ### 实例 @@ -77,7 +77,7 @@ badblocks可以随e2fsck和mke2fs的-c删除一起运行(对ext3文件系统 mkfs.ext3 -c /dev/hda1 ``` -代码表示使用-c在创建文件系统前检查坏道的硬盘。 +命令表示使用-c在创建文件系统前检查坏道的硬盘。 这个操作已经很清楚地告知我们可以采用`mkfs.ext3 -c`选项用`read-only`方式检查硬盘。这个命令会在格式化硬盘时检查硬盘,并标出错误的硬盘"block"。用这个方法格式化硬盘,需要有相当大的耐心,因为命令运行后,会一个个用读的方式检查硬盘。 diff --git a/command/beep.md b/command/beep.md new file mode 100644 index 00000000000..c1b58accfc5 --- /dev/null +++ b/command/beep.md @@ -0,0 +1,188 @@ +beep +=== + +用于控制 PC 扬声器发出蜂鸣声的命令行工具。 + +## 介绍 + +`beep` 是一个用于精确控制 PC 扬声器发出蜂鸣声的命令行工具。它可以生成不同频率、时长、重复次数和延迟的蜂鸣音,支持将多个音调组合成序列,或根据标准输入(stdin)的换行符/字符触发蜂鸣。该工具常用于 shell 或 Perl 脚本中,在特定事件发生时向用户发出音频提示。 + +**注意**:`beep` 需要 PC 扬声器硬件支持,通常需要加载 `pcspkr` 内核模块,并且对输出设备具有写入权限。 + +## 安装 +Debian/Ubuntu: +```bash +sudo apt install beep +``` + +RedHel/Centos/Fedora: +```bash +sudo yum install beep +``` + +## 语法 +```bash +beep [全局选项] [音调选项] [-n|--new 音调选项...]... +beep [-h|--help] +beep [-v|-V|--version] +``` + +## 选项说明 + +### 信息选项 +| 选项 | 描述 | +|----------------|-----------------------------------| +| `-h, --help` | 显示帮助信息并退出。 | +| `-v, -V, --version` | 显示版本信息并退出。 | + +### 全局选项 +| 选项 | 描述 | +|---------------------------|-------------------------------------------------------------| +| `-e, --device=DEVICE` | 显式指定用于输出蜂鸣的设备。若不指定,`beep` 会依次尝试内部设备列表直到成功。 | +| `--debug, --verbose` | 启用详细输出,显示调试信息。 | + +### 音调选项 +每个音调可以由以下选项组合定义。若未指定,使用默认值。 + +| 选项 | 描述 | +|--------------------|---------------------------------------------------------------------| +| `-f FREQ` | 设置蜂鸣频率(单位:Hz)。必须满足 0 < FREQ < 20000。可接受浮点数,但内核 API 会取整为整数。默认值:440 Hz。 | +| `-l LEN` | 设置蜂鸣时长(单位:ms)。默认值:200 ms。 | +| `-r REPEATS` | 设置当前音调的重复次数(包括延迟)。默认值:1(仅一次,无重复)。 | +| `-d DELAY` | 设置重复之间的延迟(单位:ms),**不**在最后一次重复后添加延迟。默认值:100 ms。 | +| `-D DELAY` | 设置重复之间的延迟(单位:ms),**并**在最后一次重复后也添加该延迟。默认无延迟。 | +| `-n, --new` | 开始定义一个新的音调。每个 `-n` 之后可以跟一组新的音调选项,新音调继承所有默认值,直到被显式选项覆盖。 | +| `-s` | 将 `beep` 置于输入处理模式:从标准输入读取数据,每遇到一个**换行符**就发出当前定义的音调一次,同时将输入数据原样复制到标准输出。 | +| `-c` | 与 `-s` 类似,但每遇到一个**字符**就触发一次蜂鸣。 | + +**注意**: +- `-d` 和 `-D` 的区别:`-r 3 -d 100` 产生:蜂鸣、延迟、蜂鸣、延迟、蜂鸣(结束);`-r 3 -D 100` 产生:蜂鸣、延迟、蜂鸣、延迟、蜂鸣、延迟(结束)。 +- 在一个由 `-n` 连接的多个音调序列中,**只能有一个音调**带有 `-s` 或 `-c`。`beep` 会先播放该音调之前的所有音调,然后进入输入处理模式,根据输入重复该音调,直到输入结束(EOF),最后再播放剩余的音调(如果有)。 +- 如果某个选项在命令行中重复出现,后面的选项会覆盖前面的。 + + +## 环境变量 +| 变量名 | 描述 | +|------------------|---------------------------------------------------------------------| +| `BEEP_LOG_LEVEL` | 设置日志级别(取值范围 -999 到 999)。若未在命令行使用 `--debug`,则以此值为默认日志级别。 | + + +## 文件 +`beep` 默认依次尝试打开以下设备,直到成功为止: +- `/dev/input/by-path/platform-pcspkr-event-spkr`(使用 evdev API) +- `/dev/tty0`(使用 console API) +- `/dev/vc/0`(使用 console API) + + +## 退出状态 +| 状态码 | 含义 | +|--------|--------------------------| +| 0 | 成功执行 | +| 非0 | 发生错误(如设备无法打开、无效参数等) | + + +## 注意事项 + +### 设备和权限 +- **非 root 用户**:默认情况下,`/dev/tty0` 和 `/dev/vc/0` 需要 root 权限或拥有当前 TTY。推荐使用 evdev 设备 `/dev/input/by-path/platform-pcspkr-event-spkr`,可以通过 udev 规则为该设备设置适当的权限,使普通用户也能使用 `beep`。 +- `beep` **不支持**以 setuid root 或通过 `sudo` 运行。请通过文件权限或 udev 规则授权。 +- 如果命令不能正常执行,请检查 `pcspkr` 模块是否加载。 + +### API 说明 +- **evdev**:使用输入事件设备驱动,通过 `write()` 操作。打开设备耗时约 20ms,因此若要演奏旋律,建议在单个 `beep` 命令中使用多个音调(通过 `-n`),而不是多次调用 `beep`。 +- **console**:使用古老的 `KIOCSOUND ioctl` 接口,仅当用户登录到虚拟控制台(如 `/dev/tty4`)且拥有该终端时才可无 root 使用。对通过 SSH 或图形界面登录的用户不适用。 + +### 并发调用 +`beep` 不支持并发运行。PC 扬声器硬件只有一个发声器,多个 `beep` 进程会相互干扰。例如,一个长蜂鸣进程正在运行时,另一个短蜂鸣进程会中断前者,且前者之后会静默关闭扬声器,导致预期外的静音。 + +### 音量控制 +- 独立 PC 通常使用压电蜂鸣器,其音量与频率相关,接近共振频率(约 2000 Hz)时最响。可尝试 2050 Hz 左右获得最大音量。 +- 笔记本电脑可能将 PC 扬声器输出路由到内置扬声器,此时可通过声卡混音器调节"Beeper"或"PC Speaker"通道的音量。 + +### 频率参考表 +以下是音乐音符与频率的对应关系。 + +| 音符 | 八度 3 | 八度 4 | 八度 5 | 八度 6 | +|------|--------|--------|--------|--------| +| C | 131 | 262 | 523 | 1047 | +| C# | 139 | 277 | 554 | 1109 | +| D | 147 | 294 | 587 | 1175 | +| D# | 156 | 311 | 622 | 1245 | +| E | 165 | 330 | 659 | 1319 | +| F | 175 | 349 | 698 | 1397 | +| F# | 185 | 370 | 740 | 1480 | +| G | 196 | 392 | 784 | 1568 | +| G# | 208 | 415 | 831 | 1661 | +| A | 220 | 440 | 880 | 1760 | +| A# | 233 | 466 | 932 | 1865 | +| B | 247 | 494 | 988 | 1976 | +| C | 262 | 523 | 1047 | 2093 | + + +## 实例 + +### 1. 简单蜂鸣 +```bash +beep +``` +发出默认蜂鸣(440 Hz,200 ms)。 + +### 2. 指定频率和时长 +```bash +beep -f 800 -l 500 +``` +发出 800 Hz 的蜂鸣,持续 500 毫秒。 + +### 3. 重复蜂鸣 +```bash +beep -f 600 -l 100 -r 3 -d 50 +``` +重复 3 次,每次 100 毫秒,间隔 50 毫秒,最后一次后无延迟。 + +```bash +beep -f 600 -l 100 -r 3 -D 50 +``` +重复 3 次,每次 100 毫秒,间隔 50 毫秒,且最后一次后也有 50 毫秒延迟。 + +### 4. 两个不同音调 +```bash +beep -f 400 -l 200 -n -f 800 -l 200 +``` +先发 400 Hz 音(200 ms),紧接着发 800 Hz 音(200 ms),音调间无额外延迟。 + +### 5. 音调间加入延迟(通过前一个音调的 -D) +```bash +beep -f 400 -l 200 -D 100 -n -f 800 -l 200 +``` +先发 400 Hz 音,然后延迟 100 ms(因为 -D 使该音调最后附加了延迟),再发 800 Hz 音。 + +### 6. 每次换行蜂鸣 +```bash +tail -f /var/log/syslog | beep -s +``` +每当日志有新行写入,就发出当前定义的音调(默认 440 Hz)。 + +### 7. 每输入一个字符蜂鸣(打字机效果) +```bash +cat /dev/stdin | beep -c +``` +在终端输入字符,每按一个键(包括回车)就会蜂鸣一次,输入内容同时显示。 + +### 8. 使用自定义设备 +```bash +beep -e /dev/input/by-path/platform-pcspkr-event-spkr -f 1000 +``` +通过指定 evdev 设备发出 1000 Hz 蜂鸣。 + +### 9. 复杂序列:先奏一段音调,然后根据输入重复某个音调,最后收尾 +```bash +beep -f 523 -l 200 -n -f 659 -l 200 -n -f 784 -l 200 -n -s -f 440 -l 100 -r 3 -n -f 523 -l 400 +``` +先播放 C5(523 Hz)、E5(659 Hz)、G5(784 Hz)各 200 ms(音调间无延迟);然后进入输入处理模式,每遇到一个换行符就播放 A4(440 Hz)三次(每次 100 ms,间隔默认 100 ms);输入结束后(Ctrl+D),最后播放一个长的 C5(523 Hz,400 ms)。 + + +## 相关文档 +更详细的信息可以参考`man`: +```bash +man beep +``` diff --git a/command/chown.md b/command/chown.md index 221f9f6ae36..bbb4089ed6c 100644 --- a/command/chown.md +++ b/command/chown.md @@ -22,7 +22,7 @@ chown(选项)(参数) -f或--quite或——silent:不显示错误信息; -h或--no-dereference:只对符号连接的文件作修改,而不更改其他任何相关文件; -R或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理; --v或——version:显示指令执行过程; +-v或——verbose:显示指令执行过程; --dereference:效果和"-h"参数相同; --help:在线帮助; --reference=<参考文件或目录>:把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同; diff --git a/command/gcc.md b/command/gcc.md index fac6b762c62..b5310619f76 100644 --- a/command/gcc.md +++ b/command/gcc.md @@ -1,4 +1,4 @@ -gcc +pullgcc === 基于C/C++的编译器 diff --git a/command/groupdel.md b/command/groupdel.md index 1c58b8fad7f..8070a4860a6 100644 --- a/command/groupdel.md +++ b/command/groupdel.md @@ -5,7 +5,7 @@ groupdel ## 补充说明 -**groupdel命令** 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。 +**groupdel命令** 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组是某些用户的主组,则必须先删除这些用户或改变其主组后,才能删除该群组;如果该群组仅为某些用户的附加组,则可以直接删除,这些用户中的该组信息也会被删除。 ### 语法 diff --git a/command/groupmod.md b/command/groupmod.md index 2c30da4397d..58df9d6b1ee 100644 --- a/command/groupmod.md +++ b/command/groupmod.md @@ -1,28 +1,88 @@ groupmod === -更改群组识别码或名称 +修改系统上的组定义 ## 补充说明 -**groupmod命令** 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。 +**groupmod命令** 通过修改组数据库( /etc/group 与 /etc/gshadow )的相应条目来更改指定组的定义,例如GID,组成员,组名称,组密码等。 ### 语法 ```shell -groupmod(选项)(参数) +groupmod (选项) (参数) ``` ### 选项 ```shell --g<群组识别码>:设置欲使用的群组识别码; --o:重复使用群组识别码; --n<新群组名称>:设置欲使用的群组名称。 +-a, --append: 与 -U 选项配合使用,将指定用户追加到现有成员列表,而不是采用默认的覆盖方式。 +-g, --gid GID: 将组修改为指定值,必须是非负整数且唯一(除非同时使用 -o 选项),以该组为主要组的成员会自动更新以保持该组。 +-n, --new-name 新组名称: 设置要修改为的组名称。 +-o: 可以设置重复的gid; +-p, --password 密码: 设置组密码(也可以直接修改 /etc/gshadow 文件),密码必须是 crypt 加密后的密文,用于配合 newgrp 命令让非组成员临时切换到该组,但该机制在现代系统中已不推荐使用。 +-U, --users user1,user2...: 以逗号分隔的用户列表,将组成员覆盖为该列表;若同时指定 -a 选项,则改为追加到现有成员列表中。 ``` ### 参数 -组名:指定要修改的工作的组名。 +组名:指定要修改的组。 +### 实例 +修改 group1 的GID + +```shell +groupmod -g 1003 group1 +``` + +修改 group2 的GID为重复的gid 1003 + +``` shell +groupmod -g 1003 -o group2 +``` + +修改 group2 名称为 group3 + +```shell +groupmod -n group3 group2 +``` + +覆盖 group3 的组成员为 user1 + +```shell +groupmod -U user1 group3 +``` + +追加 user2 user3 到 group3 + +```shell +groupmod -a -U user2,user3 group3 +``` + +### 说明 + +部分系统(如 Ubuntu 22.04)上的`groupmod`命令可能不支持 -a 和 -U 选项,可以使用`gpasswd`命令代替。 + +```shell +groupmod -U user1,user2 groupname +``` + +等价于 + +```shell +gpasswd -M "" groupname +gpasswd -M user1,user2 groupname +``` + +```shell +groupmod -a -U user1,user2,user3 groupname +``` + +等价于 + +```shell +gpasswd -a user1 groupname +gpasswd -a user2 groupname +gpasswd -a user3 groupname +``` diff --git a/command/journalctl.md b/command/journalctl.md index e87fcb51040..2c9b8510a49 100644 --- a/command/journalctl.md +++ b/command/journalctl.md @@ -1,7 +1,7 @@ journalctl === -检索 systemd 日志,是 CentOS 7 才有的工具。 +检索 systemd 日志,只要使用 systemd 的 Linux 发行版(如 Fedora、Ubuntu Modern、Debian、SUSE、Arch),几乎都会配备 journalctl。 ### 语法 diff --git a/command/l2ping.md b/command/l2ping.md new file mode 100644 index 00000000000..3e12d141dbc --- /dev/null +++ b/command/l2ping.md @@ -0,0 +1,72 @@ +l2ping +=== + +收发 L2CAP 回显请求,用于检查与目标蓝牙设备的连通性。 + +## 补充说明 + +**l2ping** 命令用于通过发送 L2CAP 回显请求(Echo Request)并接收回显响应(Echo Response),来测试与目标蓝牙设备(由给定的蓝牙 MAC 地址指定)的底层连通性。它类似于网络中常用作检查 IP 连通性的 `ping` 命令,但它是专门针对蓝牙 L2CAP 协议设计的。 + +通常在通过蓝牙连接设备(如蓝牙键盘、鼠标、耳机或手机等)之前,可以使用此命令诊断物理和数据链路层面的连接情况。 + +## 安装 + +`l2ping` 不是 Linux 的内置命令,它通常包含在官方的官方蓝牙协议栈软件包 **BlueZ** 中。如果系统中未安装该命令,可以通过以下方式安装: + +```bash +# Ubuntu/Debian 系统 +sudo apt update +sudo apt install bluez + +# CentOS/RHEL/Fedora 系统 +sudo dnf install bluez +# 或早期版本 +sudo yum install bluez +``` + +## 语法 + +```bash +l2ping [选项] +``` + +*注:`bd_addr` 为目标设备的蓝牙 MAC 地址,例如 `00:11:22:33:44:55`。* + +## 选项 + +```bash +-i # 指定要使用的本机宿主控制器接口(HCI设备),默认通常为 hci0 +-s # 指定发送的测试请求数据包(payload)的大小,默认为 44 字节 +-c # 设置发送响应请求的总次数(ping的个数) +-t # 设置超时时间(秒) +-d # 设置连续 ping 之间的等待延迟时间(秒) +-f # 泛洪(Flood)ping,尽可能快地发送数据包而不需要等待对方响应后再发 +-r # 反向(Reverse)ping,监听并等待目标设备发送过来的请求,然后进行回复 +-v # 验证响应数据的 payload 是否与发送的数据相匹配 +``` + +## 实例 + +测试与特定蓝牙外设(MAC地址为 `00:11:22:33:44:55`)的连接: + +```bash +l2ping 00:11:22:33:44:55 +``` + +在测试中明确指定使用本机的 `hci0` 蓝牙适配器: + +```bash +l2ping -i hci0 00:11:22:33:44:55 +``` + +指定发送 5 个测速包后自动停止: + +```bash +l2ping -c 5 00:11:22:33:44:55 +``` + +自定义发送包的数据大小(例如 128 字节): + +```bash +l2ping -s 128 00:11:22:33:44:55 +``` \ No newline at end of file diff --git a/command/bmodinfo.md b/command/modinfo.md similarity index 90% rename from command/bmodinfo.md rename to command/modinfo.md index dd59ab7b999..ae0ab2e1ea5 100644 --- a/command/bmodinfo.md +++ b/command/modinfo.md @@ -1,16 +1,16 @@ -bmodinfo +modinfo === 显示给定模块的详细信息 ## 补充说明 -**bmodinfo命令** 用于显示给定模块的详细信息。 +**modinfo命令** 用于显示给定模块的详细信息。 ### 语法 ```shell -bmodinfo(选项)(参数) +modinfo(选项)(参数) ``` ### 选项 diff --git a/command/named-checkzone.md b/command/named-checkzone.md index ee0e9a53df8..fae559de49d 100644 --- a/command/named-checkzone.md +++ b/command/named-checkzone.md @@ -1,7 +1,7 @@ named-checkzone === -使用named-checkzone命令可以进行区域文件有效性检查和转换,必须指定区域名称和区域文件名称 +使用 named-checkzone 可验证并转换区域文件,需指定区域名和文件名。 ## 补充说明 diff --git a/command/ncdu.md b/command/ncdu.md new file mode 100644 index 00000000000..ee1bfc22680 --- /dev/null +++ b/command/ncdu.md @@ -0,0 +1,126 @@ +ncdu +=== + +磁盘使用情况的交互式查看工具,可视为 du 的增强版本 + +## 补充说明 + +**ncdu**(**NC**urses **D**isk **U**sage)是 Unix 系统上一款基于 ncurses 的磁盘占用分析工具,可视为传统 `du` 命令的增强版本。 +与 `du` 输出静态文本不同,**ncdu 提供交互式 TUI 界面**,可通过方向键浏览目录树,并支持排序、查看文件信息、直接删除文件等功能。 +它非常适合用于快速定位大文件、分析磁盘空间占用以及磁盘清理。1.09+ 版本支持将扫描结果导出为 JSON。 + +官网 + +* 官方网站(作者主页):[https://dev.yorhel.nl/ncdu](https://dev.yorhel.nl/ncdu) +* Wikipedia:[https://en.wikipedia.org/wiki/Ncdu](https://en.wikipedia.org/wiki/Ncdu) + +### ncdu 安装 + +在大多数的 Linux 发行版中你同样不会看到 **ncdu** 被默认预装,但作为最常用的磁盘分析工具之一,它几乎在所有主流发行版的官方仓库中都可以直接安装。 + +不同系统的安装方式如下: + +#### **Debian/Ubuntu** + +```shell +sudo apt install ncdu +``` + +#### **CentOS / Rocky / AlmaLinux** + +```shell +sudo yum install epel-release +sudo yum install ncdu +``` + +#### **Fedora** + +```shell +sudo dnf install ncdu +``` + +#### **Arch Linux** + +```shell +sudo pacman -S ncdu +``` + +#### **macOS(Homebrew)** + +```shell +brew install ncdu +``` + +#### **FreeBSD** + +```shell +pkg install ncdu +``` + +### 语法 + +```shell +ncdu [选项] [目录] +``` + +### 选项 + +```shell +-h, --help 显示帮助信息。 +-v, --version 显示版本号。 +-x 限制扫描在单一文件系统中(不跨挂载点)。 +-q 减少屏幕刷新次数(适合远程 SSH)。 +-o FILE 将扫描结果导出为 FILE(JSON 格式,需 1.09+)。 +-f FILE 从 JSON 文件加载扫描结果(需 1.09+)。 +--exclude PATTERN 排除符合模式的文件或目录。 +--exclude-from FILE 从文件读取排除模式。 +--follow-symlinks 跟随符号链接。 +--confirm-deletion 删除文件时要求确认。 +``` + +### 交互说明 + +↑, ↓, →, ← 代表键盘方向键 + +| 按键 | 功能 | +| ------------- | ------------------------------- | +| ↑ / k | 上移光标 | +| / j | 下移光标 | +| → / Enter / l | 打开当前目录 | +| ← / h | 返回父目录 | +| n | 按名称排序(再次按切换升/降序) | +| s | 按大小排序(再次按切换升/降序) | +| d | 删除选中项 | +| g | 显示百分比/图表 | +| t | 排序时切换"目录优先" | +| c | 显示或隐藏子项数量 | +| b | 在当前目录打开 shell | +| i | 查看选中文件/目录的详细信息 | +| r | 刷新/重新扫描当前目录 | +| q | 退出 ncdu | + +### 实例 + +#### 扫描当前目录 + +```shell +ncdu +``` + +#### 扫描指定目录(示例:/var/log) + +```shell +ncdu /var/log +``` + +#### 导出扫描结果为 JSON(1.09+) + +```shell +ncdu -o result.json / +``` + +#### 从 JSON 文件加载结果 + +```shell +ncdu -f result.json +``` diff --git a/command/nmap.md b/command/nmap.md index 8063525d0eb..62f5802de2b 100644 --- a/command/nmap.md +++ b/command/nmap.md @@ -54,20 +54,29 @@ ip地址:指定待扫描报文中的TCP地址。 yum install nmap ``` - **使用nmap扫描www.jsdig.com的开放端口** + **使用nmap扫描scanme.nmap.org的开放端口** ```shell -[root@localhost ~]# nmap www.jsdig.com - -Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013年12月28日 00:06 CST -Interesting ports on 100-42-212-8.static.webnx.com (100.42.212.8): -Not shown: 1678 filtered ports -PORT STATE service -22/tcp open ssh -80/tcp open http - -Nmap finished: 1 IP address (1 host up) scanned in 45.870 seconds +[root@localhost ~]# nmap scanme.nmap.org + +Starting Nmap 7.92 ( https://nmap.org ) at 2025年08月06日 15:22 CST +Nmap scan report for scanme.nmap.org (45.33.32.156) +Host is up (0.37s latency). +Not shown: 991 closed tcp ports (reset) +PORT STATE SERVICE +22/tcp open ssh +80/tcp open http +135/tcp filtered msrpc +139/tcp filtered netbios-ssn +445/tcp filtered microsoft-ds +593/tcp filtered http-rpc-epmap +4444/tcp filtered krb524 +9929/tcp open nping-echo +31337/tcp open Elite + +Nmap done: 1 IP address (1 host up) scanned in 60.36 seconds ``` + diff --git a/command/nmtui.md b/command/nmtui.md new file mode 100644 index 00000000000..7b0bd5fabda --- /dev/null +++ b/command/nmtui.md @@ -0,0 +1,75 @@ +nmtui +=== + +基于文本的用户界面(TUI),用于控制和配置 NetworkManager。 + +## 补充说明 + +**nmtui** 是一款基于 curses 库的文本用户界面工具,全称为 NetworkManager Text User Interface。它是 `nmcli` 的图形化替代方案(在没有桌面环境的终端中运行),可以让用户通过键盘的上下左右方向键、回车键等非常直观、方便地对 Linux 网络连接进行配置和管理。 + +使用 `nmtui`,你可以轻松地添加、修改、激活(连接)或停用网络连接,以及设置系统的主机名等。 + +## 安装 + +需要注意的是,`nmtui` 并非所有 Linux 发行版的内置默认命令。它包含在 NetworkManager 包中。在 Fedora/RHEL 中通常是默认安装的,但在 Ubuntu/Debian 中可能需要手动安装。 + +```bash +sudo apt install network-manager # Ubuntu/Debian +# 或 +sudo dnf install NetworkManager # Fedora +``` + +## 语法 + +```bash +nmtui +nmtui [子命令] +``` + +直接执行 `nmtui` 将打开主可视化菜单界面。也可以通过子命令直接进入相应的配置界面。 + +### 常用子命令 (快捷方式) + +- `nmtui-edit [connection-name]`:直接打开连接编辑器,用于添加或修改网络连接。 +- `nmtui-connect [connection-name]`:直接打开激活连接界面,可用于迅速连接网络。 +- `nmtui-hostname`:直接打开主机名修改界面。 + +## 实例 + +在终端中启动 nmtui 主界面: + +```bash +nmtui +``` +*执行后会弹出一个类似图形化的文本界面,提供"编辑连接"、"启用连接"和"设置系统主机名"三个主要选项。使用方向键和 Tab 键切换焦点,回车键确认。* + +### 1. 配置静态 IP 地址 (以交互式方式) + +1. 在终端输入 `nmtui`。 +2. 选择 **Edit a connection** (编辑连接) 并按回车。 +3. 选择你要配置的网络接口(如 `eth0` 或 `ens33`),按方向键右键选择 `` (编辑...) 并回车。 +4. 在 IPv4 CONFIGURATION (IPv4 配置) 旁边,将 `` (自动/DHCP) 改为 `` (手动)。 +5. 展开 IPv4 配置选项,输入你的 IP 地址(Address,如 `192.168.1.100/24`),网关(Gateway)以及 DNS 服务器。 +6. 一直向下滚动或者按 Tab 键,选择最底部的 `` (确定) 进行保存。 +7. 返回上一级菜单后退出,此时可能需要重启网络或重新激活连接。 + +### 2. 快速连接 Wi-Fi + +如果你在没有桌面环境(如服务器或树莓派等)下想要连接 Wi-Fi,`nmtui` 是一个极佳的选择: + +1. 在终端中直接输入快捷命令: +```bash +nmtui-connect +``` +2. 界面会列出当前扫描到的所有 Wi-Fi 列表。 +3. 选择你需要连接的 Wi-Fi 名称(SSID),按回车。 +4. 如果该 Wi-Fi 有密码,会弹出一个输入框提示输入密码。输入后确认即可连接。 + +### 3. 修改系统主机名 + +你可以跳过主菜单,直接进入主机名修改界面: + +```bash +nmtui-hostname +``` +输入新的主机名并选择 `` (确定) 即可。由于主机名服务是被 systemd(hostnamed)接管的,修改后即可马上反映在系统中。需要注意如果你当前就在终端里,需要重新打开终端才能看到 prompt 里的主机名发生变化。 \ No newline at end of file diff --git a/command/ping.md b/command/ping.md index 0b387e42c7a..15b7c691e4c 100644 --- a/command/ping.md +++ b/command/ping.md @@ -31,6 +31,7 @@ ping (选项) (参数) -t<存活数值>:设置存活数值TTL的大小; -v:详细显示指令的执行过程。 -w<超时秒数>:无论之前发送或接受了多少包,只要超过此秒数,程序退出; +-W<超时秒数>:设置等待每次ICMP回复的超时时间(秒),若超过此时间未收到响应,则认为该包丢失; ``` ### 参数 diff --git a/command/realpath.md b/command/realpath.md new file mode 100644 index 00000000000..0968a5f882c --- /dev/null +++ b/command/realpath.md @@ -0,0 +1,64 @@ +realpath +=== + +解析并规范化文件路径,返回绝对路径。 + +## 补充说明 + +**realpath** 命令用于解析给定路径中的符号链接、相对路径(如 `.`、`..`),并输出其对应的**绝对路径**。 +它常用于脚本中获取文件或目录的真实位置,避免因符号链接或相对路径导致的路径歧义。 + +与直接使用 `pwd` 或字符串拼接不同,`realpath` 能保证输出路径是唯一、真实、可访问的物理路径。 + +### 语法 + +```shell +realpath [选项] 文件... +``` + +### 选项 + +```shell +-e, --canonicalize-existing 仅在路径中所有组件都存在时才输出结果 +-m, --canonicalize-missing 即使路径中部分组件不存在也输出规范化路径 +-L, --logical 按逻辑方式解析符号链接(默认) +-P, --physical 按物理方式解析符号链接 +-q, --quiet 静默模式,不输出错误信息 +-s, --strip 删除路径末尾的斜杠 +--relative-to=DIR 输出相对于 DIR 的路径 +--relative-base=DIR 若可能,输出相对于 DIR 的路径 +--help 显示帮助信息 +--version 显示版本信息 +``` + +### 参数 + +```shell +文件 需要解析的文件或目录路径,可以是相对路径或符号链接 +``` + +## 实例 + +### 获取文件的绝对路径 + +```shell +realpath file.txt +``` + +### 解析符号链接的真实路径 + +```shell +realpath /usr/bin/python +``` + +### 即使路径不存在也返回规范化结果 + +```shell +realpath -m ./not/exist/path +``` + +### 输出相对于指定目录的路径 + +```shell +realpath --relative-to=/usr /usr/bin/env +``` diff --git a/command/rpm.md b/command/rpm.md index f7ec56d5dc8..729a85560b4 100644 --- a/command/rpm.md +++ b/command/rpm.md @@ -30,6 +30,9 @@ rpm(选项)(参数) -q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户; -R:显示套件的关联性信息; -s:显示文件状态,本参数需配合"-l"参数使用; +-K:检查套件签名和校验和,可用于验证RPM包; +-F<套件档>+或--freshen<套件档>+:升级指定的套件档,仅当系统中已安装旧版时才会更新; +-V:验证套件或文件的完整性; -U<套件档>或--upgrade<套件档>:升级指定的套件档; -v:显示指令执行过程; -vv:详细显示指令执行过程,便于排错。 @@ -227,6 +230,7 @@ mysql57-community-release-el6-8.noarch.rpm # 一个 rpm 包的例子 rpm -Uivh --dodeps xxx # upgrade install verbose hash rpm -qilpfa|grep xxx # query info list(rpm包安装后的文件位置) package(rpm 包) file(文件属于哪个rpm文件) all +rpm -K *.rpm # 检查 RPM 包的签名和校验和 rpm -e # erase rpm -V # verify rpm2cpio | cpio -idv diff --git a/command/rsync.md b/command/rsync.md index 669ca60caa6..34b5df88837 100644 --- a/command/rsync.md +++ b/command/rsync.md @@ -326,4 +326,101 @@ $ rsync -av --include="*.txt" --exclude='*' source/ destination 上面命令指定同步时,排除所有文件,但是会包括 `TXT` 文件。 +**指定要使用的远程shell** +远程shell(remote shell)用于在本地和远程主机之间建立连接,它不是指执行脚本的shell(bash/zsh等) + +`-e`选项可以指定使用的远程shell(默认为ssh),例如 rsh、socat 或自定义脚本 + +```shell +$ rsync -av -e rsh /tmp/src/ user@host:/tmp/dest/ +``` + +`-e`选项同时可以指定远程shell的参数,如果需要指定 ssh user,必须使用`ssh -l user`,而不能使用`ssh user@host`,因为`ssh user@host`会破坏 rsync 对 host 的解析方式 + +```shell +$ rsync -av -e "ssh -l root -p 9000" /tmp/src/ user@192.168.56.12:/tmp/dest/ +``` + +**通过SSH加密daemon传输** + +使用daemon语法(`host::module`或`rsync://host/module`)时,默认情况下会直接连接到远程的rsync daemon,走TCP 873 端口明文传输 + +```shell +$ rsync -av /tmp/src/ testuser@192.168.56.12::max +``` + +当使用daemon语法的同时添加`-e ssh`选项时,rsync 通过ssh登录远程主机,并在ssh会话中启动一个临时的single-use(单次使用) daemon,从而使daemon传输经过ssh加密,临时daemon不会监听任何TCP端口,它全部通信都通过SSH管道完成。 + +```shell +# 此时会使用当前登录的Linux用户作为 ssh user,随后还需要输入模块 max 的 rsync user 密码 +$ rsync -av -e ssh /tmp/src/ 192.168.56.12::max +``` + +```shell +# 此时会默认使用testuser同时作为ssh user和rsync user,需要保证远程服务器存在Linux用户testuser,不推荐这种写法 +$ rsync -av -e ssh /tmp/src/ testuser@192.168.56.12::max +``` + +更推荐的写法是使用`ssh -l user`同时显式指定ssh user,并在daemon语法中显式写明rsync user,避免二者混淆 + +```shell +# 此时使用user进行ssh连接,rsync user是testuser +$ rsync -av -e "ssh -l user" /tmp/src/ testuser@192.168.56.12::max +``` + +在通过ssh加密daemon传输的模式下,本地rsync通过ssh远程登录,并在远程以ssh用户的身份创建一个临时daemon。该daemon会在ssh用户家目录下寻找`rsyncd.conf`,如果没有找到则会报错,而不是使用`/etc/rsyncd.conf`(如果使用root进行ssh则会直接读取`/etc/rsyncd.conf`)。 + +可以在ssh user的家目录新建一个`rsyncd.conf`,写入类似下面的配置: + +``` +[max] + path = /tmp/dest + read only = no + auth users = testuser + secrets file = /home/user/rsyncd.secrets +``` + +配置文件中不要使用`uid`、`gid`、`chroot`等需要root权限的配置,然后新建一个密码文件`/home/user/rsyncd.secrets`,内容例如: + +``` +testuser:123123 +``` + +并将密码文件权限设置为600: + +```shell +$ chmod 600 /home/user/rsyncd.secrets +``` + +**通过SSH隧道加密daemon传输** + +除了上面提到的临时daemon,还可以使用SSH隧道加密正常的daemon + +默认情况下`sudo rsync --daemon`启动的是一个监听`0.0.0.0:873`的端口,通过SSH将远程端口映射到本地,然后`rsync`只需连接本地端口即可完成加密传输。 + +修改配置文件`/etc/rsyncd.conf`: + +``` +hosts allow = 127.0.0.1 +address = 127.0.0.1 +``` + +启动 rsync daemon(此时只会监听本地回环地址`127.0.0.1:873`) + +```shell +$ sudo rsync --daemon +``` + +映射远程端口到本地 + +```shell +$ ssh -L 8873:127.0.0.1:873 user@192.168.56.12 +``` + +使用本地端口同步(流量会自动经 SSH 加密转发到远程 daemon) + +```shell +# 默认连接873端口,必须显式指明端口 +$ rsync -av /tmp/src/ testuser@127.0.0.1::max --port=8873 +``` \ No newline at end of file diff --git a/command/sosreport.md b/command/sosreport.md new file mode 100644 index 00000000000..729c86222bb --- /dev/null +++ b/command/sosreport.md @@ -0,0 +1,146 @@ +sosreport +=== + +收集系统配置和诊断信息 + +## 补充说明 + +**sosreport命令** 是一个配置和数据收集实用程序,用于收集系统配置、日志文件和诊断信息,以便进行故障排除和分析。它将信息打包到一个压缩的tar文件中,便于传输和分析。sosreport是Red Hat Enterprise Linux系统中用于技术支持的标准工具。 + +### 语法 + +```shell +sosreport [选项] +``` + +### 选项 + +```shell +-l, --list-plugins # 列出所有可用的插件 +-n, --skip-plugins # 跳过指定的插件(多个插件用逗号分隔) +-e, --enable-plugins # 启用指定的插件(多个插件用逗号分隔) +-o, --only-plugins # 只运行指定的插件(多个插件用逗号分隔) +-a, --alloptions # 启用所有插件选项 +-v, --verbose # 详细输出模式 +-q, --quiet # 静默模式,减少输出 +--batch # 批处理模式,不提示用户输入 +--build # 收集系统构建信息 +--case-id=CASE_ID # 指定案例ID +--config-file=CONFIG # 指定配置文件路径 +--debug # 调试模式 +--experimental # 启用实验性插件 +--log-size=SIZE # 限制日志文件大小(MB) +--plugin-timeout=TIMEOUT # 插件超时时间(秒) +--since=DATE # 从指定日期开始收集日志 +--tmp-dir=DIR # 指定临时目录 +--verify # 验证归档的完整性 +-z, --compression-type # 指定压缩类型(gzip, bzip2, xz) +``` + +### 常用选项 + +```shell +-a # 启用所有插件选项,收集最全面的信息 +-v # 详细模式,显示收集过程 +-q # 静默模式,最小化输出 +--batch # 批处理模式,不需要用户交互 +``` + +### 实例 + +收集系统诊断信息: + +```shell +sosreport +``` + +批处理模式收集信息(无需用户交互): + +```shell +sosreport --batch +``` + +详细模式收集信息: + +```shell +sosreport -v +``` + +启用所有插件选项收集完整信息: + +```shell +sosreport -a +``` + +只收集网络相关信息: + +```shell +sosreport -o network +``` + +跳过某些插件: + +```shell +sosreport -n rpm,yum +``` + +收集指定日期之后的日志: + +```shell +sosreport --since="2023-01-01" +``` + +指定案例ID和批处理模式: + +```shell +sosreport --batch --case-id=12345678 +``` + +列出所有可用插件: + +```shell +sosreport -l +``` + +收集系统信息并限制日志文件大小: + +```shell +sosreport --log-size=100 +``` + +使用不同的压缩类型: + +```shell +sosreport -z xz +``` + +### 常见插件 + +```shell +block # 块设备信息 +boot # 启动相关信息 +kernel # 内核信息 +logs # 系统日志 +memory # 内存信息 +network # 网络配置 +networking # 网络诊断 +process # 进程信息 +processor # CPU信息 +rpm # RPM包信息 +system # 系统配置 +yum # YUM包管理器信息 +``` + +### 输出文件 + +sosreport会在`/var/tmp/`目录下生成一个压缩的tar文件,文件名格式为: +``` +sosreport---.tar.xz +``` + +### 注意事项 + +- sosreport需要root权限运行 +- 收集的信息可能包含敏感数据,传输前请确认安全性 +- 生成的文件可能较大,请确保有足够的磁盘空间 +- 默认情况下,敏感信息(如密码、密钥)会被混淆处理 diff --git a/command/timedatectl.md b/command/timedatectl.md index ab278ef66b4..55d4a520b2b 100644 --- a/command/timedatectl.md +++ b/command/timedatectl.md @@ -37,6 +37,7 @@ Query or change system time and date settings. Commands: status 显示当前的时间设置。 + show 显示systemd-timedated的属性。 set-time TIME 设置系统时间。 set-timezone ZONE 设置系统时区。 list-timezones 显示已知时区。 @@ -62,11 +63,22 @@ NTP synchronized: no DST active: n/a ``` +显示systemd-timedated的属性 + +``` +$ timedatectl show +Timezone=Asia/Shanghai +LocalRTC=no +CanNTP=yes +NTP=yes +NTPSynchronized=yes +TimeUSec=Fri 2022年04月08日 17:04:02 CST +RTCTimeUSec=Fri 2022年04月08日 17:04:02 CST +``` + 显示系统所有可用的时区 ```shell -$ timedatectl show -Unknown operation show $ timedatectl list-timezones Africa/Abidjan Africa/Accra diff --git a/command/tmux.md b/command/tmux.md index 8ce7b1a7481..416bc775208 100644 --- a/command/tmux.md +++ b/command/tmux.md @@ -7,6 +7,9 @@ Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBS 使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再"浪费"多余的终端来连接这台远程主机; +开启鼠标滚轮滚动: +`ctrl+b`,按下冒号 `:` 进入命令行模式,然后输入 `set -g mouse on` 后按回车 + ## 功能 - 提供了强劲的、易于使用的命令行界面。 @@ -38,59 +41,59 @@ make && make install ## 快捷键使用说明 -| | | -| :----- | :----- | -| Ctrl+b | 激活控制台;此时以下按键生效 | +| 快捷键 | 功能说明 | +| :----- | :--------------------------- | +| Ctrl+b | 激活控制台;此时以下按键生效 | ### 系统操作 -| | | -| :----- | -------- | -| ? | 列出所有快捷键;按q返回 | -| d | 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 | -| D | 选择要脱离的会话;在同时开启了多个会话时使用 | -| Ctrl+z | 挂起当前会话 | -| r | 强制重绘未脱离的会话 | -| s | 选择并切换会话;在同时开启了多个会话时使用 | -| : | 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 | -| \[ | 进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出 | -| \~ | 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 | +| 快捷键 | 功能说明 | +| :----- | ------------------------------------------------------------ | +| ? | 列出所有快捷键;按q返回 | +| d | 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 | +| D | 选择要脱离的会话;在同时开启了多个会话时使用 | +| Ctrl+z | 挂起当前会话 | +| r | 强制重绘未脱离的会话 | +| s | 选择并切换会话;在同时开启了多个会话时使用 | +| : | 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 | +| \[ | 进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出 | +| \~ | 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 | ### 窗口操作 -| | | -| :----- | -------- | -| c | 创建新窗口 | -| & | 关闭当前窗口 | -| 数字键 | 切换至指定窗口 | -| p | 切换至上一窗口 | -| n | 切换至下一窗口 | -| l | 在前后两个窗口间互相切换 | -| w | 通过窗口列表切换窗口 | -| , | 重命名当前窗口;这样便于识别 | +| 快捷键 | 功能说明 | +| :----- | ------------------------------------ | +| c | 创建新窗口 | +| & | 关闭当前窗口 | +| 数字键 | 切换至指定窗口 | +| p | 切换至上一窗口 | +| n | 切换至下一窗口 | +| l | 在前后两个窗口间互相切换 | +| w | 通过窗口列表切换窗口 | +| , | 重命名当前窗口;这样便于识别 | | . | 修改当前窗口编号;相当于窗口重新排序 | -| f | 在所有窗口中查找指定文本 | +| f | 在所有窗口中查找指定文本 | ### 面板操作 -| | | -| :----- | -------- | -| " | 将当前面板平分为上下两块 | -| % | 将当前面板平分为左右两块 | -| x | 关闭当前面板 | -| ! | 将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板 | -| Ctrl+方向键 | 以1个单元格为单位移动边缘以调整当前面板大小 | -| Alt+方向键 | 以5个单元格为单位移动边缘以调整当前面板大小 | -| Space | 在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled | -| q | 显示面板编号 | -| o | 在当前窗口中选择下一面板 | -| 方向键 | 移动光标以选择面板 | -| { | 向前置换当前面板 | -| } | 向后置换当前面板 | -| Alt+o | 逆时针旋转当前窗口的面板 | -| Ctrl+o | 顺时针旋转当前窗口的面板 | +| 快捷键 | 功能说明 | +| :---------- | ------------------------------------------------------------ | +| " | 将当前面板平分为上下两块 | +| % | 将当前面板平分为左右两块 | +| x | 关闭当前面板 | +| ! | 将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板 | +| Ctrl+方向键 | 以1个单元格为单位移动边缘以调整当前面板大小 | +| Alt+方向键 | 以5个单元格为单位移动边缘以调整当前面板大小 | +| Space | 在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled | +| q | 显示面板编号 | +| o | 在当前窗口中选择下一面板 | +| 方向键 | 移动光标以选择面板 | +| { | 向前置换当前面板 | +| } | 向后置换当前面板 | +| Alt+o | 逆时针旋转当前窗口的面板 | +| Ctrl+o | 顺时针旋转当前窗口的面板 | 1)进入tmux面板后,一定要先按ctrl+b,然后松开,再按其他的组合键才生效。 @@ -120,4 +123,4 @@ ctrl+b d # 脱离当前会话;这样可以暂时返回Shell界面, ## 参考资料 -- tmux 官网下载地址:http://tmux.github.io/ \ No newline at end of file +- tmux 官网下载地址:http://tmux.github.io/ diff --git a/dist/data.json b/dist/data.json index 75eae0c05a3..66fdfcd36e9 100644 --- a/dist/data.json +++ b/dist/data.json @@ -164,6 +164,11 @@ "p": "/bc", "d": "算术操作精密运算工具" }, + "beep": { + "n": "beep", + "p": "/beep", + "d": "用于控制 PC 扬声器发出蜂鸣声的命令行工具。" + }, "bg": { "n": "bg", "p": "/bg", @@ -184,11 +189,6 @@ "p": "/blockdev", "d": "从命令行调用区块设备控制程序" }, - "bmodinfo": { - "n": "bmodinfo", - "p": "/bmodinfo", - "d": "显示给定模块的详细信息" - }, "break": { "n": "break", "p": "/break", @@ -869,6 +869,11 @@ "p": "/get_module", "d": "获取Linux内核模块的详细信息" }, + "getcap": { + "n": "getcap", + "p": "/getcap", + "d": "显示文件的能力(capabilities)" + }, "getenforce": { "n": "getenforce", "p": "/getenforce", @@ -879,6 +884,11 @@ "p": "/getent", "d": "查询 DNS 名称服务器中的命名空间" }, + "getfacl": { + "n": "getfacl", + "p": "/getfacl", + "d": "获取文件访问控制列表(access control lists)" + }, "getsebool": { "n": "getsebool", "p": "/getsebool", @@ -927,7 +937,7 @@ "groupmod": { "n": "groupmod", "p": "/groupmod", - "d": "更改群组识别码或名称" + "d": "修改系统上的组定义" }, "groups": { "n": "groups", @@ -1132,7 +1142,7 @@ "iostat": { "n": "iostat", "p": "/iostat", - "d": "iostat命令被用于监视系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。iowait 指在一个采样周期内有百分之几的时间是属于以下情况:CPU处于空闲状态并且至少有一个未完成的磁盘IO请求。" + "d": "监视系统输入输出设备和CPU的使用情况" }, "iotop": { "n": "iotop", @@ -1237,7 +1247,7 @@ "journalctl": { "n": "journalctl", "p": "/journalctl", - "d": "检索 systemd 日志,是 CentOS 7 才有的工具。" + "d": "检索 systemd 日志,只要使用 systemd 的 Linux 发行版(如 Fedora、Ubuntu Modern、Debian、SUSE、Arch),几乎都会配备 journalctl。" }, "jq": { "n": "jq", @@ -1269,6 +1279,11 @@ "p": "/killall", "d": "使用进程的名称来杀死一组进程" }, + "l2ping": { + "n": "l2ping", + "p": "/l2ping", + "d": "收发 L2CAP 回显请求,用于检查与目标蓝牙设备的连通性。" + }, "last": { "n": "last", "p": "/last", @@ -1619,6 +1634,11 @@ "p": "/modetest", "d": "DRM/KMS驱动程序libdrm中的模式测试工具" }, + "modinfo": { + "n": "modinfo", + "p": "/modinfo", + "d": "显示给定模块的详细信息" + }, "modprobe": { "n": "modprobe", "p": "/modprobe", @@ -1682,7 +1702,7 @@ "named-checkzone": { "n": "named-checkzone", "p": "/named-checkzone", - "d": "使用named-checkzone命令可以进行区域文件有效性检查和转换,必须指定区域名称和区域文件名称" + "d": "使用 named-checkzone 可验证并转换区域文件,需指定区域名和文件名。" }, "nano": { "n": "nano", @@ -1694,6 +1714,11 @@ "p": "/nc", "d": "nc是网络工具中的瑞士军刀" }, + "ncdu": { + "n": "ncdu", + "p": "/ncdu", + "d": "磁盘使用情况的交互式查看工具,可视为 du 的增强版本" + }, "ncftp": { "n": "ncftp", "p": "/ncftp", @@ -1759,6 +1784,11 @@ "p": "/nmcli", "d": "地址配置工具" }, + "nmtui": { + "n": "nmtui", + "p": "/nmtui", + "d": "基于文本的用户界面(TUI),用于控制和配置 NetworkManager。" + }, "nohup": { "n": "nohup", "p": "/nohup", @@ -1779,6 +1809,11 @@ "p": "/nslookup", "d": "查询域名DNS信息的工具" }, + "nstat": { + "n": "nstat", + "p": "/nstat", + "d": "nstat 是一个简单的监视内核的 SNMP 计数器和网络接口状态的实用工具。" + }, "ntpdate": { "n": "ntpdate", "p": "/ntpdate", @@ -2079,6 +2114,11 @@ "p": "/readonly", "d": "标记shell变量或函数为只读" }, + "realpath": { + "n": "realpath", + "p": "/realpath", + "d": "解析并规范化文件路径,返回绝对路径。" + }, "reboot": { "n": "reboot", "p": "/reboot", @@ -2384,6 +2424,11 @@ "p": "/sort", "d": "对文本文件中所有行进行排序。" }, + "sosreport": { + "n": "sosreport", + "p": "/sosreport", + "d": "收集系统配置和诊断信息" + }, "source": { "n": "source", "p": "/source", @@ -2689,6 +2734,11 @@ "p": "/type", "d": "显示指定命令的类型。" }, + "ufw": { + "n": "ufw", + "p": "/ufw", + "d": " ubuntu防火墙管理工具" + }, "ulimit": { "n": "ulimit", "p": "/ulimit", diff --git a/dist/data.min.json b/dist/data.min.json index cb420adfeff..6db09018099 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":"为文件搜索文字字符串"},"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 +{"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":"算术操作精密运算工具"},"beep":{"n":"beep","p":"/beep","d":"用于控制 PC 扬声器发出蜂鸣声的命令行工具。"},"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":"从命令行调用区块设备控制程序"},"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内核模块的详细信息"},"getcap":{"n":"getcap","p":"/getcap","d":"显示文件的能力(capabilities)"},"getenforce":{"n":"getenforce","p":"/getenforce","d":"显示当前SELinux的应用模式,是强制、执行还是停用"},"getent":{"n":"getent","p":"/getent","d":"查询 DNS 名称服务器中的命名空间"},"getfacl":{"n":"getfacl","p":"/getfacl","d":"获取文件访问控制列表(access control lists)"},"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":"监视系统输入输出设备和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 日志,只要使用 systemd 的 Linux 发行版(如 Fedora、Ubuntu Modern、Debian、SUSE、Arch),几乎都会配备 journalctl。"},"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":"使用进程的名称来杀死一组进程"},"l2ping":{"n":"l2ping","p":"/l2ping","d":"收发 L2CAP 回显请求,用于检查与目标蓝牙设备的连通性。"},"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中的模式测试工具"},"modinfo":{"n":"modinfo","p":"/modinfo","d":"显示给定模块的详细信息"},"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是网络工具中的瑞士军刀"},"ncdu":{"n":"ncdu","p":"/ncdu","d":"磁盘使用情况的交互式查看工具,可视为 du 的增强版本"},"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":"地址配置工具"},"nmtui":{"n":"nmtui","p":"/nmtui","d":"基于文本的用户界面(TUI),用于控制和配置 NetworkManager。"},"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信息的工具"},"nstat":{"n":"nstat","p":"/nstat","d":"nstat 是一个简单的监视内核的 SNMP 计数器和网络接口状态的实用工具。"},"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变量或函数为只读"},"realpath":{"n":"realpath","p":"/realpath","d":"解析并规范化文件路径,返回绝对路径。"},"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":"对文本文件中所有行进行排序。"},"sosreport":{"n":"sosreport","p":"/sosreport","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":"显示指定命令的类型。"},"ufw":{"n":"ufw","p":"/ufw","d":" ubuntu防火墙管理工具"},"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 diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 00000000000..2ea364dc5d0 --- /dev/null +++ b/netlify.toml @@ -0,0 +1,3 @@ +[build] + command = "npm run build" + publish = ".deploy" diff --git a/package.json b/package.json index a5b637f755c..1e77d055650 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "linux-command", - "version": "1.20.0", + "version": "1.22.0", "description": "Linux Command", "homepage": "https://jaywcjlove.github.io/linux-command/", "main": "dist/data.json", diff --git a/scripts/build.mjs b/scripts/build.mjs index 63e1cfa3739..d840b74040c 100644 --- a/scripts/build.mjs +++ b/scripts/build.mjs @@ -7,22 +7,28 @@ import { create } from 'markdown-to-html-cli'; import _ from 'colors-cli/toxic'; const deployDir = path.resolve(process.cwd(), '.deploy'); -const faviconPath = path.resolve(process.cwd(), 'template', 'img', 'favicon.ico'); +const templateImgDir = path.resolve(process.cwd(), 'template', 'img'); 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'); +function sanitizeCommandName(value) { + return String(value || '') + .replace(/^\uFEFF/, '') + .replace(/[\u200B-\u200D\u2060]/g, '') + .trim(); +} + ;(async () => { try { await FS.ensureDir(deployDir); await FS.emptyDir(deployDir); - await FS.ensureDir(path.resolve(deployDir, 'img')); await FS.ensureDir(path.resolve(deployDir, 'js')); await FS.ensureDir(path.resolve(deployDir, 'css')); await FS.ensureDir(path.resolve(deployDir, 'c')); - await FS.copySync(faviconPath, path.resolve(deployDir, 'img', 'favicon.ico')); + await FS.copySync(templateImgDir, path.resolve(deployDir, 'img')); 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')); @@ -152,6 +158,7 @@ const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); let title = str.match(/[^===]+(?=[===])/g); title = title[0] ? title[0].replace(/\n/g, '') : title[0]; title = title.replace(/\r/, '') + title = sanitizeCommandName(title) // 命令名称 json["n"] = title; // 命令路径 @@ -187,13 +194,15 @@ const contributorsPath = path.resolve(process.cwd(), 'CONTRIBUTORS.svg'); const current_path = toPath.replace(new RegExp(`${deployDir}`), ''); const tmpStr = await FS.readFile(fromPath); let mdPathName = ''; + let mdFileName = ''; let mdhtml = ''; let relative_path = ''; if (mdPath) { // CSS/JS 引用相对地址 relative_path = '../'; - mdPathName = `/command/${desJson.n}.md`; - const READMESTR = await FS.readFile(path.resolve(mdPath, `${desJson.n}.md`)); + mdFileName = (desJson.p ? String(desJson.p).replace(/^\//, '') : sanitizeCommandName(desJson.n)); + mdPathName = `/command/${mdFileName}.md`; + const READMESTR = await FS.readFile(path.resolve(mdPath, `${mdFileName}.md`)); mdhtml = await markdownToHTML(READMESTR.toString()); } // 生成 HTML diff --git a/template/contributors.ejs b/template/contributors.ejs index 81cce14e78f..08d35254b66 100644 --- a/template/contributors.ejs +++ b/template/contributors.ejs @@ -12,62 +12,71 @@ L 圆头圆脑 clay-wangzhi -Glett 烟草的香味 -Jayin Tang +Glett 丛林意志 -Zijing Zhang -Fubin Zhang +Jayin Tang +Shan Chenyu __FresHmaN -dulltackle +Fubin Zhang +Zijing Zhang +JiangHuDao ernest +dulltackle 谈笑风生间 zyy2477 rgshare -loverainye -lavaicer -YEUNGCHIE -James Wang MioMuse -Xrtero -Shan Chenyu +Jeremy2214 SteveLauC +James Wang +Xrtero +YEUNGCHIE duzhuoshanwai -gggwvg -VVatt -will -xhal -Shell -沙漠之子 +lavaicer +loverainye alfred -Wang Yujia Qliangw -Dazhuangw -Alterem -YH -Xingwen Zhang -RichardLCD -QinShower -Pan, Wen-Ming -Jeremy2214 +沙漠之子 +永恒 +Wang Yujia +Shell +H Liu +will +VVatt +jcdj666 +gggwvg BingCoke -FunKeen +Abrillant Lee Ein Verne -lewis1573 -leo -NanoNova -kassadin -juemuren4449 +FunKeen +Skuld +Jinzhou Huang +KrisMagic +Pan, Wen-Ming +QinShower +RichardLCD +Xingwen Zhang +YH +Alterem +Dazhuangw +hululu1068 +illmons jqz3.tech -jcdj666 +juemuren4449 +kassadin +NanoNova +kmephistoh +leo +lewis1573 linuxwd Ricardowang cole dufu miniwater noodles2hg -nsnans -zyimm +Forever121 +cxalc dayday Deny dongpohezui @@ -82,9 +91,8 @@ hanwei gcluffy hotdogc1017 -huangyao -hululu1068 -illmons +Mr.BigBelly +oliver 七朔 孤城落寞 尘埃 @@ -93,6 +101,7 @@ 扶苏如是 ReZero 极简XksA +淘金的小宇 移动的红烧肉 继刚 老犁 @@ -101,61 +110,64 @@ 远方 bycs Yidan Wang -oliver rexlin600 -sfwwslm +gwj shc shuangcui snovey tangke -tutianyu101 +可爱软萌喵 UniqueDing waiwai weibk Lingfeng Wang -yanyx +yanyx zjlovezj zodiac zoomdong zuixin369 -0x_000 +zyimm +Jack +Jack.A.Black +Jelly Nexchard Karl Horky LaudOak Legend LexsionLee -孟思行 +hengli Lin Wuxian -LinuxZilong +zlshi6 Lix Lucien Wang mwei Marnm -MinsonLee -Mystic -Q.Ben Zheng -Alan +XBG +0x_000 +AlenPann azroy Cui Yang +DYH1319 DaYangtuo247 Danny -Derek +Lucas Zhao Divenire -Frankie -Github1977 +Dongyan Qian +Everything-is-one +Frankie Guiying Li +Hang 重劍無鋒 HighScorePlayer Huntout Zhang -Jack -Jack.A.Black -Jelly +Xiaodong DENG Xonline-Tech Xu Chunyang Yan Sheng Yunbin Liu 0Knot (0KN) +Zlanghu One Person’s Revelry amit794 Ashine @@ -165,8 +177,9 @@ brinkqiang c2ch chaofan -Forever121 -cxalc +MinsonLee +Mystic +Q.Ben Zheng Ray Yee Rining Wu Robigus @@ -181,15 +194,78 @@ T-TRz879 Na Meng Wingrez -XBG -Xiaodong DENG

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

+

镜像网站

+ +

魔改网站

+ <%- include('widget/footer',{type: "list"}); %> <%- include('partial/footer'); %> diff --git a/template/img/doloffer.jpg b/template/img/doloffer.jpg new file mode 100644 index 00000000000..facbb38c321 Binary files /dev/null and b/template/img/doloffer.jpg differ diff --git a/template/img/fakey.png b/template/img/fakey.png new file mode 100644 index 00000000000..d66e3771af5 Binary files /dev/null and b/template/img/fakey.png differ diff --git a/template/img/warp.png b/template/img/warp.png new file mode 100644 index 00000000000..50d50b17a87 Binary files /dev/null and b/template/img/warp.png differ diff --git a/template/styl/index.styl b/template/styl/index.styl index f0cb0b04db5..d65069649f8 100644 --- a/template/styl/index.styl +++ b/template/styl/index.styl @@ -171,6 +171,19 @@ mq-mobile = "screen and (max-width: 479px)" &.home { border-top 0 } + div { + font-size 12px + } + .ad a b {display:block;line-height: 1;} + .ad a {width:160px;} + .ad_title { + padding-top: 3rem; + } + .ad { + flex-wrap: wrap; + display: inline-flex; + gap: 1rem; + } } .header.home { .header_inner { @@ -282,6 +295,17 @@ mq-mobile = "screen and (max-width: 479px)" a { font-weight: bold; } + .links { + display: inline-flex; + flex-wrap: wrap; + } + .links a { + background: var(--color-theme-bg); + height: 2.1rem; + border-radius: 0.3rem; + gap: 0.1rem; + padding: 0rem 0.5rem 0rem 0.4rem; + } } @media mq-mobile { diff --git a/template/widget/footer.ejs b/template/widget/footer.ejs index 966863110a6..53ae3809277 100644 --- a/template/widget/footer.ejs +++ b/template/widget/footer.ejs @@ -11,10 +11,29 @@ 打赏捐赠 | Github | 短地址:https://git.io/linux -
- 收藏本站请使用 Ctrl+D 或者Command+d -
共搜集到 - - <%=describe.command_length?describe.command_length:''%> - 个Linux命令,超过 50+ 贡献者 +
+ 收藏本站请使用 Ctrl+D 或者Command+d +
+ 共搜集到 + + <%=describe.command_length?describe.command_length:''%> + 个Linux命令,超过 50+ 贡献者 +
+
+ 镜像网站列表, + 推荐自己的镜像网站 +
+
+ 特别感谢: +
+ \ No newline at end of file diff --git a/template/widget/search.ejs b/template/widget/search.ejs index 35a8b55c5db..fbf67f3ba7e 100644 --- a/template/widget/search.ejs +++ b/template/widget/search.ejs @@ -2,7 +2,7 @@
header_list<%}%><%if(type=='home'){%> home<%}%>">

AltStyle によって変換されたページ (->オリジナル) /