我正在尝试使用批处理文件中的grib工具(我在Windows 7上)将大量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工具语句中使用通配符(*)吗? 此外,目录路径名中的空格是否有问题?
谢谢!
答案 0 :(得分:0)
你的语法错了。 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
为您提供完整的合格文件名,%~dpnA
D , P ath和 N ame只要。有关这些修饰符,请参阅for /?
。 dir /a-d
不包括foldernames。有关详细信息,请参阅dir /?
。