Windows下使用Osmosis将.osm.pbf转.osm无输出文件问题求助
问题根源
你自行创建的批处理文件参数传递逻辑缺失,是本次执行无效果的核心原因。你当前bat文件仅写入了原装osmosis.bat的路径,执行时你输入的--read-pbf等命令参数不会被传递到实际的osmosis程序中,程序仅执行了空流程,因此无报错也不会生成目标文件。
修复步骤
- 修改你自行创建的bat批处理文件内容,改为以下内容:
@echo off "C:\Users\paul\Desktop\osmosis\bin\osmosis.bat" %*
末尾的%*作用是将你在cmd中输入的所有后续参数完整传递给原装的osmosis程序。
- 确认文件路径有效性:
- 检查
c:\dir目录是否真实存在,当前Windows账号对该目录有写入权限 - 如果你的.pbf文件路径包含空格或中文字符,需要给路径整体包裹英文双引号,示例命令如下:
osmosis --read-pbf "c:\文件夹 有空格\somefile.osm.pbf" --write-xml "c:\文件夹 有空格\somefile.osm"
- 可临时跳过自定义bat直接测试:
你可以直接在cmd中调用原装osmosis.bat执行转换命令,排除自定义bat的影响:
"C:\Users\paul\Desktop\osmosis\bin\osmosis.bat" --read-pbf c:\dir\somefile.osm.pbf --write-xml c:\dir\somefile.osm
执行后检查目标路径下是否生成了.osm文件即可。
内容的提问来源于stack exchange,提问作者Paul
相关产品推荐
相关产品推荐

