如何获取某个进程正在读取的已打开文件的文件指针位置?

时间:2014-05-27 00:08:36

标签: ruby linux file pointers progress-bar

我有一个Ruby脚本,可以将文件上传到流行的文件共享站点,但我想实现一个进度条。所以我很好奇如何在文件上传进行时监控已经传输的数据量,或者等效地打开文件的文件指针位置。也许有任何命令可以报告这个,它可以每五秒钟调用一次。我想到" lsof"可能能够显示文件指针,但我不确定。

2 个答案:

答案 0 :(得分:0)

查看ruby-progressbar,这可能包含您需要的一切。您可以计算要上传的文件:

Dir.entries("my_directory_here").size - 2 # subtract 2 to get rid of '.' and '..'

然后使用该信息初始化您的progressbar对象。

答案 1 :(得分:0)

你试过man lsof吗?

lsof -o似乎输出文件指针。 所以,你得到了这个过程的PID。 但是,当然,使用lsof并不是你想要在工具中做的事情。

相关问题