自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何在 Linux 上正確使用 cat 命令

系統(tǒng) Linux
下面介紹如何在 Linux 上使用 cat 命令,以及何時(shí)不使用它。

cat 可能是您將在 Linux 上首先學(xué)習(xí)的命令之一。以下是在 Linux 上使用 cat 的正確方法(和錯(cuò)誤方法)。

您將在 Linux 上使用的最基本的命令之一是 cat。乍一看似乎很神秘,但實(shí)際上使用起來(lái)很簡(jiǎn)單。

下面介紹如何在 Linux 上使用 cat 命令,以及何時(shí)不使用它。

什么是 cat?

cat 是一個(gè)非常古老的實(shí)用程序,可以追溯到 Unix 的原始實(shí)現(xiàn)。這個(gè)名字可能看起來(lái)很奇怪,但它是“連接 concatenate”的縮寫。這是將一堆東西粘在一起的花哨術(shù)語(yǔ)。在這種情況下,“東西”是指文件。cat 是將一堆文本文件粘在一起的實(shí)用程序。大多數(shù)人使用它將文件打印到屏幕或另一個(gè)文件中。

GNU 實(shí)現(xiàn)是大多數(shù) Linux 發(fā)行版上默認(rèn)安裝的 coreutils 軟件包的一部分,但 BusyBox 上也有一個(gè)在小型或?qū)崟r(shí)發(fā)行版上很常見(jiàn)的版本。

將 cat 與標(biāo)準(zhǔn) I/O 一起使用

cat 對(duì)標(biāo)準(zhǔn)輸入和輸出進(jìn)行操作。這意味著它將接受來(lái)自鍵盤或使用 I/O 重定向的其他程序的文本輸入,并且您可以使用管道將其輸出與另一個(gè)程序一起使用:

cat | some_program

請(qǐng)記住,許多其他 Linux 命令也接受標(biāo)準(zhǔn) I/O,因此您可能不需要在管道中實(shí)際使用 cat。稍后再談。

它還接受來(lái)自命令行的文件作為參數(shù)。您可以使用以下命令將整個(gè)文件打印到終端:

cat file.txt

您還可以使用 cat 打印多個(gè)文件:

cat file1 file2

這是 cat 的“連接”部分。

自行調(diào)用, cat 將等待您輸入文本并按Enter,然后回顯您在終端輸入的任何內(nèi)容,直到您按Ctrl + D。您還可以使用重定向運(yùn)算符將文本重定向到文件中:

cat > some_file

cat 的低效率使用

鑒于 cat 是一個(gè)如此基本的實(shí)用程序,很容易將它與管道一起使用。Randal Schwartz 是以 Perl 編程方面的杰出貢獻(xiàn)而聞名的人,他創(chuàng)建了Useless use of cat (UUOC)“獎(jiǎng)”(如Era Eriksson 的主頁(yè)上所見(jiàn)),并且偶爾會(huì)在 Usenet 上分發(fā)它們。

如果腳本中使用 cat 命令的代碼可以用”重定向”代替,你就可以稱其為UUOC。因?yàn)橹囟ㄏ虻男室冗\(yùn)行一個(gè)外部命令要高。比如:

cat file | tr -d 'xyz'

象cat file | somecommand這種用法,現(xiàn)被稱為UUOC,是一種效率低的用法。

UUOC 的主要條件是使用 cat 將輸出通過(guò)管道傳輸?shù)揭呀?jīng)將標(biāo)準(zhǔn)輸入或文件作為參數(shù)的命令。由于有這么多 Unix 和 Linux 命令這樣做,使用 cat 管道標(biāo)準(zhǔn)輸出或單個(gè)文件是浪費(fèi)時(shí)間。您應(yīng)該查看手冊(cè)頁(yè)以了解您想要使用的任何命令,并確保它接受標(biāo)準(zhǔn)輸入,這樣您就不會(huì)“贏得”這個(gè)獎(jiǎng)項(xiàng)。

如果您要查看長(zhǎng)文件,最好使用像 Most或文本編輯器這樣的閱讀工具。

cat:一個(gè)基本但不可或缺的 Linux 工具

cat 可能是一個(gè)基本命令,但就像許多基本的 Linux 工具一樣,它可以方便地打印文本文件并將輸出發(fā)送到其他程序。如果您想在終端中添加更多顏色,您可能需要考慮 lolcat,這是另一個(gè)基于過(guò)濾器的程序,可在終端中生成彩虹色文本。

責(zé)任編輯:華軒 來(lái)源: Linux迷
相關(guān)推薦

2020-08-24 12:37:54

Linuxxargs命令

2018-08-06 09:30:00

LinuxPbcopyPbpaste

2018-04-25 10:46:05

Linux命令行日歷

2014-06-05 15:06:29

2019-01-07 09:50:06

Linuxtarball命令

2019-11-26 16:58:51

Linuxpkgsrc

2023-01-17 07:40:59

LinuxAppImage應(yīng)用程序

2021-10-02 10:10:47

LinuxBusyBox命令

2010-06-24 11:16:17

Linux Cat命令詳解

2023-07-23 19:26:18

Linuxcat 命令

2016-01-04 15:17:50

Linux命令行硬件

2014-06-09 10:23:20

2022-08-12 08:38:52

FFmpegLinux命令

2020-05-28 08:45:21

Arch LinuxLinuxKDE Plasma

2022-10-25 09:07:28

Linuxxargs命令

2018-06-26 09:15:24

Linux命令history

2022-11-18 10:16:26

Linuxwc 命令

2018-05-16 10:32:06

Linux命令find

2018-09-26 10:45:01

Linux命令tcpdump

2023-09-14 15:05:33

grep正則表達(dá)式
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)