[20170705]diff比较执行结果的内容.txt
[20170705]diff比较执行结果的内容.txt 以上是[20170705]diff比较执行结果的内容.txt的详细内容。更多信息请关注PHP中文网其他相关文章!
--//有时候需要比较2个命令输出的结果进行比较,比较笨的方法如下,例子:
$ lsnrctl status LISTENER_SCAN2 > /tmp/b2.txt
$ lsnrctl status LISTENER_SCAN3 > /tmp/b3.txt
$ diff -Nur /tmp/b2.txt /tmp/b3.txt
--//很明显这样要生成2个文件,然后比较,实际上利用shell可以很简单的实现.
$ lsnrctl status LISTENER_SCAN3 | diff /tmp/2.txt -
--//这样减少1个文件的生成,可以再减少文件生成吗?
$ diff <(lsnrctl status LISTENER_SCAN2) <(lsnrctl status LISTENER_SCAN3)
--//如何理解呢?
$ echo <(lsnrctl status LISTENER_SCAN2) <(lsnrctl status LISTENER_SCAN3)
/dev/fd/63 /dev/fd/62
--//实际上62,63就是打开的文件句柄.当然执行完马上关闭.
$ ls -l /dev/fd
lrwxrwxrwx 1 root root 13 2014-12-11 02:24:57 /dev/fd -> /proc/self/fd
$ ls -l /dev/fd/
total 0
lrwx------ 1 grid oinstall 64 2017-07-05 16:16:07 0 -> /dev/pts/4
lrwx------ 1 grid oinstall 64 2017-07-05 16:16:07 1 -> /dev/pts/4
lrwx------ 1 grid oinstall 64 2017-07-05 16:16:07 2 -> /dev/pts/4
lr-x------ 1 grid oinstall 64 2017-07-05 16:16:07 3 -> /proc/101318/fd
--//写一个简单的shell脚本就很好理解了(注意这种写法不是很严谨):
--//我直接读取句柄63,62的内容.
$ cat a.sh
#! /bin/bash
echo <(lsnrctl status LISTENER_SCAN2) <(lsnrctl status LISTENER_SCAN3)
diff /dev/fd/63 /dev/fd/62
$ . a.sh
/dev/fd/63 /dev/fd/62
6c6
< Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))
---
> Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3)))
9c9
< Alias LISTENER_SCAN2
---
> Alias LISTENER_SCAN3
11,12c11,12
< Start Date 30-JUN-2017 12:00:03
< Uptime 5 days 4 hr. 18 min. 37 sec
---
> Start Date 30-JUN-2017 12:00:58
> Uptime 5 days 4 hr. 17 min. 43 sec
17c17
< Listener Log File /u01/app/11.2.0.4/grid/network/log/listener_scan2.log
---
> Listener Log File /u01/app/11.2.0.4/grid/network/log/listener_scan3.log
19,20c19,20
< (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN2)))
< (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.100.109)(PORT=1521)))
---
> (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN3)))
> (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.100.107)(PORT=1521)))
--//想到这里,我终于理解exp/imp on the fly.例子:
$ exp scott/book file=>(gzip >t.dmp.gz) tables=emp
$ imp scott/book full=y file=<(gunzip

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

本文介绍了如何在Linux中使用正则表达式(REGEX)进行模式匹配,文件搜索和文本操作,详细列式,命令和工具,例如GREP,SED和AWK。

本文讨论了使用TOP,HTOP和VMSTAT监视Linux系统性能,并详细介绍其独特功能和自定义选项,以进行有效的系统管理。

本文提供了有关使用Google Authenticator在Linux上设置两因素身份验证(2FA)的指南,详细介绍了安装,配置和故障排除步骤。它突出了2FA的安全益处,例如增强的SEC

文章讨论了使用APT,YUM和DNF在Linux中管理软件包,涵盖安装,更新和删除。它比较了它们对不同分布的功能和适用性。

本文解释了如何管理Linux中的Sudo特权,包括授予,撤销和安全性最佳实践。关键重点是安全和sudoers安全和限制访问。Character数量:159

本文详细介绍了构建和自定义Linux发行版,涵盖选择基本系统的过程,使用LFS和基于Debian的系统,自定义软件包以及修改内核的构建工具。它还讨论了管理软件

本文提供了有关配置Linux网络的指南,重点是设置静态IP,DHCP和DNS配置。它详细介绍了编辑配置文件和重新启动网络服务以应用更改的步骤。

文章讨论了流行的Linux发行版:Ubuntu,Debian,Fedora和Centos,重点介绍了它们对不同用户的独特功能和适合性。它比较了Ubuntu和Debian的发布周期,软件可用性和支持,以及高
