Linux: IFS

2023-09-27  本文已影响0人  LET149

Internal Field Seprator

是shell中的内置变量,规定了shell中默认的分隔符

1.输出IFS
printf "%s" "$IFS"

默认分隔符大多是空格、Table或者换行,所以以上命令只会输出空行

printf "%s" "$IFS"|od -b

输出为分隔符对应的ASCII码值


ASCII码值

比如011是Tab制表符、012是换行符、040是空格键

2.修改内部IFS为常规字符

注意:默认IFS较难设置,对IFS进行修改前最好先保存默认IFS,以方便后续的修改

IFS_raw="$IFS"  #保存默认的IFS

IFS=":"  #修改IFS为 :,也可以修改其为其他字符

IFS="$IFS_raw"  #将IFS修改回默认IFS
3.修改IFS为单个特殊字符

基本语法:IFS=$'特殊字符对应符号'

IFS_raw="$IFS"  #保存默认的IFS

IFS=$'\t'  #修改IFS为水平制表符

IFS="$IFS_raw"  #将IFS修改回默认IFS
特殊字符
4.修改IFS为多个特殊字符

当出现这几个特殊字符中的一个或者连续多个时,即认为出现一次IFS

IFS=$' \t\n'  #修改IFS为空格、水平制表符和换行符号
上一篇 下一篇

猜你喜欢

热点阅读