linux shell编程之利用环境变量IFS自定义分隔符
2017-01-20 21:38
423 查看
默认情况下,bash shell将空格符、制表符、换行符看作是字段分隔符,如果遇到这些字符,bash shell就会认为字符后是一个新的字段,这就带来一种困扰:如果我们想处理包含空格、制表符、换行符的字符就会有麻烦了。bash提供了一种自定义分隔符的机制:环境变量IFS定义了当前的分隔符,我们可以通过改变环境变量IFS的值,改变分隔符。
$ cat test.txt apple pear banana orange $ cat test.sh #!/bin/bash ifs_old=$IFS IFS=$'\n' for val in `cat test.txt` do echo "n=$val" done IFS=$ifs_old $ ./test.sh n=apple pear banana orange本例中将分隔符定义为'\n',这样再遇到空格,也不会分隔字段。
$ cat test.sh #!/bin/bash list="we:are:champion" ifs_old=$IFS IFS=$':' for val in $list do echo "n=$val" done IFS=$ifs_old $ ./test.sh n=we n=are n=champion在本例中,将分隔符定义为':',注意我们每次设置IFS前,保存一下IFS,用完之后,最好恢复原来的值。
相关文章推荐
- linux shell编程1 - 环境与变量
- 自学Linux Shell6.2-用户自定义环境变量
- linux shell编程指南第十四章------环境和shell变量
- linux shell编程基础 系统环境变量 PATH PS1
- Linux Shell编程(二)--Shell变量及相关操作
- 谈环境变量在Hacking中的利用
- PL/SQL基础编程之(五)[自定义复合变量][%TYPE和%ROWTYPE的应用]
- android环境变量设置和自定义命令
- Bash基本编程中的环境变量
- Linux shell编程(二)高级变量
- Linux shell编程(一)变量与字符串操作
- Windows环境变量编程设定
- Windows环境变量编程设定
- linux shell及脚本编写,环境变量及重定向
- Linux shell编程变量参数
- 基于visual c++之windows核心编程代码分析(21)获取和设置环境变量
- 谈环境变量在Hacking中的利用
- Delphi利用系统环境变量获取常用系统目录
- shell环境变量$IFS的用法
- lua编程 全局变量 环境 模块