字段分隔符和迭代器

    内部字段分隔符(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

相关推荐

  • LVM

       本节主要为raid和LVM相关 一、作业 1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 2、写一个脚本,完成如下功能: (1) 列出当前系统识别到的所有磁盘设备 (2) 如磁盘数量为1,则显示其空间使用信息 …

    Linux干货 2016-08-30
  • Linux文件类型及颜色标识

    查看文件类型:      指令:ll 文件名或目录名      –  白色 普通文件(可执行文件)      l  扩写:sysbolic link 淡蓝色 符号链接文件   &…

    Linux干货 2016-10-18
  • RPM软件包管理

                                                RPM 软件包管理 1、rpm软件包管理: &nbs…

    系统运维 2016-09-01
  • week3:cut,sort,grep等shell工具的应用及用户,组管理类命令

    1、列出当前系统上所有已经登录的用户的用户名,注意,同一个用户登录多次只显示一次即可    who | cut -d' ' -f1 | sort –u 2、取出最后登录到当前系统的用户相关信息    who | cut -d' ' -f1 | tail -1 | id 3、取出当…

    Linux干货 2016-11-20
  • N21-第五周

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; # grep "^[[:space:]]\+" /etc/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; # grep&nbs…

    Linux干货 2016-08-15
  • linux常用命令实战练习–第一周作业

    1、使用date命令,显示前10天的年月日,显示后20天的年月日。 [root@chen ~]# date  Fri Jul 22 20:26:02 CST 2016 [root@chen ~]# date -d -10day &…

    Linux干货 2016-07-22