Linux 管道符

管道符

  • 命令格式: 命令 1 | 命令 2
  • 命令 1 的正确输出作为命令 2 的操作对象
  • 例子 1:
    • 举个例子,我们经常需要使用“ll”命令查看文件的长格式,不过在有些目录中文件众多,比如/etc/目录,使用“ll”命令显示的内容就会非常多,只能看到最后的内容,而不能看到前面输出的内容。
    • 这时我们马上想到 more 命令可以分屏显示文件内容,可是怎么让 more 命令分屏显示命令的输出呢?
    • 想到了一种笨办法:
[root@localhost ~]# ll -a /etc/ > /root/testfile
#用输出重定向,把 ll 命令的输出保存到/root/testfile 文件中
[root@localhost ~]# more /root/testfile
#既然 testfile 是文件,当然可以用 more 命令分屏显示了
总用量 1784
drwxr-xr-x. 105 root root 12288 10 月 21 12:49 .
dr-xr-xr-x. 26 root root 4096 6 月 5 19:06 ..
…省略部分输出…
-rwxr-xr-x. 1 root root 687 6 月 22 2012 auto.smb
--More--(7%)
  • 可是这样操作实在不方便,这时就可以利用管道符了。命令如下:
[root@localhost ~]# ll -a /etc/ | more
  • 例子 2:
    • 想在命令 ll /etc/的结果中搜索 yum 的文件名,应该使用 find 命令?还是 grep 命令?
[root@localhost ~]# ll -a /etc/ | grep yum
  • 例子 3
    • netstat 命令(CentOS 7 中,需要安装 net-snmp.x86_64,net-tools.x86_64 两个包才有此命令。7.5系统中已经自动安装)格式如下:
[root@localhost ~]# netstat [选项]
  • 选项:
    • -a: 列出所有网络状态,包括 Socket 程序
    • -c 秒数: 指定每隔几秒刷新一次网络状态
    • -n: 使用 IP 地址和端口号显示,不使用域名与服务名
    • -p: 显示 PID 和程序名
    • -t: 显示使用 TCP 协议端口的连接状况
    • -u: 显示使用 UDP 协议端口的连接状况
    • -l: 仅显示监听状态的连接
    • -r: 显示路由表

  • 如果想知道具体的网络连接数量,就可以再使用 wc 命令统计行数

【注】:参考尚硅谷沈超老师教程

猜你喜欢

转载自blog.csdn.net/baidu_41388533/article/details/107611322