linux shell 重定向到文件后,删除该文件会发生什么?
1.首先编写一个简单的脚本,内容如下:➜shell>catecho.sh#!/bin/bash#测试>>重定向,文件移动后是否会自动创建新文件whiletr...
1.首先编写一个简单的脚本,内容如下:
➜ shell >cat echo.sh
#!/bin/bash
# 测试 >> 重定向,文件移动后是否会自动创建新文件
while true
do
date
sleep 1;
done;
2. 然后在一个 terminal 中执行下面的命令,该 terminal 记作 TA
➜ shell >bash echo.sh >> tmp.log
3. 在另一个 terminal 中查看日志文件,该 terminal 记作 TB
➜ shell >tail -f tmp.log
4. 再打开一个 terminal,删除或者移动这个日志文件,该 terminal 记作 TC
➜ shell >mv tmp.log tmp.log-bak
➜ shell >rm tmp.log-bak
5. 到此时,TB 中仍能看到实时更新的内容
问题:bash echo.sh >> tmp.log 命令在文件删除后,数据到底去那里了,tmp.log 文件的确删除了吗? 展开
➜ shell >cat echo.sh
#!/bin/bash
# 测试 >> 重定向,文件移动后是否会自动创建新文件
while true
do
date
sleep 1;
done;
2. 然后在一个 terminal 中执行下面的命令,该 terminal 记作 TA
➜ shell >bash echo.sh >> tmp.log
3. 在另一个 terminal 中查看日志文件,该 terminal 记作 TB
➜ shell >tail -f tmp.log
4. 再打开一个 terminal,删除或者移动这个日志文件,该 terminal 记作 TC
➜ shell >mv tmp.log tmp.log-bak
➜ shell >rm tmp.log-bak
5. 到此时,TB 中仍能看到实时更新的内容
问题:bash echo.sh >> tmp.log 命令在文件删除后,数据到底去那里了,tmp.log 文件的确删除了吗? 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询