笔记——shell脚本学习指南

  《shell脚本学习指南》机械工业出版 ISBN 987-7-111-25504-8

第2章

  2.4

  初级陷阱

    1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超过64个字符。

    2.在某些系统上,命令行部分包含了命令的完整路径名称。不过有些系统却不是这样;命令行的部分会原封不动地传递给被引用的程序。

    3.别在选项之后放置任何空白,因为空白也会跟着选项一起传递给被引用的程序。

    4.你需要知道解释其的完整路径名称。这可以用来规避可移植问题,因为不同的厂商可能将同样的东西放在不同的地方。

    5.一些较旧的系统上,内核不具备解释#!的能力,有些shell会自动处理,这些shell对于#!与紧随其后的解释器名称之间是否可以有空白,可能有不同的解释。

  2.5.5

  •     tr

    tr [options] source-char-list replace-char-list

    用途:转换字符。例如,将大写字符转换成小写。选项可让你指定所要删除的字符,以及将遗传重复出现的字符浓缩成一个。

    常用选项:

      -c   取source-char-list的反义。tr要转换的字符,变成未列在source-char-list中的字符。此选项通常与-d或-s配合使用。

      -c  与-c相似,但所处理的是字符,而非二进制的字节值。

      -d  自标准输入删除source-char-list里所列的字符,而不是转换他们

      -s  浓缩重复的字符。如果标准输入中连续重复出现source-char-list里所列的字符,则将其浓缩成一个。

    特殊文件:/dev/null与/dev/tty

      /dev/null 位桶。传送到此文件的数据就会被系统丢掉。也就是说,当程序将数据写到次文件时,会认为它已完成写入数据的操作,但实际上什么都没做。

      /dev/tty 当程序打开此文件时,UNIX会自动将它重定向到一个终端再与程序结合。

上一篇:实时监控input输入值变化


下一篇:Shell基础学习(七) 输入输出重定向