相关疑难解决方法(0)

从日志文件中读取数据作为单独的应用程序正在写入它

我想监视应用程序正在写入的日志文件.我希望逐行处理文件,或者在写入之后不久.我没有找到一种方法来检测文件在到达eof后已被扩展.

代码需要在Mac和PC上运行,并且可以使用任何语言,尽管我最熟悉C++和Perl.

有没有人建议最好的方法呢?

c++ macos perl file-io logging

8
推荐指数
1
解决办法
2544
查看次数

Ruby的观察者在Python中等同于什么?

我喜欢watchr的概念:它监视文件系统并在发生变化时运行回调.是否有纯Python等效?优选地,可安装pip.

python watchr

8
推荐指数
1
解决办法
798
查看次数

如何在python中获取文件关闭事件

在Windows 7 64位机器上使用python 2.7.

如何获取文件关闭事件:

  1. 在文件打开器的新进程中打开文件时(如记事本,每次在wordpad的新进程中打开文件的wordpad)
  2. 在文件打开器的选项卡中打开文件时(如notepad ++,它会打开新选项卡中的所有文件,但只存在一个运行notepad ++的进程)

那么,如何在上述情况下获取文件关闭事件?是否可以通过公共代码实现上述情况?我正在处理不同的文件类型

python windows file process file-monitoring

8
推荐指数
1
解决办法
4562
查看次数

如何查看文件,而不是使用Python进行更改的目录?

问题:如何使用Python查看文件以进行更改?建议使用看门狗,但我发现它只能观看目录,而不是文件.watchdog-test.py是看门狗的示例脚本:

$ python watchdog-test.py ab_test_res.sh &
[1] 30628
fbt@fbt64:~/laike9m$ Traceback (most recent call last):
  File "watchdog-test.py", line 15, in <module>
    observer.start()
  File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/api.py", line 255, in start
    emitter.start()
  File "/usr/local/lib/python2.7/dist-packages/watchdog/utils/__init__.py", line 111, in start
    self.on_thread_start()
  File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify.py", line 121, in on_thread_start
    self._inotify = InotifyBuffer(path, self.watch.is_recursive)
  File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify_buffer.py", line 35, in __init__
    self._inotify = Inotify(path, recursive)
  File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify_c.py", line 187, in __init__
    self._add_dir_watch(path, recursive, event_mask)
  File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify_c.py", line 363, in _add_dir_watch
    raise OSError('Path is not a directory') …
Run Code Online (Sandbox Code Playgroud)

python file watch python-watchdog

6
推荐指数
1
解决办法
2654
查看次数

使用python检测新文件或修改过的文件

我正在尝试检测何时创建新目录或在目录中修改现有文件.

我试着搜索一个可以执行此操作的脚本(最好是在python或bash中),但是很简单.我的环境是使用Python 2.6的linux

相关问题

python linux filesystems file

5
推荐指数
1
解决办法
5510
查看次数

Python:检查新文件是否在文件夹中

我是python的新手,但是我试图创建一个自动化过程,其中我的代码将侦听目录中的新文件条目。例如,某人可以手动将zip文件复制到一个特定的文件夹中,并且我希望我的代码能够在文件完全复制到该文件夹​​后识别出该文件。然后,代码可以进行一些操作,但这无关紧要。目前,我的代码仅每5秒检查一次新文件,但这对我来说似乎效率很低。有人可以提出一些更异步的建议吗?

python file-io

5
推荐指数
1
解决办法
1万
查看次数

最佳实践 - 什么是观看目录的最佳方式

我需要设置一个脚本来监视某个类型的文件的文件夹.我做了这个代码,但我想知道是否有更好的方法?

import os


def listAppleseedFiles(directory_path):
    directory_entities =  os.listdir(directory_path)
    files = []
    appleseed_files = []
    for entity in directory_entities:
        file_path = os.path.join(directory_path, entity)
        if os.path.isfile(file_path):
            if os.path.splitext(file_path)[1] == '.appleseed':
                appleseed_files.append(file_path)

    return appleseed_files

while True:
    for file in listAppleseedFiles('/dir_name'):

        doSomething()
Run Code Online (Sandbox Code Playgroud)

python directory watch

3
推荐指数
1
解决办法
264
查看次数

在Linux上从Python"监听"文件系统更改的方法?

我希望能够在给定目录树(或树集)中创建新文件或修改或删除现有文件时进行检测.执行此操作的蛮力方法是重新扫描树以查找更改,但我正在寻找更"中断驱动"的解决方案,其中文件系统告诉我的代码在更改时发生了哪些更改,而不是我的代码必须通过不断扫描数千个寻找变化的文件来"轮询".

在Python中执行此操作的方法是首选,但如果我必须在C中编写本机模块,那么这是最后的手段.

python linux

2
推荐指数
2
解决办法
3419
查看次数

django如何检测文件更改

我正在尝试查看目录中.py文件的更改。我经历了现有的解决方案。我对django库如何解决此问题感到好奇。文件更改后,开发服务器将重新启动。

python django

2
推荐指数
2
解决办法
1263
查看次数

如何在Python中创建"热文件夹"?

我有一个名为的目录input_files.我希望每次将新xls文件放入其中时都会触发脚本.发生这种情况时,我将如何触发Python脚本?

python

1
推荐指数
1
解决办法
1374
查看次数

为什么 QFileSystemWatcher 适用于目录而不适用于 Python 中的文件?

我从另一个 StackOverflow 答案中借用了这段代码:

from PyQt4 import QtCore

@QtCore.pyqtSlot(str)
def directory_changed(path):
    print('Directory Changed!!!')

@QtCore.pyqtSlot(str)
def file_changed(path):
    print('File Changed!!!')

fs_watcher = QtCore.QFileSystemWatcher(['/path/to/files_1', '/path/to/files_2', '/path/to/files_3'])

fs_watcher.connect(fs_watcher, QtCore.SIGNAL('directoryChanged(QString)'), directory_changed)
fs_watcher.connect(fs_watcher, QtCore.SIGNAL('fileChanged(QString)'), file_changed)
Run Code Online (Sandbox Code Playgroud)

问题是,file_changed无论如何都不会被调用。directory_changed例如,在添加文件时可靠地调用,但更改文件内容不会导致调用 file_changed。

我调用了 的一些变体QtCore.SIGNAL('fileChanged(QString)'),例如,QtCore.SIGNAL('fileChanged(const QString &)')无济于事。没有警告或错误——它只是不触发该功能。

推荐?

python qt pyqt qfilesystemwatcher

1
推荐指数
1
解决办法
4477
查看次数