字段分隔符和迭代器

    内部字段分隔符(Internal Field Separator)是shell脚本编程中的一个重要概念。在处理文本数据时,有很大的作用。内部字段分隔符是用于特定用途的定界符,IFS是存储定界符的环境变量,它是当前shell环境中使用的默认定界符字符串。

    例一:data="name,sex,rollo,location"

我们可以使用IFS读取变量中的每一个条目

28.png输出如下29.png

   IFS的默认值为空白符(换行符,制表符或者空格)

   当IFS被设置为逗号时,shell将逗号视为一个定界符,因此变量$Item在每次迭代中读取由逗号分隔的子串作为变量值。如果没有把IFS设置为逗号,那么上面的脚本会将全部数据作为单个字符串打印出来。

    

    例二:以/etc/passwd为例,利用IFS的用法,取出每一位用户使用的shell类型,脚本如下

30.png

运行脚本显示的结果就是/etc/passwd中每位用户的shell类型,运行结果如下,显示部分截图

31.png

对一系列值进行迭代时,循环非常有用

部分内容摘自《Linux shell 脚本攻略》

原创文章,作者:black_fish,如若转载,请注明出处:http://www.178linux.com/35746

(0)
black_fishblack_fish
上一篇 2016-08-15 11:58
下一篇 2016-08-15 11:58

相关推荐

  • DNS中view的实现

    [root@localhost /var/named]# ll total 32 -rw-r–r–. 1 root  root   173 Jan 20 14:46 magedu.com.zone -rw-r–r–. 1 root  root   173 Jan 20 14:46 magedu.com.zone…

    2018-01-22
  • 系统管理和内核管理(二)之grub使用、编译安装内核

    系统管理和内核管理(二)之grub使用、编译安装内核   回顾CentOS 6启动流程: POST –> Boot Sequence(BIOS) –> Boot Loader –> Kernel(ramdisk) –> rootfs–> switchroot&…

    Linux干货 2016-09-15
  • LVM——如何让你的磁盘空间可大可小

    逻辑卷管理器(LVM) 允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小 允许在多个物理设备间重新组织文件系统          将设备指定为物理卷          用一个或者多个物理卷来创…

    Linux干货 2016-08-29
  • 文件权限的设置和文件的特殊权限及其命令使用

    1. linux的系统管理员很重要的任务就是管理自己服务器的文件,对于权限设置等级森严的linux文件系统,文件系统的访问权限管理自然也是linux管理员必不可少的一项技能。 在linux中文件的基本权限中:被分为三大项:文件拥有者,文件拥有组,其他人。 每一项中,用三位八进制的数字来代表文件是否可读,是否可写,是否可执行。并根据用户不同可以设置不同的uma…

    Linux干货 2016-08-05
  • Linux程序包管理之RPM

    前言 Linux平台上常见的软件包格式主要有三种,分别是源码格式包、通用二进制格式包和rpm格式包本文主要讲解rpm格式包安装及管理。RPM是Redhat Package Manager的缩写,是由Redhat公司开发的Linux软件包管理具,因其便捷的管理方式与开源思想,逐渐被其他Linux发行商所采用,现已成Linux平台下通用的软件包管理方式。 rpm…

    Linux干货 2015-03-28
  • Linux进程篇16.2pstree命令:【进程树】

    pstree命令:【进程树】

    Linux干货 2017-12-18