디렉토리 덮어 쓰기

mv 는 directory overwrite가 안된다.
그래서 다른 방법을 이용해야 하는데

cp -Rf source dest 로 복사하면 된다.
그리고 rm -rf source 로 directory 를 삭제......

overwrite를 mv도 옵션으로 지원해줬으면 좋겠다.

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by shiftkey

2008/12/04 09:28 2008/12/04 09:28
,
Response
A trackback , No Comment
RSS :
http://shiftkey.org/rss/response/183

cmd ftp

간단하게 윈도우에서 ftp로 파일을 업로드 해보자!!!

아래의 글은 웹의 어딘가에서 베껴온 내용인데 출처를 기록해두는걸 깜빡해서
이 글을 공개할까말까하다가 그냥 공개하기로했다.

출처를 아시는분은 댓글을 달아주시면 감사하겠습니다.

그리고 아래 글들을 복잡하게 읽을 필요가 없고 간단하게 말하자면
ftp_run.bat라는 배치파일을 만들고
ftp_upload.txt라는 ftp에서 해야 할 일을 적어둔 txt파일 하나만 있으면된다.

ftp_run.bat
ftp -s:"C:\ftp_upload.txt" shiftkey.org >> ftplog.txt //로그남기는걸 좋아해서......
del ftplog.txt//근데 여기선 지워버렸다...ㅋㅋㅋ


ftp_upload.txt
shiftkeyid
shiftkeypwd

put "c:\uploadfile.txt" "./upload/pds/uploadfile.txt"
quit


=== 아래 ===



file.runwait(0, ?"d:\Program Files\WinRAR\WinRAR.exe",?#a -r "c:\windows\temp\ftp_to_upload.rar" "F:\PowerPro\temp\"#,"","hide") ;; 주1
file.runwait(0, "cmd",?#/c ftp -s:"F:\PowerPro\ftp_test.txt" ftp.test.com#,"","hide") ;; 주2
file.deletenorecycle(?"c:\windows\temp\ftp_to_upload.rar") ;; 주3



압축과 ftp 전송 모두 TC 를 이용해도 됩니다만, 여기서는 모든 과정을 백그라운드에서 돌아가도록 하기 위해, winrar 와 윈도우 내장 ftp 명령을 hide 옵션을 주고 실행했습니다.



do 를 쓰지 않고 file.runwait 를 쓴 이유는, do(명령) 과 do(명령) 사이에 wait 을 줘야 하는데, 이 경우는 wait 의 값이 일정하지 않습니다. 압축되는 시간과 파일 전송 시간 모두 일정치 않으므로, 이 경우 wait 의 값을 적절히 주기가 까다롭다는 것이죠. file 플러그인의 runwait 서비스는 이런 경우 매우 유용한데, 아래와 같은 모양을 가집니다.



file.runwait(최대대기시간, "실행파일경로", "파라미터", "작업폴더", "min, max, hide, normal 중 하나")



최대대기시간의 단위는 밀리초이며, 그 값을 지정하면 실행파일의 명령이 종료되기 전이라도 최대 지정 밀리초까지 기다린 후 다음 스크립 라인으로 넘어갑니다. 지정된 최대대기시간 이전에 실행파일의 명령이 종료되면 바로 다음 스크립 라인으로 넘어갑니다. 그 값을 0 으로 지정하면 실행파일경로에 지정한 명령이 종료될때까지 무한정 기다리다가 그 명령이 종료되는 순간 바로 다음 스크립 라인으로 넘어갑니다.



실행파일경로는 경로를 포함한 exe 혹은 bat 혹은 cmd 파일이어야 합니다.



주1. 백그라운드 작업은 여전히 cli 모드가 여전히 유용합니다. winrar 는 매우 강력한 cli 모드를 지원하고 있습니다. a 는 압축하겠다는 것, -r 은 서브폴더까지 포함하겠다는 것.. winrar 명령행 옵션의 좀 더 자세한 내용은 winrar 도움말 참조하시면 되고요. 물론 모든 경로는 상황에 맞게 수정하시고요.



주2. 윈도우에서 기본 내장되어 있는 ftp 명령을 이용해서 전송합니다. ftp 명령에 대한 자세한 내용은 win F1 눌러서 ftp 로 검색해 보시면 됩니다. cmd 창에서 ftp 명령을 수행하는데, ftp.test.com 서버에 접속한 후, 자동으로 -s 옵션으로 지정된 파일의 내용을 모두 실행하고, cmd 창을 닫습니다.(/c)


ftp_test.txt 파일의 내용은 다음과 같습니다.


ftp_test.txt

id
pw

put "c:\windows\temp\ftp_to_upload.rar"
quit



---



id 와 패쓰워드, 수행명령을 각각 한줄씩 적으면 됩니다. 3번째 줄에서 ftp 서버에 저장될 파일명을 적지 않아도 상관 없는데, 이 경우는 리모트 서버에 로컬 파일명으로 자동 저장됩니다.



주3. 전송이 끝난 압축파일을 휴지통으로 보내지 않고, 바로 삭제합니다.






참고. 윈도우 내장 ftp 명령은 리모트 서버에 동일 파일이 있는 경우, 덮어쓸지 어떨지 안 물어보네요. 무조건 덮어씁니다. 오히려 물어보도록 하는 옵션이 있는지 어떤지 그게 궁금하군요.. ㅎㅎ



>1. 예를 들어서...

>e:\personal Data\안에 있는 폴더와 기타 파일들을 압축해서 제 개인 ftp서버(ftp://abc.com)로 올리는거 까지..

>이거 파워프로로 구현할수 있을까요? 뭐.. 반복작업이야... 원하는대로 파워프로에서 스케쥴 잡으면 가능할거 같은데.. 폴더를 압축하고 업로드 하는거 까지를 어떻게 하면 좋을지 대책이 안섭니다...

>아시는분... 좀 알려주세요.. 부탁 드릴께요...

>

>2. 위의 작업이 가능하다는 전재하에.. 서버에 올릴때 같은 파일이존재할 경우 덮어쓰냐는 확인창이 뜨는데.. 여기서 파워프로가 '덮어씀'이라는 버튼을 자동으로 클릭하게 할수 있을까요? 제가 원하는건.. 압축부터 서버에 업로드... 덮어쓰기 까지.. 완전 자동으로 이루어 졌으면 좋겠습니다.(자동화 프로그램은 많더군요... 아니면.. 별도의 매크로 프로그램으로는 가능하구요... 하지만.. 파워프로로 가능했으면 정말 편할거 같습니다...)

>

>3. 이런 방법도 생각해 봤습니다.

>폴더 내용을 압축하고 서버에 올릴때 서버에 해당 년 월 일로 폴더를 작성하고 거기에 압축된 파일을 올리는 겁니다.

>그리고.. 그 폴더를 제외하고 나머지 폴더는 다 삭제를 하는 거지요... 가능 할까요??

>'

>

>음.. 제가... 너무 많은걸 바라는지도 모르겠습니다. 혹시.. 가능하다면.. 알려주시면 감사드리겠습니다.

>

>

>마지막으로...

>새로운 한해가 시작되었습니다... 라고 하기엔 좀 이상하지만.. 여하튼... 회원분들 새해 복 많이 받으세요~



오... 이런방법도 있군요...~ 주석까지 자세한 설명 감사드립니다.
몇가지 질문이 있습니다.

1. c:\windows\temp\ftp_to_upload.rar" "F:\PowerPro\temp\
이부분을 해석하자면 어떻게 되는건지요? 제 생각으로는 "F:\PowerPro\temp\안의 파일과 폴더 모두를
c:\windows\temp\안에 ftp_to_upload.rar라는 이름으로 압축하라는거 같은데 맞는지요?

2. ftp.test.com이걸 ftp://aaa.aaa.com 이런식으로 바꿔도 되는지요?(안된다면 어떻게 표시하면 될까요?제가 보유하고 있는 서버의 접속 주소가 ftp://aaa.aaa.com이런 식입니다.)

이카루스 역쉬 범석님입니다.
범석 1. 예.. 맞습니다.

2. ftp:// 를 빼고, 도메인명만 넣으셔야 합니다. 말씀하신 경우라면, aaa.aaa.com 만 넣으셔야겠죠.
noriyo 그렇군요.... 잘 사용하겠습니다.~~
그리구... 이카루스님!!! 토커로 FTP제어하는거.. 마저 알려주셔야죠...ㅎㅎㅎ
참가번호 대단.. 정말 대단.. 파일 올리는 것은 힘들 것 같았는데..
나제곤 요기서 file.runwait에 대해 좀 더 배울 수 있어서 좋네요. 좋은 팁입니당
참가번호 사용례를 보는 것은 즐거운 일이죠. runwait 에 대한 것도.. 일단 읽은 기억만 있으면, 나중에 좋은 예가 되거든요..
그런 의미로, 오늘 window position 에 대한 설정 하나..
window position 100 100 800 600 autorun 이라고 도움말에 나와 있는데요.
window position 100 100 800 600 "down.txt"
window.position(" 100 100 800 600 down.txt ") 정도로 해도 되더군요.
앞의 autorun 은 사전에는 좀전에 실행한 창인데요. 그냥, 캡션으로 해도 되더군요. 이것을 몰라서 ... 참..


* 패시브모드 - "quote pasv"
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by shiftkey

2007/10/17 12:10 2007/10/17 12:10
, ,
Response
No Trackback , No Comment
RSS :
http://shiftkey.org/rss/response/101


블로그 이미지

Shiftkey가 살아가는 이런 저런 이야기......

- shiftkey

Notices

Archives

Authors

  1. shiftkey

Calendar

«   2012/05   »
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Site Stats

Total hits:
160847
Today:
122
Yesterday:
156