我正在尝试在批处理文件中使用GRIB工具(我在Windows7上)将大量grib文件批量转换为netCDF。
我使用的是以下代码:
for /f %%f in (`dir /b O:\Praksa\incadata\2014\01\01`)
do
echo %%f grib_to_netcdf -D NC_FLOAT -o *.nc *.grb但当我运行它时,除了CMD打开和关闭非常快之外,似乎什么都没有发生。
我可能遗漏了一些语法错误,但我的主要问题是:我可以在grib工具语句中使用通配符(*)吗?另外,目录路径名中的空格有问题吗?
谢谢!
发布于 2017-07-05 19:19:26
你把语法搞错了。cmd对语法非常挑剔。试试这个:
@echo off
for /f %%A in ('dir /b /a-d z:\*') do (
echo %%~fA grib_to_netcdf -D NC_FLOAT -o %%~dpnA.nc %%~dpnA.grb
)%%~fA为您提供完全限定的文件名,仅限D驱动程序、P路径和N名称。有关这些修饰符,请参见for /?。dir /a-d不包括文件夹名称。有关详细信息,请参阅dir /?。
https://stackoverflow.com/questions/44909483
复制相似问题