【发布时间】:2018-06-06 20:16:34
【问题描述】:
我有一个函数需要更改 IFS 的逻辑:
my_func() {
oldIFS=$IFS; IFS=.; var="$1"; arr=($var); IFS=$oldIFS
# more logic here
}
我是否可以在函数内将 IFS 声明为 local IFS,这样我就不必担心支持其当前值并在以后恢复?
【问题讨论】:
-
为什么在调用你的函数时不改变IFS的值only?
IFS=. my_func "some arg" -
我不希望调用者承担这个责任,这样调用者和被调用者之间就没有耦合。