猫:它不是猫,而是连接器

猫咪

好, 猫计划 它可能是Linux shell中最常用的之一。 这是非常基本的,但也很实用。 就实用性而言,有时最简单,最基础的工具也是最强大的。 它的名称来自conCATenate,因此,我决定将其命名为本文的标题,在这里我将尝试为那些尚不了解它的人解释它。

基本上,连接器不仅具有其名称所暗示的含义,而且不仅可以连接,而且还可以 显示文本文件的内容, 并与管道结合使用,它甚至可以变得更强大,并具有多种用途。 在本文中,我将通过实际示例总结所有这些基本实用程序,以便您可以更直观地查看它...

只需查看文件的内容,您可以使用以下命令:

cat nombre_archivo

cat /etc/passwd

这将在屏幕上显示您。 如果是加密文件或二进制文件,那么您会看到它显示出对您没有多大意义的奇怪字符或符号。

你甚至可以 查看输出中多个串联文件的内容,因此得名:

cat nombre_archivo

cat /etc/passwd /etc/passwd- /etc/hosts

触摸的另一种可能性是 使用cat创建文件:

cat > ejemplo.txt

这将以交互方式打开一种编辑器,您可以在其中输入希望创建的文件具有的所有文本,也可以将其保留为空。 输入完所需的内容后,只需按 按Ctrl + D 出去。

文件的内容可能很长 而且您更喜欢方便其导航和阅读,因此可以越来越少地使用它:

cat manual.txt | more
cat manual.txt | less

这将使导航显示的文本更加容易。 顺便说一句 退出按Q 就像对待男人等

对开发人员和s显示行号。 如果要cat对文件内容的行进行编号,请使用n选项。 那不会改变文件的内容,只会在输出中显示数字:

cat -n codigo.c 

顺便说一下, 如果要保存编号的文本 如屏幕上显示的那样,您可以使用重定向来做到这一点。 例如:

只需查看文件的内容,您可以使用以下命令:

cat -n codico.c > numerado.txt

请记住,>您所做的是保留内容 在这种情况下为numbered.txt。 即,如果不存在,则使用内容创建它,但是如果已经存在,则将删除其中先前的内容,并保存新内容。 为避免删除上述内容并在末尾添加内容,请使用>>而不是>。

-n选项的缺点是它将所有行编号。 但是如果你想 防止对那些空的进行编号, 您可以使用-b:

cat -b /etc/hosts

当然,通过所有选项,您可以使用管道并重定向到渠道内容等。 而且我建议您阅读猫人以了解更多信息。 有-e用$替换EoL(行尾),-T用于制表符,-s抑制空的重复行等选项。

到目前为止,仅显示了可见字符,但是还有许多其他不可见的不可见字符。 要显示它们,请使用v标志:

cat -v demo.odt

你可以用它来 删除文件内容并将其留空。 为此,您可以使用特殊的设备/ dev / null,如下所示:

cat /dev/null | demo.txt

在这种情况下, 的/ dev / null的 它为null,它将通过管道将其重定向到demo.txt文本文件。 也就是说,demo.txt填充有空内容,或者换句话说,将其删除。

您也可以使用此其他功能 输入序列,直到您键入EOL 然后关闭,即它作为一种编辑器打开,您可以在其中编写所需的任何内容。 显然,就这样,它是没有用的,但是例如,您可以编写所有内容并将其保存到文件中:

cat << EOL > hola

基本上<<告诉外壳程序,直到输入标签(在本例中为EOL)之前,您都将输入字符串,这将表明您已到达末尾。 您可以用EOL代替STOP或任何您想要的东西。

而且,如果您使用的是异构系统,则可能已经注意到D world文本文件OS / Windows使用UNIX / Linux以外的其他行尾字符,因此在一个或另一个系统上尝试查看文件时,文本可能未对齐。 在* nix中,LF用于结束行,而在DOS / Windows中,CR / LF用于结束行。 为了解决这个问题,您有两个工具,分别是dos2unix和doix2dos,它们可以从DOS / Windows转换为Unix,而unixXNUMXdos则相反。 但是,如果您不想安装它们,则可以像下面这样使用cat:

cat dos.txt | sed "s/^M\{1,\}$//" | sed "$ s/^Z//" > archivo_convertido.txt

cat unix.txt | sed "s/$/^M/" | sed "$ s/$/^Z/" > archivo_convertido.txt

如你看到的, 猫的利润很多。 尽管它很简单,但是它允许您做很多事情。 此外,您在这里看到的所有内容也不是唯一的。 您可以想象它可以为您服务的许多其他实用程序和新事物。 请记住阅读手册中的更多内容:

man cat


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。