---
author: Don Watkins
category: 技术
comments_data:
- date: '2022-02-14 09:03:14'
  message: "在 SSH 中，输入 ~. 可立即断开当前连接。<br />\r\n直接输入波浪号和英文句号。"
  postip: 117.177.22.184
  username: 来自四川自贡的 Chrome 75.0|Windows 8 用户
- date: '2022-02-14 11:12:41'
  message: 补充楼上评论,如果输入~.没断开,可以先敲几个回车.:)
  postip: 202.196.65.7
  username: 来自河南郑州郑州大学的 Chrome 98.0|GNU/Linux 用户
count:
  commentnum: 2
  favtimes: 0
  likes: 0
  sharetimes: 0
  viewnum: 4710
date: '2022-02-13 23:59:21'
editorchoice: false
excerpt: 在 Linux 命令行上使用元字符是提高生产力的一个好方法。
fromurl: https://opensource.com/article/22/2/metacharacters-linux
id: 14270
islctt: true
largepic: /images/p/202202/13/235915kbphrm6ld6yi2hud.jpg
permalink: /article-14270-1.html
pic: /images/p/202202/13/235915kbphrm6ld6yi2hud.jpg.thumb.jpg
related: []
reviewer: wxy
selector: lujun9972
summary: 在 Linux 命令行上使用元字符是提高生产力的一个好方法。
tags:
- Linux
- 元字符
thumb: false
title: 我喜欢在 Linux 命令行中使用的 6 个元字符
titlepic: true
translator: wxy
updated: '2022-02-13 23:59:21'
---


> 
> 在 Linux 命令行上使用元字符是提高生产力的一个好方法。
> 
> 
> 


![](/images/p/202202/13/235915kbphrm6ld6yi2hud.jpg "Terminal command prompt on orange background")


在我的 Linux 之旅的早期，我学会了如何使用命令行。这就是 Linux 的与众不同之处。我可以失去图形用户界面（GUI），但没有必要完全重建机器。许多 Linux 电脑是<ruby> 无头 <rt>  headless </rt></ruby>运行的，你可以在命令行上完成所有的管理任务。它使用许多所有人都熟悉的基本命令，如 `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] amd_uncore: 4 amd_df counters detected
[ 0.897] amd_uncore: 6 amd_l3 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

```

这些元字符中有许多是通往 [正则表达式](https://opensource.com/article/18/5/getting-started-regular-expressions) 的大门，所以还有很多东西可以探索。你最喜欢的 Linux 元字符是什么，它们是如何节省你的工作的？




---


via: <https://opensource.com/article/22/2/metacharacters-linux>


作者：[Don Watkins](https://opensource.com/users/don-watkins) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出