Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

WBOY
WBOYnach vorne
2022-01-14 18:23:492605Durchsuche

Dieser Artikel vermittelt Ihnen Wissen über alternative Tools unter dem Linux-Betriebssystem, einschließlich der Installation und Verwendung des bat-Befehls unter Linux. Ich hoffe, er wird Ihnen hilfreich sein.

Unter dem Linux-Betriebssystem verwenden wir häufig den Befehl cat, um mehrere Dateien zu verbinden und auf der Standardausgabe auszugeben, mehrere Dateien zu einer Zieldatei zusammenzufassen und mehrere Dateien an die Zieldatei anzuhängen.

Kürzlich habe ich auf GitHub einen Befehl mit einer ähnlichen Funktion namens „Bat“ entdeckt. Er ist ein Ersatz für den Befehl „cat“ und verfügt über einige sehr coole Funktionen wie Syntaxhervorhebung, Git-Integration und automatisches Paging.

In diesem Artikel werde ich Ihnen vorstellen, wie Sie den bat-Befehl unter Linux installieren und verwenden. 1, bat jedes Arch-basierte System, um es zu installieren.

pacman -S bat

Fedora

dnf install bat

macOS

brew install bat
Ubuntu 21.10

Ich habe bat über die Ubuntu-Umgebung installiert. Laden Sie die .deb-Datei von der Release-Seite von bat herunter installieren.

sudo apt-get install wget
wget https://github.com/sharkdp/bat/releases/tag/v0.18.3/bat_0.18.3_amd64.deb
sudo dpkg -i bat_0.18.3_amd64.deb
Für andere Systeme müssen Sie möglicherweise die Softwarequelle kompilieren und installieren oder sich auf andere Betriebssysteminstallationsmethoden von bat auf GitHub beziehen.

bat-Befehlsverwendung

bat-Befehlsverwendung ist der cat-Befehlsverwendung sehr ähnlich. Verwenden Sie den Bat-Befehl, um eine neue Datei zu erstellen:

bat > jiaoben1.sh

Verwenden Sie den Bat-Befehl, um den Inhalt einer Datei anzuzeigen:

bat jiaoben1.sh
Verwenden Sie den Bat-Befehl, um mehrere Dateien gleichzeitig anzuzeigen:

bat jiaoben1.sh jiaoben2.sh

Verwenden Sie den Bat-Befehl um den Inhalt mehrerer Dateien in einer einzigen Datei zusammenzuführen. Medium:

bat jiaoben1.sh jiaoben2.sh > test.txt

Oben wird beschrieben, wie bat neue Dateien erstellt, Dateiinhalte anzeigt und den Inhalt mehrerer Dateien in einer einzigen Datei zusammenführt.

Als nächstes werfen wir einen Blick auf einige sehr coole Funktionen des Bat-Befehls. Der bat-Befehl unterstützt die Syntaxhervorhebung für die meisten Programmier- und Auszeichnungssprachen. Verwenden wir also die Befehle cat und bat, um den Inhalt von jiaoben1.sh für einen scharfen Vergleich anzuzeigen.

Wie Sie sehen können, zeigt der Befehl cat den Inhalt der Datei im Nur-Text-Format an, während der Befehl bat die Syntaxhervorhebung und eine saubere Textausrichtung anzeigt.

Aus der Ausgabe des Bat-Befehls oben können wir ersehen, dass es Tabellenzeilen gibt. Wenn Sie nur Zeilennummern (ohne Tabellen) anzeigen möchten, können Sie dies mit dem Parameter -n erreichen, obwohl die Ausführung von cat auch angezeigt wird Zeilennummern gibt es immer noch nicht. Der Ausgabeeffekt nach der Fledermausausführung ist wunderschön.

bat -n jiaoben2.sh

bat-Befehl unterstützt Git-Integration, Sie können Dateien im Git-Repository einfach anzeigen und bearbeiten, bat und Git-Verbindung können Änderungen am Index anzeigen.

bat unterstützt automatisches Paging, diese Funktion erfordert ebenfalls Aufmerksamkeit.

Unterstützt Paging, was bedeutet, dass der Bat-Befehl seinen Ausgabeinhalt automatisch an den Less-Befehl überträgt, wenn der Ausgabeinhalt der Datei die Bildschirmanzeige überschreitet und Sie die Eingabetaste verwenden können, um die Ausgabeinhaltsseite anzuzeigen nach Seite springen Sie mit der Leertaste direkt zur letzten Zeile am Ende des Artikels.

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-UmgebungDiese sind nicht erforderlich, wenn Sie den bat-Befehl verwenden, der die Ausgabe einer Datei, die sich über mehrere Seiten erstreckt, automatisch streamt.

bat jiaoben3.sh

Vergleichen Sie den Befehl cat, um den Inhalt der Datei jiaoben3.sh auf mehreren Seiten anzuzeigen. Die Eingabeaufforderung springt direkt zur letzten Seite der Datei, und Sie können den Inhalt am Anfang nicht sehen und in der Mitte der Datei über mehrere Seiten hinweg.

cat jiaoben3.sh
Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

Wenn Sie cat verwenden möchten, um den Effekt des bat-Befehls zu erzielen, müssen Sie die Ausgabe von cat zum Übertragen auf den less-Befehl verwenden, damit Sie den Inhalt Seite für Seite von Anfang an anzeigen können.

cat jiaoben3.sh | less
Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

Ebenso können Sie auf diese Weise mit der Eingabetaste den ausgegebenen Inhalt Seite für Seite betrachten und mit der Leertaste direkt zur letzten Zeile am Ende des Textes springen.

benutzerdefinierte Fledermaus-Themen

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

Derzeit gibt es 24 benutzerdefinierte Fledermaus-Themen, darunter: Coldark-Cold, GitHub, Monokai Extended Light, OneHalfDark, Solarized (hell), TwoDark, Visual Studio Dark+, base16, Zenburn usw. ;

如果你不喜欢默认主题,也是可以根据自己的风格进行修改,只需执行:bat --list-themes命令,即可显示可用的主题。

# bat --list-themes
Theme: 1337
  // Output the square of a number.
  fn print_square(num: f64) {
      let result = f64::powf(num, 2.0);
      println!("The square of {:.2} is {:.2}.", num, result);
  }
......

例如你要选择Dracula主题,可直接执行:bat --theme=Dracula 文件名

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

如果你想永久改变某一个主题,可使用export BAT_THEME="Dracula"在你的 shell 启动文件,以使更改为永久。

您可以使用--style参数选项来控制bat输出的外观,配置元素包括:行号、文件头、网格边框、Git修改来显示除文件内容之外的东西,参数是一个逗号分隔的列表。

--style=numbers,changes可以使用仅显示 Git修改和行号,而不显示网格和文件标题,设置BAT_STYLE环境变量以使这些更改为永久。

关于更多 bat 的使用方法可通过执行命令man bat或bat --help。

除此之外,也可以通过 bat 项目的 GitHub 库查看更多详细信息,我用过 bat 后就不会再想用回 cat 了!

2、duf

在 Linux 环境下,我们知道 df 命令是用于显示磁盘分区上可使用的磁盘空间,默认显示单位为 KB,你还可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda3       18439940 4943264  12559972  29% /
tmpfs             506176      76    506100   1% /dev/shm
/dev/sda1          99150   30003     64027  32% /boot
/dev/sr0         4363088 4363088         0 100% /media/CentOS_6.5_Final

除此之外,du 命令也是查看使用空间的,但与 df 命令不同的是 Linux du 命令是对文件和目录磁盘使用的空间的查看,和 df 命令还是有一些区别的。

# du
4    ./.abrt
8    ./.dbus/session-bus
12    ./.dbus
4    ./.nautilus
40    ./.local/share/gvfs-metadata
24    ./.local/share/applications
68    ./.local/share
72    ./.local

接下来就跟大家介绍一款终端工具,你可以理解为传统的 Linux 命令 df 和 du 整合版 —— duf。

duf 是一个用 Golang 编写的跨平台磁盘使用情况工具,可以让你轻松地检查可用磁盘空间,对输出进行分类,并以用户友好的方式进行呈现,适用于 Linux、Windows、macOS、Android、FreeBSD;

Ubuntu 安装方式:

$ sudo apt install gdebi
#如果报错,Failed to fetch http://security.ubuntu.com......
# sudo apt-get update
$ sudo gdebi duf_0.5.0_linux_amd64.deb
#要先在下载duf_0.5.0_linux_amd64.deb,下载地址为:https://github.com/muesli/duf/releases/download/v0.5.0/duf_0.5.0_linux_amd64.deb

MacOS 安装方式:

#先安装Homebrew,按照提示安装即可。
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
#安装duf
brew install duf
#或者
sudo port selfupdate && sudo port install duf

Windows 安装方式:

choco install duf
#或者
scoop install duf

安装完毕后,可直接使用 duf,方法也非常简单。

不添加任何参数,会输出所有本地设备、已挂载的任何云存储设备以及任何其他特殊设备(包括临时存储位置等)的详细信息;

$ duf

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

如果你只想查看本地连接设备的详细信息,而不想看其他的,可执行:

$ duf --only local

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

如果你只想根据大小按特定顺序对输出信息进行排序,可执行:

$ duf --sort size

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

更多参数使用方式:

duf /home /some/file 根据参数,则 duf 将仅列出特定的设备和安装点
duf --all 列出所有内容
duf --hide-network 隐藏网络文件系统,与之对应的 --hide-fuse --hide-special --hide-loops --hide-binds
duf --inodes 列出inodes
duf --output mountpoint,size,usage 指定输出的格式 对应的还有(mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem)
duf --json 以json格式输出
duf --theme light 如果 duf 无法正确检测终端的颜色,可以设置一个主题
duf --help 查看所有 duf 的可用命令

3、tldr

对于初学者学习 Linux 来说,遇到最多的问题就是在 Linux 操作系统下有记不完的命令以及包括各种参数的使用方法,其实你根本不用死记硬背它,当你用到时去查找相关资料或通过man命令来查看相关文档,man手册输出的信息也比较多,而对于参数较多的命令来说,翻看man手册也非常吃力。

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

这次就给大家介绍一款工具:tldr,它的全称是:Too Long, Don't Read,中文意思:太长不看的意思。

其实跟man命令的结果基本上就是太长不看,tldr这个工具你可以理解为简化了 man 命令的帮助文档,把 Linux 命令最常用的一些命令用法列举出来,非常容易看懂。

同时,tldr包括非常多语言编写的客户端,比如:C、Go、iOS、Python、nodejs 等等,你可以使用不同的客户端来安装;

我这里的环境是 Ubuntu,需要先安装 Node.js,然后根据下述安装方式操作:

sudo apt-get install nodejs
sudo apt-get install npm
sudo npm install -g tldr

执行完上述三条命令后,还需要再执行tldr --update,更新tldr至最新的状态,然后就可以直接使用了;

tldr --update

tldr 的使用:

tldr 命令的使用也非常简单,只需 tldr + 你所要查询的命令即可;

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

4、htop

在 Linux 操作系统上显示进程运行状态信息最常用工具是我们熟悉的 top,它是每位系统管理员的好帮手。

htop kann als hervorragender Ersatz für top bezeichnet werden. Es ist ein plattformübergreifendes interaktives Prozessüberwachungstool. Es bietet bessere visuelle Effekte und erleichtert das Verständnis des aktuellen Systemstatus Ermöglicht vertikales und horizontales Scrollen durch die Liste der Prozesse, um deren vollständige Befehlszeilen und zugehörige Informationen wie Speicher und CPU-Verbrauch anzuzeigen. Es werden auch systemweite Informationen wie der Lastdurchschnitt oder die Swap-Nutzung angezeigt.

Die angezeigten Informationen sind über grafische Einstellungen konfigurierbar und können interaktiv sortiert und gefiltert werden. Prozessbezogene Aufgaben wie Beendigung und erneute Verarbeitung können ohne Eingabe der PID ausgeführt werden.

Die Installation ist ebenfalls sehr einfach. Führen Sie einfach den folgenden Befehl aus: apt install htop, um den Vorgang abzuschließen.

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

htop hat gegenüber top offensichtliche Vorteile. Zusätzlich zu seinen umfassenderen Funktionen verfügt es auch über reichhaltige Farbkombinationen und ist insgesamt benutzerfreundlicher.

5. Glances ist ein in Python geschriebenes plattformübergreifendes Überwachungstool, das eine große Menge an Systemüberwachungsinformationen über Flüche oder eine webbasierte Schnittstelle darstellt Es ist ein Top/Htop-Ersatz für die Betriebssysteme GNU/Linux, BSD, Mac OS und Windows. Es funktioniert im Client/Server-Modus, die Fernüberwachung kann über Terminal, Webinterface oder API (XML-RPC und RESTful) erfolgen, Statistiken können auch in eine Datei oder eine externe Zeit-/Wertdatenbank exportiert werden.

Neben der Auflistung aller Prozesse und ihrer CPU- und Speicherauslastung können auch andere Informationen über das System angezeigt werden, wie zum Beispiel:

Netzwerk- und Festplattennutzung

  • Belegter Speicherplatz des Dateisystems und Gesamtspeicherplatz

  • Daten von verschiedenen Sensoren (z. B. Batterie)

  • und eine Liste von Prozessen, die in letzter Zeit zu viele Ressourcen verbraucht haben

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung6, exa

erwähnte den ls-Befehl, jeder Kein Fremder, In einer Linux-Umgebung besteht seine Hauptfunktion darin, die im aktuellen Verzeichnis enthaltenen Dateien und Unterverzeichnisse aufzulisten. Wenn sich zu viele Dateien im aktuellen Verzeichnis befinden, ist die Verwendung des Befehls ls nicht sehr gut, da das Ausgabeergebnis nicht das ist, was Sie möchten. Erstens: Eine sekundäre Filtersuche ist erforderlich. Zweitens: Wenn zu viele Dateien vorhanden sind, sind die Ergebnisse der Terminalausgabe langsam in Unix- und Linux-Betriebssystemen enthalten, was ihm mehr Funktionen und bessere Standardeinstellungen verleiht. Es verwendet Farben, um Dateitypen und Metadaten zu unterscheiden. Es versteht symbolische Links, erweiterte Eigenschaften und Git. Es ist klein, schnell und hat nur eine Binärdatei.

Was ist der Unterschied zwischen EXA und LS?

Der Terminalbildschirm ist kein Engpass mehr: exa ist leistungsstark, benutzerfreundlicher als ls und die Ausgabeergebnisse werden schneller sein;

    Farbe: exa verwendet viele Farben; mit dem ls-Befehl
  • FUNKTIONEN VON EXA

  • Farbe: Liste der Dateitypen und wie man Dateien unterscheidet;

Rasteransicht: Dateien in einem Raster in der gleichen Größe wie das Terminalfenster anzeigen;

    Langansicht: Dateien und ihre Metadaten in einer Tabelle anzeigen;
  • Baumansicht: Dateien und ihre untergeordneten Elemente in einem Baum anzeigen;
  • Git-Integration: Anzeigen des Git-Status einer Datei im Repository;
  • Filter: Dateien in der Liste ausblenden, unsichtbare Dateien anzeigen und die Ausgabe sortieren;
  • Xattrs: Die erweiterten Attribute der Datei auflisten;
  • Bei der Installation von Ubuntu 21.10 muss nur der Befehl ausgeführt werden: apt exa installieren.
  • Anzeigeoptionen
  • -1, --oneline: Einen Eintrag pro Zeile anzeigen

-G, --grid: Einträge als Raster anzeigen (Standard)

    -l, - - long: Erweiterte Details und Attribute anzeigen
  • -R, --recurse: Rekursion in Verzeichnisse
  • -T, --tree: Rekursion in Verzeichnisse als Baum
  • -x, --across: Sortieren das Raster statt nach unten
  • -F, --classify: Typindikator nach Dateiname anzeigen
  • --colo[u]r: Wann Terminalfarben verwendet werden sollen
  • --colo[u]r- Skala: Dateigrößenstufen deutlich hervorheben
  • --icons: Symbole anzeigen
  • --no-icons: Symbole nicht anzeigen (--icons immer überschreiben)
  • Filteroptionen

  • -a, --all: Versteckte und „Punkt“-Dateien anzeigen

-d, --list-dirs: Verzeichnisse wie normale Dateien auflisten

    - L, --level=(tiefe): Begrenzen Sie die Rekursionstiefe
  • -r, --reverse: Sortierreihenfolge umkehren
  • -s, --sort=(field): Sortieren nach welchem ​​Feld
  • --group-directories-first: Verzeichnisse auflisten vor anderen Dateien
  • -D, --only-dirs: Nur Verzeichnisse auflisten
  • --git-ignore:忽略中提到的文件.gitignore

  • -I,--ignore-glob=(globs):要忽略的文件的全局模式(管道分隔)

传递该--all选项两次以同时显示.和..目录。

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

7、fd

fd 是一个在文件系统中查找条目的程序,它是 find 命令的一个简单、快速且用户友好的替代品,fd 目的不是取代 find 命令所提供的全部功能,而是在多数用例中提供了合理的默认值,在某些情况下非常有用。

fd 输出是彩色的,类似于某些 ls 模式,它是递归的,在包含 Git 存储库的目录中搜索源代码文件时,fd 会自动排除隐藏的文件和目录,包括.、.git目录,并忽略.gitignore文件中的模式。一般来说,搜索速度更快,而且第一次搜索时会提供了更多相关结果。

默认情况下,fd 在当前目录中执行不区分大小写的模式搜索,但是,如果你的搜索模式包含一个大写字母,fd 将以区分大小写的模式进行执行。当然,也可以重写默认值,但在许多情况下还是有利的。同样使用 find 进行相同的搜索需要你提供额外的命令行参数。

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

sudo apt install fd-find

在 Ubuntu 操作系统中,命令是 fdfind,避免与其他现有的实用程序名称发生冲突,如果希望它是 fd,可以设置一个别名:

alias fd=fdfind

要使别名保持不变,在重启后仍然可用,请将其放入“.bashrc”或“.bash_aliases”文件中。

使用不带参数选项的 fd,则类似于 ls,不同之处在于它默认情况下也会将子目录中的文件进行列出。

fd
bat_0.18.3_amd64.deb
fd_8.3.0_amd64.deb
jiaoben1.sh
jiaoben2.sh
jiaoben3.sh
snap
snap/firefox
snap/firefox/631
snap/firefox/731
snap/firefox/common
snap/firefox/current
snap/snap-store
snap/snap-store/557
snap/snap-store/558
snap/snap-store/common
snap/snap-store/current
test.md

在当前目录中搜索所有的 markdown 文件(.md 或.MD ),find 命令如下:

find . -iname "*.md"
./test.md

使用 fd 进行同样的搜索:

fd *.md
test.md

在某些情况下,fd 需要额外的选项;例如,如果你想包含隐藏文件和目录,则必须使用选项 -H,而这在 find 中是不需要的,关于 fd 更多命令行参数选项的使用方法,可查阅 fd GitHub 存储库。

8、ag

ack和ag是两个文本搜索工具,比自带的grep要好用得多。

在指定目录下搜索文本时,不需要像 grep 那样指定各种命令行选项,输出结果也会包含文件名和行号,并且会高亮显示搜索关键字。

ag是可以比grep、ack更快的递归搜索文件内容。

Ubuntu 21.10 安装 ag 和 ack
apt-get install silversearcher-ag
apt install ack

ag 命令常用参数

  • ag -g (文件名):类似于 find . -name (文件名)

  • ag -i sed:忽略大小写搜索含 sed 文本

  • ag -A sed:搜索含 sed 文本,并显示匹配内容之后的 n 行文本

  • ag -B sed:搜索含 sed 文本,并显示匹配内容之前的 n 行文本

  • ag -C sed:搜索含 sed 文本,并同时显示匹配内容以及它前后各 n 行文本的内容

  • ag -w sed:全匹配搜索,只搜索与所搜内容完全匹配的文本

  • ag --java sed:在 java 文件中搜索含 sed 的文本

  • ag --xml sed:在 XML 文件中搜索含 sed 的文本

ag 命令的使用

根据文件名进行搜索对应的文件,可使用-g参数选项。

ag -g jiaoben
jiaoben2.sh
jiaoben1.sh
jiaoben3.sh

搜索当前目录下有关 sed 关键字的文本。

ag -w sed
jiaoben1.sh
10:                sed -i '2d' "$new_filename"

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

更多参数选项,大家可根据自身实际场景进行运用。

9、axel

axel 是命令行多线程下载工具,下载文件时可以替代 curl、wget。

Ubuntu 21.10 安装 axel

apt-get install axel

axel 参数选项

  • -n:指定线程数

  • -o:指定另存为目录

  • -s:指定每秒的最大比特数

  • -q:静默模式

案例

# axel -n 10 -o /tmp/ http://mirrors.163.com/ubuntu/ls-lR.gz
# exa /tmp/ls-lR.gz
/tmp/ls-lR.gz

可以看出,我们通过 axel 也是可以把 ls-lR.gz 这个文件正常下载到 /tmp 目录下的。

10、pydf

在 Linux 系统下,我们可以使用df命令来显示磁盘的相关信息。

# df
文件系统          1K-块     已用    可用 已用% 挂载点
tmpfs            199180     1660  197520    1% /run
/dev/sda3      19946096 10317864 8589692   55% /
tmpfs            995884        0  995884    0% /dev/shm
tmpfs              5120        4    5116    1% /run/lock
/dev/sda2        524252     5344  518908    2% /boot/efi
tmpfs            199176      100  199076    1% /run/user/1000
/dev/sr0        3043440  3043440       0  100% /media/jacktian/Ubuntu 21.10 amd64
tmpfs            199176       60  199116    1% /run/user/0

Ubuntu 21.10 安装 pydf

apt install pydf

pydf 可以说是 df 的替代品,它以更简洁的方式显示磁盘使用状态。

Zusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung

相关推荐:《Linux视频教程

Das obige ist der detaillierte Inhalt vonZusammenfassung und Austausch von zehn alternativen Tools in der Linux-Umgebung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.im. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen