@echo off for %%f in (*) do ( if not %%f==TextDoc1 ((your command to create%%~nf.zipcontaining%%fandTextDoc1)) )
for %%f in (*) significa para cada arquivo no diretório atual - DO o comando para criar o arquivo ZIP (cujos detalhes são irrelevantes) - exceto quando você considera o próprio arquivo TextDoc1. Pule isso, senão você criará um arquivo TextDoc1.zip que contém duas cópias de TextDoc1 (ou talvez apenas uma, dependendo de como o WinRAR funciona).
A única coisa complicada é o %%~nf , que é a parte do nome do arquivo %%f (com a extensão removida). Eu usei isso porque, enquanto você deu File1, File2 e File3 como nomes de arquivo de exemplo, eu acho que você também tem File4.txt, résumé.doc, flower.jpg, etc.
Eu estou fazendo o palpite de que você quer que os arquivos ZIP sejam chamados de File4.zip, résumé.zip e flower.zip, ao invés de File4 .txt .zip, currículo .doc .zip e flor .jpg .zip. Claro que isso significa que, se houver schedule.mpp e schedule.xls, podemos ter um problema.