Kesalahan Perintah Sintaks

-1

Kesalahan "Sintaks perintah salah" selalu muncul setiap kali saya akan menjalankan file batch ini. Sepertinya saya tidak tahu bagian mana dari skrip yang menyebabkan kesalahan ini. Ada ide?

rem Process all *.tif files in input path
pushd "%in_path%"
for %%a in (*.tif) do (
   set "fileName=%%a"
   rem If the YearDay in this file is the same of previous one
   if "!fileName:~1,7!" equ "!yearDay!" (
      rem Join this filename to previous list
      set "fileList=!fileList!!fileName! "
      set /A numFiles+=1
   ) else (
      rem Merge the files in the list if there are more than 3, in the out_path leaving only TYYYYDDD.L2_LAC.Tera.tif
      if !numFiles! gtr 3 (
         gdal_merge.py -n 0 -a_nodata -32767 -of GTiff -o %out_path%\T!yearDay!.L2_LAC.Tera.tif !fileList!
         rem Move processed files to a different directory
         set "fileList=!fileList:~0,-1!"
         move !fileList: =,! "%proc_path%"
      )
      rem And start a new YearDay and fileList
      set "yearDay=!fileName:~1,7!"
      set "fileList=!fileName! "
      set numFiles=1
   )
)
popd
pengguna
sumber
4
Hapus baris pertama, Anda kemudian akan melihat baris mana yang menyebabkan pesan.
user3767013
Pemindahan file bagian dalam skrip menyebabkan kesalahan perintah sintaksis. Tetapi bagaimana saya akan memodifikasinya? Apakah kamu punya ide? Karena tujuannya adalah untuk memindahkan file yang diproses hanya dari input_path ke jalur file yang diproses.
pengguna
Maaf saya tidak familier dengan pemrosesan batch. Anda dapat mengubah pertanyaan untuk menunjukkan baris mana yang menyebabkan kesalahan, orang lain akan memberikan jawaban yang lebih baik.
user3767013
Apa itu semua "variabel!"? Apa yang harus dilakukan? Mungkin Anda bermaksud "% variable%" !? Dan apa yang Anda harapkan "! FileList: = !," lakukan?
Werner Henze
1
@WernerHenze Dia harus menggunakan! Variabel! karena dia berada dalam for loop dan menggunakan EnabledDelayedExpansion.
modiX

Jawaban:

0

Mencari tahu dengan bantuan seorang teman. Saya baru saja mengganti bagian skrip ini,

 set "fileList=!fileList:~0,-1!"
 move !fileList: =,! "%proc_path%"

dengan ini,

for %%a in (!fileList!) do move %%a "%proc_path%"  >nul
pengguna
sumber