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

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
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.