如何定义shell的IFS?

viplpf 2009-05-30 02:03:54
我作了一下测试,在终端中输入:
echo $IFS
输出一条空行
IFS=:
echo $IFS
还是一条空行(本以为会输出一个‘:’)
IFS=“:”
echo $IFS
还是一条空行(本以为会输出一个‘:’)
IFS=$":"
echo $IFS
还是一条空行(本以为会输出一个‘:’)

究竟如何才可以改变IFS的值?请高手指教,非常感谢!
...全文
912 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
王漠言 2012-02-27
  • 打赏
  • 举报
回复
看看讲的什么
test1888 2011-05-13
  • 打赏
  • 举报
回复
讲的太好了,非常感谢,学习了!
lovemember 2010-04-26
  • 打赏
  • 举报
回复
非常感谢!kan ka
viplpf 2009-05-30
  • 打赏
  • 举报
回复
多谢兄弟赐教!非常感谢!
meitolake 2009-05-30
  • 打赏
  • 举报
回复
你已經改變了IFS的值!
試試下面的例子:

$ IFS=:
$ a=Hello:World
$ echo $a

輸出的結果是:

Hello World

而不是:

Hello:World

因為:現在起隔離作用,而不是普通的冒號。

如果:

$ echo $IFS

輸出的是冒號,那麼:相當於沒有起到任何隔離作用。

想象一下,用白粉筆在黑板上寫字。之所以能看見白色的字,是因為黑色扮演了IFS的角色。
如果用黑粉筆在黑板上寫字,你什麼也看不到。

3,286

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 实用资料发布区
社区管理员
  • 实用资料发布区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧