利用引用管理Unix操作系统
创始人
2024-06-28 02:21:09
0次

经过长时间的学习Unix操作系统后,这次我们就来学习下如何利用引用来解决Unix操作系统元字符的问题。在Unix操作系统中有一类特殊的字符,叫做元字符。他们在系统中表示特殊的含义。如*号与?号,操作系统认为这些元字符是通配符。

如果在路经、文件名或者命令参数中有这些元字符的话,就会引起Unix操作系统的误解。为此在系统中要采用一些方法,能够让操作系统将这些元字符当作普通字符来对待。

利用引用来解决Unix操作系统元字符的问题

可以采用引用这个功能来解决。简单的说,就是将一个命令参数放置在一对引号之内,则这个引号之内内容如果有元字符的话,则这些元字符将不起作用。

那么既然转义功能已经可以解决元字符的问题,Unix操作系统还提出了一个引用的解决方案,是否多次一举呢?其实不然。当一个命令行中含有多个元字符的时候,需要在每个元字符前面加一个转移字符。

为此此时如果采用转义字符来解决这个元字符的问题时,会非常的繁琐。此时如果采用引用机制来解决元字符的问题时,可能会更加的理想。如现在Unix操作系统工程师希望能够在屏幕上打出如下信息(这是一个共享文件的路径):192.128.11.3\share\IT\software\pdf。

如果采用转移字符的话,该如何写呢?由于这个输出结果中有四个元字符(转义字符\),为此管理员不得不用四个转移字符来处理。即要写成echo 192.128.11.3\\share\\IT\\software\\pdf。这显然非常的麻烦。

遇到这种情况时,如果采用引用的话,显然会更加的合适。如采用引用机制,只需要将这个命令写为即可:
echo ‘192.128.11.3\share\IT\software\pdf’

将一大串命令采用单引号因起来。则Unix操作系统会将命令行中的一些元字符都当作普通字符来对待。即不需要为每一个元字符采用转移字符。显然这个引用解决方案要比采用转义字符来解决要方便的多。

在采用引用机制来处理元字符时,需要注意跟双引号的区别。
如现在有如下三个命令echo $JAVA_HOME、echo ‘$JAVA_HOME’、 “echo $JAVA_HOME”。其中$JAVA_HOME表示应用程序Java的环境变量。

此时如果Unix操作系统工程师依次运行上面这三个命令,会有什么结果呢?第一个命令会正常显示Java的环境变量;第二个命令直接显示$JAVA_HOME,即已经将元字符$当作普通字符来对待。第三个命令的话仍然显示Java的环境变量。可见双引号与单引号在引用机制上,还是有所不同的。

那么他们到底有什么差异呢?总的来说,Unix操作系统工程师需要注意如下内容。单引号会保护里面所有的元字符,即遇到元字符时会告诉系统当作普通字符来对待。但是如果采用了双引号,则系统会将单引号之间的内容解释为命令行。如会将$当作环境变量的前缀等等。其实单引号与双引号还有一种相互保护的作用。

即双引号保护其中的单引号,而单引号保护其中的双引号。因为无论是双引号还是单引号本身就都是元字符,可以通过引用机制来进行保护。不过在遇到单引号与双引号(都当作普通字符)都存在的情况下,笔者建议还是采用转移字符来保护单引号或者双引号为好。

这可以避免误解,也容易提高代码的可读性。同理,如果要将转移字符\ 当作普通字符来实用的话,那么最好也是利用单引号来保护这个转移字符,而不是利用转移字符来保护转移字符。这些虽然不影响实际的应用,但是却是提高代码可读性的有效手段。

在以上内容中我们就学习了Unix操作系统中利用引用来解决元字符的问题的知识要点,希望大家可以好好的学习下。

【编辑推荐】

  1. 3种Unix操作系统服务作用讲解
  2. 安全Unix操作系统升级
  3. 看守好你的Unix操作系统远程网络
  4. Unix操作系统基础介绍讲解
  5. 教学Unix操作系统内核级后门

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...