在 Linux 命令行上使用元字符是提高生产力的一个好方法。
在我的 Linux 之旅的早期,我学会了如何使用命令行。这就是 Linux 的与众不同之处。我可以失去图形用户界面(GUI),但没有必要完全重建机器。许多 Linux 电脑是 无头 运行的,你可以在命令行上完成所有的管理任务。它使用许多所有人都熟悉的基本命令,如 ls
、ls-l
、ls-l
、cd
、pwd
、top
等等。
Linux 上的 Shell 元字符
你可以通过使用元字符来扩展这些命令。我不知道你怎么称呼它们,但这些元字符使我的生活变得更轻松。
管道符 |
假设我想知道我的系统上运行的 Firefox 的所有实例。我可以使用带有 -ef
参数的 ps
命令来列出我系统上运行的所有程序实例。现在我想只看那些涉及 Firefox 的实例。我使用了我最喜欢的元字符之一,管道符 |
,将其结果送到 grep
,用它来搜索模式:
“`
$ ps -ef | grep firefox
“`
输出重定向 >
另一个我最喜欢的元字符是输出重定向 >
。我用它来打印 dmesg
命令结果中所有 AMD 相关的结果。你可能会发现这在硬件故障排除中很有帮助:
“`
$ dmesg | grep amd > amd.txt
$ cat amd.txt
[ 0.897] amduncore: 4 amddf counters detected
[ 0.897] amduncore: 6 amdl3 counters detected
[ 0.898] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank).
“`
星号 *
星号 *
(通配符)是寻找具有相同扩展名的文件时我的最爱,如 .jpg
或 .png
。我首先进入我的系统中的 Picture
目录,并使用类似以下的命令:
“`
$ ls *.png
BlountScreenPicture.png
DisplaySettings.png
EbookStats.png
StrategicPlanMenu.png
Screenshot from 01-24 19-35-05.png
“`
波浪号 ~
波浪号 ~
是在 Linux 系统上通过输入以下命令快速返回你的家目录的一种方法:
“`
$ cd ~
$ pwd
/home/don
“`
美元符号 $
$
符号作为一个元字符有不同的含义。当用于匹配模式时,它意味着任何以给定字符串结尾的字符串。例如,当同时使用元字符 |
和 $
时:
“`
$ ls | grep png$
BlountScreenPicture.png
DisplaySettings.png
EbookStats.png
StrategicPlanMenu.png
Screenshot from 01-24 19-35-05.png
“`
上尖号 ^
符号 ^
将结果限制在以给定字符串开始的项目上。例如,当同时使用元字符 |
和 ^
时:
“`
$ ls | grep ^Screen
Screenshot from 01-24 19-35-05.png
“`
这些元字符中有许多是通往 正则表达式 的大门,所以还有很多东西可以探索。你最喜欢的 Linux 元字符是什么,它们是如何节省你的工作的?
via: https://opensource.com/article/22/2/metacharacters-linux
作者:Don Watkins 选题:lujun9972 译者:wxy 校对:wxy
主题测试文章,只做测试使用。发布者:eason,转转请注明出处:https://aicodev.cn/2022/02/14/%e6%88%91%e5%96%9c%e6%ac%a2%e5%9c%a8-linux-%e5%91%bd%e4%bb%a4%e8%a1%8c%e4%b8%ad%e4%bd%bf%e7%94%a8%e7%9a%84-6-%e4%b8%aa%e5%85%83%e5%ad%97%e7%ac%a6/