日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

在日常使用 linux/Unix 系統時,我們會使用許多命令行工具來完成我們的工作,并理解和管理我們的系統,像 du 用于監視磁盤利用率,top 用于顯示系統資源。其中一些工具已經存在很長時間了。例如,top 于 1984 年首次發布,而 du 的首次發布要追溯到 1971 年。

多年來,這些工具已經被現代化并移植到不同的系統,但是,通常,它們仍然延續著它們最初的思想和體驗。

這些都是很好的工具,對于許多系統管理員的工作流來說都是必不可少的。然而,最近幾年,開源社區已經開發出了可以帶來額外好處的替代工具。雖然有些華而不實,但另外一些則極大地提高了可用性,使它們成為現代化系統上的最佳選擇。這包括以下五個標準 Linux 命令行工具的替代品。

1作為 du 替代品的 ncdu

NCurses 磁盤利用率(ncdu)工具提供了與 du 類似的結果,但是在一個基于 curses 的交互式界面中,它重點關注那些占用磁盤空間比較多的目錄。

ncdu 會花一些時間分析磁盤,然后根據你最常用的目錄或文件顯示結果,如下所示:

ncdu 1.14.2 ~ Use the arrow keys to navigate, press ? for help
--- /home/rgerardi ------------------------------------------------------------
   96.7 GiB [##########] /libvirt
   33.9 GiB [###       ] /.crc
    7.0 GiB [          ] /Projects
.   4.7 GiB [          ] /Downloads
.   3.9 GiB [          ] /.local
    2.5 GiB [          ] /.minishift
    2.4 GiB [          ] /.vagrant.d
.   1.9 GiB [          ] /.config
.   1.8 GiB [          ] /.cache
    1.7 GiB [          ] /Videos
    1.1 GiB [          ] /go
  692.6 MiB [          ] /Documents
. 591.5 MiB [          ] /tmp
  139.2 MiB [          ] /.var
  104.4 MiB [          ] /.oh-my-zsh
   82.0 MiB [          ] /scripts
   55.8 MiB [          ] /.mozilla
   54.6 MiB [          ] /.kube
   41.8 MiB [          ] /.vim
   31.5 MiB [          ] /.ansible
   31.3 MiB [          ] /.gem
   26.5 MiB [          ] /.VIM_UNDO_FILES
   15.3 MiB [          ] /Personal
    2.6 MiB [          ]  .ansible_module_generated
    1.4 MiB [          ] /backgrounds
  944.0 KiB [          ] /Pictures
  644.0 KiB [          ]  .zsh_history
  536.0 KiB [          ] /.ansible_async
 Total disk usage: 159.4 GiB  Apparent size: 280.8 GiB  Items: 561540

使用方向鍵導航到每個條目。如果你在一個目錄條目上按下 Enter 鍵,ncdu 將顯示該目錄的內容:

--- /home/rgerardi/libvirt ----------------------------------------------------
                         /..
   91.3 GiB [##########] /images
    5.3 GiB [          ] /media

你可以使用它下鉆目錄并查找哪些文件占用的磁盤空間最多,使用左箭頭鍵可以返回上一級目錄。在默認情況下,可以按下 d 鍵使用 ncdu 刪除文件,在刪除之前,它會跟你確認刪除請求。如果你想禁用此行為以防止發生意外,請使用 -r 選項進行只讀訪問:ncdu -r。

ncdu 可用于許多平臺和 Linux 發行版。例如,你可以使用 dnf 直接從官方存儲庫把它安裝到 Fedora 上:

$ sudo dnf install ncdu

要了解關于這個工具的更多信息,請查看 ncdu 頁面。

https://dev.yorhel.nl/ncdu

2作為 top 替代品的 htop

htop 是一個類似于 top 的交互式流程查看器,但它提供了更好的開箱即用的用戶體驗。默認情況下,htop 會用令人愉快的彩色顯示與 top 相同的指標。

默認情況下,htop 是這樣的:

 

相比之下,top 默認是這樣的:

 

此外,htop 在頂部提供了系統概覽信息,在底部提供了一個命令欄,可以使用功能鍵來觸發命令,而且,你還可以按 F2 進入設置界面對它進行定制。你可以更改其顏色、添加或刪除指標,或更改概覽欄的顯示選項。

雖然對于最新版本的 top,你也可以通過配置實現類似的結果,但 htop 提供了更合理的默認配置,這使得它成為一個漂亮且易于使用的流程查看器。

要了解關于這個項目的更多信息,請查看 htop 首頁。

https://hisham.hm/htop/

3作為 man 替代品的 tldr

tldr 命令行工具顯示簡化的命令用法信息,主要包括示例。它是作為社區項目 tldr pages 的客戶端。

這個工具不能代替 man。man 頁面仍然是許多工具規范而完整的信息源。然而,在某些情況下,man 提供的信息太多了。有時候,你不需要一個命令的所有信息;你只是試著記住基本的選項。例如,curl 命令的 man 頁面幾乎有 3000 行。相反,curl 的 tldr 頁面只有 40 行,如下所示:

$ tldr curl
# curl
  Transfers data from or to a server.
  Supports most protocols, including HTTP, FTP, and POP3.
  More information: <https://curl.haxx.se>.
- Download the contents of an URL to a file:
  curl http://example.com -o filename
- Download a file, saving the output under the filename indicated by the URL:
  curl -O http://example.com/filename
- Download a file, following [L]ocation redirects, and automatically [C]ontinuing (resuming) a previous file transfer:
  curl -O -L -C - http://example.com/filename
- Send form-encoded data (POST request of type `application/x-www-form-urlencoded`):
  curl -d 'name=bob' http://example.com/form                                                                                            
- Send a request with an extra header, using a custom HTTP method:
  curl -H 'X-My-Header: 123' -X PUT http://example.com                                                                                  
- Send data in JSON format, specifying the appropriate content-type header:
  curl -d '{"name":"bob"}' -H 'Content-Type: application/json' http://example.com/users/1234
... TRUNCATED OUTPUT

TLDR 是網絡俚語“too long; didn't read”的縮寫,指對一篇很長的文章進行總結。這個名稱很適合這個工具,因為 man 頁面雖然有用,但有時太長了。

在 Fedora 中,tldr 客戶端是用 Python/ target=_blank class=infotextkey>Python 編寫的。你可以使用 dnf 安裝它。要了解其他客戶端選項,請參閱 tldr pages 項目頁面。

https://tldr.sh/

一般來說,tldr 工具需要訪問互聯網以查閱 tldr pages。Fedora 中的 Python 客戶端允許你下載并緩存這些頁面以供脫機訪問。

要了解有關 tldr 的更多信息,可以使用 tldr tldr。

4作為 sed/grep 替代品的 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/

分享到:
標簽:Linux
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定