Python无法识别软链接更改

时间:2015-08-31 21:57:12

标签: python linux

import os
import sys
from time import sleep

soft = 'link.lnk'
fd_soft = open(soft, 'a');
i = 0;
while 1:
    try:
        line = 'the count is %d' %(i)
        print line
        fd_soft.write(line);
        i += 1;
        sleep(1);
        fd_soft.flush()
    except KeyboardInterrupt:
        print "interrupt ctrl c"
        fd_soft.close()
        sys.exit(0)

link.lnk是old.txt文件的软链接。 该脚本打开软链接并每秒向其写一个数字 在运行时,我将link.lnk更改为使用

指向新文件
ln -sf new.txt link.lnk

因为我想写入new.txt,但该过程仍然继续写入旧文件。

1 个答案:

答案 0 :(得分:1)

您仍在使用在更改符号链接之前打开的旧文件句柄。如果要在新的符号链接中反映新的写入,则需要在每次写入之前重新打开文件句柄,并在每次写入后将其关闭。