2017-07-04 5 views
0

グリブツール(私はWindows 7上にあります)をバッチファイルで使用して、多数のGRIBファイルをnetCDFに一括変換しようとしています。gribファイルのフォルダにグリブツールを反復する

私はこのコードを使用しています:

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開閉本当に速い以外起きていないようにみえます。

おそらく私がそこに見逃した構文エラーがありますが、私の主な質問は次のとおりです。グリブツールステートメントでワイルドカード(*)を使用できますか? また、ディレクトリパス名のスペースに問題がありますか?

ありがとうございます!

+2

'dir'コマンドのバッククォートを、一重引用符' ''に変更します。ウィンドウを開いたままにするには、次の行に 'pause'命令を追加するか、コマンドプロンプトから実行することをお勧めします。バッチをクリックしないでください。 – Magoo

答えて

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はあなたに完全修飾ファイル名を与え、%~dpnADリヴ、P ATHとN AMEのみ。これらの修飾語については、for /?を参照してください。 dir /a-dはフォルダ名を除外します。詳細はdir /?を参照してください。

関連する問題