많은 하위 폴더에서 CSV (및 다른 파일)를 내보내려고합니다. 로드 할 데이터베이스 서버에서 삭제되는 보관 폴더입니다. 어떤 경우에는 작동하는 두 줄의 코드 (또는 작동 했음)가 발견되었지만 박쥐 파일에로드되거나 xp_cmdshell 명령으로 호출되면 명령이 작동하지 않습니다.Windows Server 2008 명령은 CMD에서 작동하지만 배치 파일에서는 작동하지 않습니다.
이 명령은 여러 (수백) 개의 하위 디렉토리에있는 모든 파일을 추출하기위한 것입니다. 다시이 명령은 명령 프롬프트에 수동으로 넣을 때 작동하지만 SQL Server에서 bat (또는 cmd 파일) 또는 xp_cmdshell을 통해 호출 할 때는 작동하지 않습니다. 배치 파일에서 사용
for /f "tokens=*" %a in ('dir /b /s /a-d "C:\SPSData\UTDB1_Stage1"') do @move "%a" "C:\SPSData\UTDB1_Stage1"
MOVE C:\SPSData\UTDB1_Stage1\ *\ * C:\SPSData\UTDB1_Stage1\
"* 떨어 뜨린 * *"? "* CMD에서 작동하지만 [...] CMD에서 작동하지 않습니까?" 그 제목을 재고하고 싶을 수도 있습니다. – Clifford
엄밀히 말하면 MS-DOS 명령이 아닙니다. * Windows 쉘 명령입니다. *; MS-DOS 서브 시스템이나'command.com'에 의존하지 않고 Win64에서 어떤 경우에도 MS-DOS 서브 시스템이 없다. 'cmd.exe'는 진정한 윈도우 실행 파일이며 MS-DOS와 관련이 없다는 점을 제외하고는 많은 명령과 명령 구문을 공유합니다. – Clifford