WEB开发网
开发学院操作系统Linux/Unix unix系统管理员工具包: 充分利用 zsh 阅读

unix系统管理员工具包: 充分利用 zsh

 2007-05-11 08:12:58 来源:WEB开发网   
核心提示: 在 zsh 中,您可以使用清单 18,unix系统管理员工具包: 充分利用 zsh(6),清单 18. 在 zsh 中重定向到文件和标准输出zsh$ ls >fileone |catbarneybarney.cbarney.obetty.cbetty.hfileonefredfred

在 zsh 中,您可以使用清单 18。

清单 18. 在 zsh 中重定向到文件和标准输出zsh$ ls >fileone |cat
barney
barney.c
barney.o
betty.c
betty.h
fileone
fred
fred.c
fred.h
fred.o
wilma.c

作为进程替换的扩展,通过使用 <(list) 和 >(list) 构造,您还可以针对另一个命令进行重定向(请参见清单 19)。

清单 19. 使用 < 和 > 来针对另一个命令进行重定向zsh$ sort <(ls) <(ls /usr)   
X11R6
barney
barney.c
barney.o
betty.c
betty.h
bin
fileone
fred
fred.c
fred.h
fred.o
include
lib
libexec
local
sbin
share
standalone
wilma.c

在清单 19 中,您将两个 ls 命令的输出组合为 sort 命令的标准输入,从而输出两个不同目录中的文件的混合和排序列表。

此功能的一个典型使用场合是使用剪切和粘贴来将一个文件中的字段提取并重新组合到另一个文件中。对于普通的 Shell,您可能会使用许多临时文件(请参见清单 20)。

清单 20. 使用临时文件来将一个文件中的字段提取并重新组合到另一个文件中$ cut -f1 fileone >t1
$ cut -f5 filetone >t5
$ paste t1 t5

在 zsh中,您无需临时文件即可完成此任务,如清单 21 所示。

清单 21. 在 zsh 中剪切和粘贴以提取和重新组合文件中的字段zsh$ paste -d: <(cut -d: -f1 /etc/passwd) <(cut -d: -f5 /etc/passwd)

此外,由于可以容易地嵌套重定向的替换,您可以创建复杂的结构,例如以与源文件不同的顺序组合 passwd 文件中的两个字段、删除注释,然后对它们排序(请参见清单 22)。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:unix 管理员

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接