什么是内部字段分隔符

内部字段分隔符(Internal Field Separator,IFS)是shell脚本编程中的一个重要概念。在处理

文本数据时,它的作用可不小。

作为分隔符,IFS有其特殊用途。它是一个环境变量,其中保存了用于分隔的字符。它是当

前shell环境使用的默认定界字符串。我们可以查看$IFS这个变量,从而看出这个分隔符。

[root@dns-node2 tmp]# echo $IFS

更换分隔符从而切分字符串

考虑一种情形:我们需要迭代一个字符串或逗号分隔型数值(Comma Separated Value,CSV)

中的单词。如果是前者,可以使用 IFS=" " ;如果是后者,则使用 IFS="," 。

[root@dns-node2 tmp]# cat  testIFS.sh
#!/bin/bash
data="name,age,sex,telphone_number,location"
oldIFS=$IFS
IFS=,
for i in $data
do
echo item: $i
done
IFS=$oldIFS [root@dns-node2 tmp]# sh testIFS.sh
item: name
item: age
item: sex
item: telphone_number
item: location

以上就是没有使用awk来做指定分隔符,直接更改IFS来切分字符串,厉害吧。

接下来看看下面下面例子:

[root@dns-node2 tmp]# cat testIFS2.sh
#!/bin/bash
line="root:x:0:0:root:/root:/bin/bash"
IFS=":"
for i in $line
do
echo $i
done [root@dns-node2 tmp]# bash testIFS2.sh
root
x
0
0
root
/root
/bin/bash

tips

可以使用echo 来输出序列,例如下面的数据:

[root@dns-node2 tmp]# echo {1..500}
[root@dns-node2 tmp]# echo {a..z}
[root@dns-node2 tmp]# echo {A..z}

最新文章

  1. 用python实现的百度音乐下载器-python-pyqt-改进版
  2. sql 自定义函数--固定格式字符转时间类型
  3. –save与–save-dev
  4. Java NIO框架Netty课程(一) – Hello Netty
  5. 使用Net.Mail、CDO组件、JMail组件三种方式发送邮件
  6. 拥抱.NET Core系列:Logging (1)
  7. 《深入理解java虚拟机》笔记——简析java类文件结构
  8. Linux IPC实践(2) --匿名PIPE
  9. 封装jdbc、DBUtil
  10. delphi odbc远程连接sqlserver
  11. [转]用C#在windows上操控电脑自带蓝牙(入道指南)
  12. proxysql 系列 ~ 高可用架构
  13. ajax之全局函数
  14. zabbix3.0.4-agent通过shell脚本获取mysql数据库登陆用户
  15. Mapreduce入门和优化方案
  16. Android启动过程深入解析
  17. [转]13 Hours: The Secret Soldiers of Benghazi
  18. Android中Parcel的分析以及使用
  19. Charles的HTTPS抓包方法及原理分析
  20. JS学习笔记(模态框JS传参)

热门文章

  1. P1486 [NOI2004]郁闷的出纳员[权值线段树]
  2. 使用 application.properties 中配置的属性,举例:@Value("${server.port}")
  3. .net反射机制的简单介绍
  4. woocommerce模板制作简易教程
  5. autoRoll_UpDown()|上下滚动函数|无缝|自动(自带demo)
  6. hihocoder#1046: K个串
  7. [React] Handle React Suspense Errors with an Error Boundary
  8. python 当前时间多加一天、一小时、一分钟(转载)
  9. linux学习17 运维核心技能-Linux系统下用户权限管理
  10. Selenium元素定位的几种方式