Я понятия не имею, как использовать инструмент, и никогда не читал справку / информацию об использовании, поэтому это только предположение:
@Echo Off
For %%A In (1 2 3 4 5) Do (
PushD "C:\Temp\Folder%%A"
SQLLdr USERID=xyz/xyz@db CONTROL=TEST LOG=TEST DATA=*.txt
PopD
)
:AfterLoop
Если DATA
не принимает подстановочный знак,возможно, добавление вложенного цикла сделало бы это:
@Echo Off
For %%A In (1 2 3 4 5) Do (
PushD "C:\Temp\Folder%%A"
For %%B In (*.txt) Do (
SQLLdr USERID=xyz/xyz@db CONTROL=TEST LOG=TEST DATA='%%B'
)
PopD
)
:AfterLoop
И, конечно, поскольку теперь вы почти наверняка сообщите нам, что имена папок не точны, вы можете настроить его аналогично:
@Echo Off
For %%A In (
"C:\Temp\Folder1"
"C:\Temp\Folder2"
"C:\Temp\Folder3"
"C:\Temp\Folder4"
"C:\Temp\Folder5"
) Do (
PushD "%%A"
SQLLdr USERID=xyz/xyz@db CONTROL=TEST LOG=TEST DATA=*.txt
PopD
)
:AfterLoop
Или:
@Echo Off
For %%A In (
"C:\Temp\Folder1"
"C:\Temp\Folder2"
"C:\Temp\Folder3"
"C:\Temp\Folder4"
"C:\Temp\Folder5"
) Do (
PushD "%%A"
For %%B In (*.txt) Do (
SQLLdr USERID=xyz/xyz@db CONTROL=TEST LOG=TEST DATA='%%B'
)
PopD
)
:AfterLoop