shell 学习第十二天----行与字符串
行 V.S. 字符串
大部分建议等程序都是处理输入数据的行,在这些情况下,不会有内嵌的换行字符出现在将要匹配的数据中,^ 与 $ 则分别表示行的开头与结尾。
很多应用程序会将数据是位记录与字段的结合。一条记录指的是相关信息的翻个集合,例如以企业来说,记录可能含有顾客,供应商以及员工等数据,以学校来说,则可能有学生数据。而字段指的就是记录的组成部分,例如姓名或者街道地址。
linux 鼓励使用文本类型数据,因此系统上最常见的数据存储类型就是文本了,在文本下,一行表示一天记录。一行内分割字段的两种惯例是:
- 第一种: 空格或者 tab 键 (制表符)。
name sex
syx M
- 第二种是使用特定的定界符来分割字段,例如冒号
name:sex
syx:M
两种方式各有优缺点。最明显的不同时是在处理多个连续重复的戒定福之时。使用空白分隔时,通常多个连续出现的空格或制表字符都看做一个定界符。濡染。若使用的特殊字符分隔,则每个定界符都会隔开一个字段。
以定界符分割字段最好的例子就是 /etc/passwd,在这个文件里,一行标识系统的一个用户,每个字段都是以冒号分隔。
syx5:x:511:513::/home/syx5:/bin/bash
该文件含有七个字段,含义分别如下:
- 用户名称
- 加密后的密码 (如账号为停用状态,此处为一个星号,或者若加密后的密码文件存储于另外的 /etc/shadow 里,则这里可能是其他字符)
- 用户的 ID 编号
- 用户组的 ID 编号
- 用户的姓名,有时恢复其他的相关数据 (电话号,办公室号码)
- 根目录
- 登陆的 shell
上一篇: shell 学习第十一...
下一篇: shell 学习第十三...