zl程序教程

您现在的位置是:首页 >  系统

当前栏目

Linux Shell编程中的特殊符号

Linux编程shell 特殊符号
2023-09-27 14:24:39 时间

本文是shell编程系列的第四篇,集中介绍了bash编程可能涉及到的特殊符号的使用。

学会本文内容可以帮助你写出天书一样的bash脚本,并且顺便解决以下问题:

    输入输出重定向是什么原理?
    exec 3<> /tmp/filename是什么鬼?
    你玩过bash的关联数组吗?
    如何不用if判断变量是否被定义?
    脚本中字符串替换和删除操作不用sed怎么做?
    ” “和’ ‘有什么不同?
    正则表达式和bash通配符是一回事么?

这里需要额外注意的是,相同的符号出现在不同的上下文中可能会有不同的含义。我们会在后续的讲解中突出它们的区别。

重定向(REDIRECTION)

重定向也叫输入输出重定向。我们先通过基本的使用对这个概念有个感性认识。

输入重定向

大家应该都用过cat命令,可以输出一个文件的内容。如:cat /etc/passwd。如果不给cat任何参数,那么cat将从键盘(标准输入)读取用户的输入,直接将内容显示到屏幕上,就像这样:

[zheng@freeoa-net bash]$ cat
hello
hello
I am zheng!
I am zheng!

可以通过输入重定向让cat命令从别的地方读取输入,显示到当前屏幕上。最简单的方式是输入重定向一个文件,不过这不够“神奇”,我们让cat从别的终端读取输入试试。我当前使用桌面的终端terminal开了多个bash,使用ps命令可以看到这些终端所占用的输入文件是哪个࿱