
Linux管道是Linux操作系统使用的一种高效的命令行操作法,它利用标准输入输出和错误来组成一个管道,使得从一个终端到另一个终端的流数据更加方便快捷。
Linux管道是基于管道的关键概念,它可以将多个命令串联起来,并通过管道从第一条命令的输出传递到下一个命令的输入,它按照左至右、上至下的顺序运行命令,实现多个命令共用一个终端。
管道使用语法为“命令1 | 命令2”,其中“|”表示Linux管道。如下:
例如,有一个文件需要搜索字符串”hello“,前提是该文件非常大且结构复杂。如果没有使用管道,命令行如下:
但是,使用Linux管道可以更快地完成任务:
$ cat largeFile.txt | grep ‘hello’
上述命令将采用cat命令将文件大File.txt的内容传给了grep命令,可以快速搜索这个文件中的字符串”hello‘’。
Linux管道不仅能够用来过滤和搜索文字,它还能将多个命令组件为一个完整的命令行,例如:
$ ps -ef|grep apache | awk ‘{print$1}’
上述命令的意思是,第一个ps -ef命令指定查看当前系统的进程,然后grep命令使用apache过滤信息,最后用awk命令打印出来进程ID。
Linux管道非常有助于提高命令行编程的效率,有助于用户节省时间、节省空间,当多个命令放在一起执行的时候,它可以大大减少交互过程,减少了系统的开销。但是,要熟练掌握Linux管道操作需要有一定的Linux基础知识,否则会在操作中出现很多错误信息。
香港服务器首选树叶云,2H2G首月10元开通。树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云 服务器 和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
linux,unix常用基本命令
1. tar压缩文件夹tar zcvf archive_/1解压文件夹tar xvf archive_1grep在文件中查找字符串 不区分大小写grep -i the demo_file1输出成功匹配的行,以及该行之后的三行grep -A 3 -i example demo_text1在一个文件夹中递归查询包含指定字符串的文件grep -r ramesh *1find查找指定文件名的文件(不区分大小写)find -iname MyProgram.c1查找home目录下的所有空文件find ~ -empty1SSH登录到远程主机sshroot@172.3.7.2111sedsed全名叫stream editor,流编辑器,用程序的方式来编辑文本。 SED 简明教程awkAWK 简明教程vimLIinux中自带的文本编辑器。
ubuntu如何进入命令界面?
方法一:直接运行终端的可执行文件。 单击ubuntu桌面左侧启动器内部的主文件夹,然后单击文件系统,进入文件系统内部usr文件夹下的bin目录。 单击“搜索”标识,在搜索框内输入“gnome-Terminal”然后按回车键。 在搜索结果中会出现“gnome-terminal”的可执行文件,双击即可打开终端。 操作过程如下图所示。 方法二:通过命令行打开终端。 在ubuntu系统中按Alt+F2快捷键打开命令输入框,输入“gnome-terminal”命令,然后按回车键即可打开终端。 方法三:使用快捷键:Ctrl+Alt+T打开终端。 在ubuntu系统中按:Ctrl+Alt+T即可打开终端,此方法是五种方法中最简便快捷的方法。 方法四:Dash主页打开终端。 单击Ubuntu桌面左上边的Dash主页图标,在搜索框内输入“ter”,然后在搜索结果内会出现终端的图标,然后单击终端图标即可打开终端。 操作过程如下图所示。 方法五:将终端图标锁定在右侧启动器,直接打开终端。 可以将终端通过拖拽的方式固定在桌面右侧的启动器上,通过单击启动器上的终端图标即可方便的打开终端。
Linux进程查看
[例18] 查看登录用户的详细情况,键入:$ who -uH显示如下:USER LINE LOGIN-TIME IDLE FROMroot tty1 Mar 17 13:49 . foxy tty2 Mar 17 13:49 00:01 root tty3 Mar 17 13:49 00:01bbs ttyp0 Mar 17 13:49 00:01 () 这样一目了然。 其中-u选项指定显示用户空闲时间,所以可以看到多了一项IDLE。 第一个root用户的IDLE项是一个“.”,这就说明该用户在前1秒仍然是活动的,而其他用户后面都有一个时间,称为空闲时间。 最后来看看使用“who am i”格式命令的结果!root tty1 Mar 17 13:49可见只显示出了运行该who命令的用户情况,当然这时候不存在空闲时间。 who命令应用起来非常简单,可以比较准确地掌握用户的情况,所以使用非常广泛。 w命令该命令也用于显示登录到系统的用户情况,但是与who不同的是,w命令功能更加强大,它不但可以显示有谁登录到系统,还可以显示出这些用户当前正在进行的工作,并且统计数据相对who命令来说更加详细和科学,可以认为w命令就是who命令的一个增强版。 w命令的显示项目按以下顺序排列:当前时间,系统启动到现在的时间,登录用户的数目,系统在最近1秒、5秒和15秒的平均负载。 然后是每个用户的各项数据,项目显示顺序如下:登录帐号、终端名称、远程主机名、登录时间、空闲时间、JCPU、PCPU、当前正在运行进程的命令行。 其中JCPU时间指的是和该终端(tty)连接的所有进程占用的时间。 这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间。 而PCPU时间则是指当前进程(即在WHAT项中显示的进程)所占用的时间。 下面介绍该命令的具体用法和参数。 语法格式如下:w -[husfV] [user] 下面对参数进行说明:-h 不显示标题。 -u 当列出当前进程和CPU时间时忽略用户名。 这主要是用于执行su命令后的情况。 -s 使用短模式。 不显示登录时间、JCPU和PCPU时间。 -f 切换显示FROM项,也就是远程主机名项。 默认值是不显示远程主机名,当然系统管理员可以对源文件作一些修改使得显示该项成为默认值。 -V 显示版本信息。 User 只显示指定用户的相关情况。 [例19] 显示当前登录到系统的用户的详细情况$ w 2:50pm up 2 min, 4 users, load average:0.22,0.16,0.06USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 2:49pm 0:00s 0.56s 0.10s wfoxy tty2 2:49pm 1:09 0.42s 0.42s bashroot tty3 2:49pm 46.00s 0.67s 0.25s telnet bbs3 bbs ttyp0 2:49pm 45.00s 0.49s 0.49s bbs h
发表评论