>  기사  >  시스템 튜토리얼  >  기본 Linux 명령줄 도구에 대한 5가지 최신 대안 공유

기본 Linux 명령줄 도구에 대한 5가지 최신 대안 공유

WBOY
WBOY앞으로
2024-02-05 12:10:12976검색

Linux/Unix 시스템을 매일 사용할 때 우리는 시스템을 관리하고 시스템 작동을 이해하기 위해 다양한 명령줄 도구를 사용하는 경우가 많습니다. 예를 들어 du 명령은 디스크 활용도를 모니터링하는 데 사용되고 top 명령은 시스템 리소스를 표시하는 데 사용됩니다. 이러한 도구 중 일부는 1984년에 처음 출시된 top 명령과 1971년에 처음 출시된 du 명령과 같이 오랫동안 사용되어 왔습니다.

수년간의 개발 끝에 이러한 도구는 원래 형태에서 현대 버전으로 점진적으로 발전했으며 다른 시스템으로 이식되었습니다. 그러나 현대적인 변화에도 불구하고 이러한 도구는 여전히 원래 아이디어와 사용자 경험을 유지합니다.

이러한 도구는 시스템 관리자의 작업 흐름에 매우 중요하고 필수 불가결합니다. 그러나 지난 몇 년 동안 오픈 소스 커뮤니티는 추가적인 이점을 제공하는 대체 도구를 개발했습니다. 새로운 도구 중 일부는 화려할 수 있지만 다른 도구는 유용성을 크게 향상시켜 최신 시스템에서 최고의 선택이 됩니다. 표준 Linux 명령줄 도구에 대한 다섯 가지 대안은 다음과 같습니다.

1. du

를 대체하는 ncdu

NCurses 디스크 사용률(ncdu) 도구는 du와 유사한 기능을 제공하지만 저주 기반 대화형 인터페이스 형식입니다. 주로 더 많은 디스크 공간을 차지하는 디렉토리에 중점을 둡니다.

ncdu를 사용하면 다음과 같이 디스크를 분석하고 자주 사용하는 디렉터리나 파일을 기반으로 결과를 표시하는 데 시간이 걸립니다.

으아악

화살표 키를 사용하여 각 항목으로 이동하세요. 디렉토리 항목에서 Enter를 누르면 ncdu는 해당 디렉토리의 내용을 표시합니다:

으아악

이를 사용하여 디렉터리를 드릴다운하고 가장 많은 디스크 공간을 차지하는 파일을 찾을 수 있으며 왼쪽 화살표 키를 사용하여 한 수준 위로 돌아갈 수 있습니다. 기본적으로 ncdu를 사용하여 d 키를 눌러 파일을 삭제할 수 있으며 삭제하기 전에 삭제 요청을 확인합니다. 사고를 방지하기 위해 이 동작을 비활성화하려면 읽기 전용 액세스에 -r 옵션(ncdu -r)을 사용하십시오.

ncdu는 다양한 플랫폼과 Linux 배포판에서 사용할 수 있습니다. 예를 들어 dnf를 사용하여 공식 저장소에서 직접 Fedora에 설치할 수 있습니다.

으아악

이 도구에 대해 자세히 알아보려면 ncdu 페이지를 확인하세요.

https://dev.yorhel.nl/ncdu

상단 교체용 2htop

htop은 top과 유사한 대화형 프로세스 뷰어이지만 기본적으로 더 나은 사용자 경험을 제공합니다. 기본적으로 htop은 top과 동일한 표시기를 쾌적한 색상으로 표시합니다.

기본적으로 htop은 다음과 같습니다:

기본 Linux 명령줄 도구에 대한 5가지 최신 대안 공유

반대로 top의 기본값은 다음과 같습니다.

기본 Linux 명령줄 도구에 대한 5가지 최신 대안 공유

또한 htop은 상단에 시스템 개요 정보를 제공하고 하단에 명령 모음을 제공합니다. 또한 F2를 눌러 설정 인터페이스로 들어가 사용자 정의할 수도 있습니다. 색상을 변경하거나, 표시기를 추가 또는 제거하거나, 개요 표시줄의 표시 옵션을 변경할 수 있습니다.

최신 버전의 top을 사용하면 구성을 통해 비슷한 결과를 얻을 수도 있지만, htop은 보다 합리적인 기본 구성을 제공하므로 아름답고 사용하기 쉬운 프로세스 뷰어가 됩니다.

이 프로젝트에 대한 자세한 내용은 htop 홈페이지를 확인하세요.

https://hisham.hm/htop/

남자 교체용 tldr 3개

tldr 명령줄 도구는 주로 예제를 포함하여 단순화된 명령 사용 정보를 표시합니다. 커뮤니티 프로젝트 tldr 페이지의 클라이언트 역할을 합니다.

이 도구는 사람을 대체할 수 없습니다. 매뉴얼 페이지는 많은 도구에 대한 표준적이고 완전한 정보 소스로 남아 있습니다. 그러나 어떤 경우에는 인간이 너무 많은 정보를 제공합니다. 때로는 명령에 대한 모든 정보가 필요하지 않고 기본 옵션만 기억하려고 할 수도 있습니다. 예를 들어, 컬 명령의 매뉴얼 페이지 길이는 거의 3000줄입니다. 대조적으로, 컬의 tldr 페이지는 길이가 40줄에 불과하며 다음과 같습니다:

으아악

TLDR은 "너무 길다; 읽지 않았다"라는 인터넷 속어의 약어로, 매우 긴 글을 요약한다는 뜻입니다. 매뉴얼 페이지는 유용하기는 하지만 때로는 너무 길기 때문에 이 이름은 이 도구에 적합합니다.

Fedora에서 tldr 클라이언트는 Python으로 작성되었습니다. dnf를 사용하여 설치할 수 있습니다. 다른 클라이언트 옵션에 대해 알아보려면 tldr 페이지 프로젝트 페이지를 참조하세요.

https://tldr.sh/

일반적으로 tldr 도구는 tldr 페이지를 보려면 인터넷에 액세스해야 합니다. Fedora의 Python 클라이언트를 사용하면 오프라인 액세스를 위해 이러한 페이지를 다운로드하고 캐시할 수 있습니다.

tldr에 대해 자세히 알아보려면 tldr tldr을 사용하세요.

sed/grep 대체용 4 jq

jq 是一个命令行 JSON 处理器,类似于 sed 或 grep,但专门设计用于处理 JSON 数据。如果你是在日常任务中会用到 JSON 的开发人员或系统管理员,那么这是你工具箱中必不可少的工具。

与 grep 和 sed 等通用文本处理工具相比,jq 的主要优点是它理解 JSON 的数据结构,允许使用单个表达式创建复杂的查询。

举例来说,假设你试图在这个 JSON 文件中查找容器的名称:

{
  "apiVersion": "v1",
  "kind": "Pod",
  "metadata": {
    "labels": {
      "app": "myapp"
    },
    "name": "myapp",
    "namespace": "project1"
  },
  "spec": {
    "containers": [
      {
        "command": [
          "sleep",
          "3000"
        ],
        "image": "busybox",
        "imagePullPolicy": "IfNotPresent",
        "name": "busybox"
      },
      {
        "name": "nginx",
        "image": "nginx",
        "resources": {},
        "imagePullPolicy": "IfNotPresent"
      }
    ],
    "restartPolicy": "Never"
  }
}

如果你直接使用 grep 查找 name,则写法如下:

$ grep name k8s-pod.json
        "name": "myapp",
        "namespace": "project1"
                "name": "busybox"
                "name": "nginx",

grep 返回包含单词 name 的所有行。你可以向 grep 添加更多选项来限制它,借助一些正则表达式操作来找到容器的名称。如果是使用 jq 获得你想要的结果,则可以使用一个表达式来模拟向下导航数据结构,如下所示:

$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"

这个命令提供这两个容器的名称。如果你只是在查找第二个容器的名称,则可以在表达式中添加数组元素索引:

$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"

因为 jq 知道数据结构,所以即使文件格式稍有变化,它也能提供相同的结果。而只要格式稍有变化,grep 和 sed 就可能提供不同的结果。

jq 有许多特性,要介绍所有这些特性的话,需要另写一篇文章。要了解更多信息,请参阅 jq 项目页、man 页面或 tldr jq。

https://stedolan.github.io/jq/

5作为 find 替代品的 fd

fd 是 find 命令的一个简单而快速的替代品。它的目的不是取代 find 提供的全部功能;相反,它提供了一些合理的默认值,在某些情况下非常有用。

例如,在包含 Git 存储库的目录中搜索源代码文件时,fd 会自动排除隐藏的文件和目录,包括. .git 目录,并忽略.gitignore 文件中的模式。一般来说,它的搜索速度更快,而且第一次搜索时提供了更多相关的结果。

默认情况下,fd 在当前目录中执行不区分大小写的模式搜索,输出是彩色的。使用 find 进行相同的搜索需要你提供额外的命令行参数。例如,在当前目录中搜索所有的 markdown 文件(.md 或.MD ),find 命令如下:

$ find . -iname "*.md"

使用 fd 进行同样的搜索:

$ fd .md

在某些情况下,fd 需要额外的选项;例如,如果你想包含隐藏文件和目录,则必须使用选项 -H,而这在 find 中是不需要的。

fd 可用于许多 Linux 发行版。执行以下命令,可以使用标准存储库在 Fedora 中安装:

$ sudo dnf install fd-find

要了解更多信息,请查阅 fd GitHub 存储库。

https://github.com/sharkdp/fd/

6其他替代品

虽然我仍然经常使用所有旧的基本工具,特别是在远程连接到服务器时,但这些替代品额外提供了一些在许多场景中都非常有用的好处。特别是,它们对我在 Linux 台式机和笔记本电脑上的工作帮助很大。

你的工作流中是否使用了其他工具?欢迎在下面的评论区补充。

7作者介绍

Ricardo Gerardi 是加拿大红帽公司的高级顾问,他专门从事基于 Ansible 和 Openshift 的 IT 自动化。他有丰富的电信行业经验,曾在 TELUS 担任高级架构师,并曾在 IBM 巴西和 IBM 加拿大担任网络管理解决方案的高级顾问和售前专家长达 13 年。Ricardo 是一个超过 20 年的 Linux 爱好者。他目前感兴趣的是用 Go 编程来破解东西……

위 내용은 기본 Linux 명령줄 도구에 대한 5가지 최신 대안 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 lxlinux.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제