LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 626|回复: 1

关于重定向的一个问题

[复制链接]
发表于 2009-2-19 15:52:17 | 显示全部楼层 |阅读模式
用sort的时候想到一个问题:
一般给文件排序用:
  1. sort datafile -o datafile
复制代码

但是我这样用的话:
  1. sort datafile > datafile
复制代码

datafile文件就空了。
我想是不是文件句柄没有关的问题,所以这样:
  1. sort datafile |cat|cat|cat|cat|cat > datafile
复制代码

还是空的:yun:

但是不甘心的我这样:
  1. sort data >> data
复制代码

结果data里面就成了原文件加上源文件排序后的内容了

请教一下怎么理解这个问题呢?
 楼主| 发表于 2009-2-19 16:00:01 | 显示全部楼层
想通了,shell处理带管道和重定向命令的时候会先初始化所有需要打开的文件,然后再执行命令。
shell处理时候一看到">"就立马将datafile清空然后打开, 接着再sort自然就什么也没有了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表