linux IFS(internal field separator,内部字段分隔符)

发布时间 2023-10-28 10:52:15作者: zhuangrunwei

1、简介
IFS是一个shell内置变量,它是一个字符列表,列表里的每个字符是默认的字段分隔符
2、查看 IFS 变量
(1)centos

set | less

然后搜索字符串 IFS,如下图

 (2) kali 的 zsh环境下

set | grep IFS

结果如下图

3、打印IFS变量

因为IFS变量是空格、tab、换行,所以打印结果一片空白

方法一:打印十六进制形式的IFS

echo $IFS | hexdump

方法二:重定向到文件查看

echo $IFS > test.txt

再使用vim或其它字处理软件打开,文件确实有内容

4、IFS的临时修改和恢复
(1)使用变量 ifs 临时保存 IFS 的值

ifs=$IFS

(2)改变 IFS 的值

IFS=$'\n'
# 或者
IFS=$'-'
# 或者
IFS=$':'

(3)使用新的IFS

(4)恢复 IFS 的值

IFS=$ifs