#title sftp 삽질기 sftp 서버로 데이터를 업로드 할 일이 생겼다. [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html psftp.exe]를 다운로드 하여 아래와 같이 접촉해봤다. {{{ psftp ftp계정@192.168.201.111 -P 7700 -pw 패스워드 -b command.txt }}} 처음에 접촉하면 인증키가 어쩌고 한다. 'y'를 누르면 된다. 잘 된다. xp_cmdshell을 이용하여 command.txt에 sftp에 접촉 후 내릴 명령을 만들었다. 물론 업로드할 파일도 만들고.. 그런데.. xp_cmdshell로는 안 된다. 서비스 시작 계정과 내가 원격으로 접촉한 도메인 계정이 달라서다. OS 예약작업으로 되는가? 역시 안 된다. os 예약작업을 위한 도메인 계정이 따로 있다. 첨에 접촉하면 인증키가 어쩌고에서 걸린다. 인증키 어쩌고 단계에서 'y'만 누르면 되는데.. 그렇다면 다른 계정으로 실행하면 될터! 찾아보니 runas라는 os명령어가 있다. 그런데.. 패스워드 입력 부분이 걸린다. 또 찾아보니..[http://www.robotronic.de/runasspcEn.html runasspc.exe]라는게 있더라. runas 할 때에 패스워드를 자동입력되게 끔해주는 프로그램이다. 위의 psftp 명령을 ftp.bat파일로 만들고.. {{{ runasspc.exe /program:"c:\sftp\ftp.bat" /domain:"도메인" /user:"도메인계정" /password:"패스워드" /quiet }}} 와 같이 실행한다. 참고로 /quiet 없이 실행하면 gui가 나온다. 암턴.. 이걸 또 .bat파일을 만들었다. 업로드만 하는 것이기에 ssis 패키지로 업로드 할 데이터 파일을 만드는 것에부터 ftp전송하는 것 까지 만들었다. dtexec로 실행하는 .bat 파일을 또 만들고 os 예약 작업을 걸었다. 실행은 되는거 같은데 잘 실행되는지 알수 없어 ssis 패키지에 log.txt에 실행일 잘 되었는지 기록을 남겨보았다. 잘된다. 어제 아침부터 오후까지 열라 삽질했다. 옛날에도 sftp에 파일을 올리는 자동화 작업을 했었는데..그 때는 잘 되었었는데.. 기억나지 않아 기록을 남겨본다.