我想通过管道将来自bzip2的输出作为输入来使用apache 3.9.0中的tbdloader2来填充TDB数据库。
我已经找到了Generating TDB Dataset from archive containing N-TRIPLES files,但是提议的解决方案对我没有用。
bzip2 -dc test.ttl.bz2 | tdbloader2 --loc=/pathto/TDBdatabase_test -- -产生
20:08:01 INFO -- TDB Bulk Loader Start
20:08:01 INFO Data Load Phase
20:08:01 INFO Got 1 data files to load
20:08:01 INFO Data file 1: /home/user/-
File does not exist: /home/user/-
20:08:01 ERROR Failed during data phase我得到了类似的结果(受https://unix.stackexchange.com/questions/16990/using-data-read-from-a-pipe-instead-than-from-a-file-in-command-options启发)
bzip2 -dc test.ttl.bz2 | tdbloader2 --loc=/pathto/TDBdatabase_test /dev/stdin
20:34:45 INFO -- TDB Bulk Loader Start
20:34:45 INFO Data Load Phase
20:34:45 INFO Got 1 data files to load
20:34:45 INFO Data file 1: /proc/16256/fd/pipe:[92062]
File does not exist: /proc/16256/fd/pipe:[92062]
20:34:45 ERROR Failed during data phase和
bzip2 -dc test.ttl.bz2 | tdbloader2 --loc=/pathto/TDBdatabase_test /dev/fd/0
20:34:52 INFO -- TDB Bulk Loader Start
20:34:52 INFO Data Load Phase
20:34:52 INFO Got 1 data files to load
20:34:52 INFO Data file 1: /proc/16312/fd/pipe:[97432]
File does not exist: /proc/16312/fd/pipe:[97432]
20:34:52 ERROR Failed during data phase 手动解压缩bz2文件,然后添加它,效果很好:
bzip2 -d test.ttl.bz2
tdbloader2 --loc=/pathto/TDBdatabase_test test.ttl如果有人能给我指明正确的方向,那就太好了。
发布于 2018-11-25 22:19:57
tdbloader2在命令行上接受bz2压缩文件:
tdbloader2 --loc=/pathto/TDBdatabase_test test.ttl.bz2它不接受来自管道的输入-如果它接受了,那么它将不知道语法是Turtle,它从文件扩展名获得。
https://stackoverflow.com/questions/53468838
复制相似问题