영삼넷: 프로그래밍/CYGWIN&DOS 카테고리 글 목록https://youngsam.net/IT 강국 = 김영삼 블로그에 오신걸 환영합니다.2023-11-03T06:58:09+09:00Textcube 1.10.9 : Tempo primoncftpget 으로 원격 ftp 사이트 소스 통째로 가져오기.openkrhttps://youngsam.net/entry/ncftpget-%EC%9C%BC%EB%A1%9C-%EC%9B%90%EA%B2%A9-ftp-%EC%82%AC%EC%9D%B4%ED%8A%B8-%EC%86%8C%EC%8A%A4-%ED%86%B5%EC%A7%B8%EB%A1%9C-%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B02011-06-09T04:42:23+09:002011-06-09T04:42:23+09:00# ncftpget -u ftpID -p ftpPWD -E -R remote.ftp.co.kr . /public_html/<br><br>위 명령어는 원격에 있는 remote.ftp.co.kr 이라는사이트에 <br>ftpID, ftpPWD 로 로그인을 해서<br>그 계정의 public_html 디렉토리를 <br>현재 내 위치 (.) 에 하위 디렉토리까지 (-R) <br>통채로 가져오라는 명령어.<br>..<br>만약 ftp 서버의 패시브모드 변경해야 한다면 -E 나 -F 옵션을 줘야 함.<br>..<br> -E Use regular (PORT) data connections.<br> -F Use passive (PASV) data connections. The default is to use passive, but to fallback to regular if the pas-sive connection fails or times out.<br><br>..<br>ssh 접속이 안되고 ftp 만 허용해서 원격서버의 전체 웹루트의 소스를 백업해 올 때 <br>유용할듯. <!-- 테러 태그 방지용 --><p><strong><a href="https://youngsam.net/entry/ncftpget-%EC%9C%BC%EB%A1%9C-%EC%9B%90%EA%B2%A9-ftp-%EC%82%AC%EC%9D%B4%ED%8A%B8-%EC%86%8C%EC%8A%A4-%ED%86%B5%EC%A7%B8%EB%A1%9C-%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0?commentInput=true#entry1476WriteComment">댓글 쓰기</a></strong></p>pscp와 plink를 이용해서 원격 SSH 호스트에 파일 업로드 및 작업 자동화하기openkrhttps://youngsam.net/entry/pscp%EC%99%80-plink%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EC%9B%90%EA%B2%A9-SSH-%ED%98%B8%EC%8A%A4%ED%8A%B8%EC%97%90-%ED%8C%8C%EC%9D%BC-%EC%97%85%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%9E%91%EC%97%85-%EC%9E%90%EB%8F%99%ED%99%94%ED%95%98%EA%B8%B02018-08-04T15:50:08+09:002010-03-14T09:42:52+09:00<p>1. 원격 SSH 호스트에 파일 올리기</p>
<p>베리즈 웹쉐어 프로젝트에서 배포본을 웹서버에 올리는 작업을 자동화하기 위해 쓰고 있는 방법입니다. PuTTY 패밀리의 일원인 pscp를 사용하고, stania군이 작업했던 것으로 기억합니다.</p>
<p>pscp.exe 올릴파일이름 <a href="mailto:유저이름@호스트주소">유저이름@호스트주소</a>:목적지경로 -pw 비밀번호<br />e.g.) pscp yd0283.avi <a href="mailto:rica@upnl.org:public_html/yd_distribution">rica@upnl.org:public_html/yd_distribution</a> -pw BLAHBLAH</p>
<p>커맨드는 위와 같습니다. 이때 '-pw 비밀번호' 부분을 빼면 매번 비밀번호를 입력하게 됩니다. 베리즈 웹쉐어 프로젝트에서는 스크립트를 실행할 때마다 암호를 입력하는 것을 피하면서 스크립트에 암호가 그대로 보이는 상황을 막기 위해, 계정에서 계정의 개인키를 받아오는 방식을 취하고 있습니다. 이 방법은 제가 잘 모르기 때문에 건너뛰겠습니다.</p>
<p>2. 원격 SSH 호스트에 명령어 입력하기</p>
<p>PuTTY는 유명한 SSH 클라이언트인데, PuTTY 패밀리 중에 콘솔에서 작동하는 SSH 클라이언트도 있지 않을까 하고 찾아 봤더니 역시 있습니다. 이름은 plink라고 합니다.</p>
<p>이놈도 사용방법은 비슷합니다.</p>
<p>plink.exe 유저이름@호스트주소 -m 수행할명령어가담긴파일 -pw 비밀번호<br />e.g.) plink <a href="mailto:rica@upnl.org">rica@upnl.org</a> -m commands.txt -pw BLAHBLAH</p>
<br />
<p>3. 위 작업들을 스크립팅</p>
<p>pscp와 plink는 모두 콘솔에서 잘 작동하기 때문에, 배치파일을 쉽게 만들 수 있습니다.<br />plink를 실행해서 수행할 명령어가 담긴 파일을 따로 관리해야 하는 것이 약간 귀찮다면 귀찮겠네요.<br /><br />pscp 는 <a href="http://youngsam.kr/1056">http://youngsam.net/1056</a> 요 글을 참고 하십시오. 윈도우 환경에서 가능합니다.</p><p><strong><a href="https://youngsam.net/entry/pscp%EC%99%80-plink%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EC%9B%90%EA%B2%A9-SSH-%ED%98%B8%EC%8A%A4%ED%8A%B8%EC%97%90-%ED%8C%8C%EC%9D%BC-%EC%97%85%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%9E%91%EC%97%85-%EC%9E%90%EB%8F%99%ED%99%94%ED%95%98%EA%B8%B0?commentInput=true#entry1058WriteComment">댓글 쓰기</a></strong></p>cmd.exe 명령 도움말openkrhttps://youngsam.net/entry/cmdexe-%EB%AA%85%EB%A0%B9-%EB%8F%84%EC%9B%80%EB%A7%902010-03-12T17:08:36+09:002010-03-12T17:08:36+09:00Windows2000 명령 인터프리터의 새 인스턴스를 시작합니다.<BR><BR>CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]<BR> [[/S] [/C | /K] 문자열]<BR><BR>/C 문자열이 지정한 명령어를 수행한 후에 종료합니다.<BR>/K 문자열이 지정한 명령어를 수행한 후에 계속 남아있습니다.<BR>/S /C 또는 /K 다음에 문자열의 역할을 수정합니다(아래 참고).<BR>/Q 에코를 끕니다.<BR>/D 레지스트리에서 AutoRun 명령어를 실행할 수 없습니다(아래 참고).<BR>/A 파이프 또는 파일로의 내부 명령어의 출력이 ANSI로 설정합니다.<BR>/U 파이프 또는 파일로의 내부 명령어의 출력을 Unicode로<BR> 설정합니다.<BR>/T:fg 전경/배경 화면 색상을 설정합니다(자세한 사항은 COLOR /? 참고).<BR>/E:ON 명령 확장을 사용할 수 있습니다(아래 참고).<BR>/E:OFF 명령 확장을 사용할 수 없습니다(아래 참고).<BR>/F:ON 파일과 디렉터리 이름 완성 문자를 사용할 수 있습니다(아래 참고).<BR>/F:OFF 파일과 디렉터리 이름 완성 문자를 사용할 수 없습니다(아래 참고).<BR>/V:ON c를 사용하는 지연된 환경 변수 확장명을 구분 기호로 사용할 수 있습니다.<BR> 예를 들어, /V:ON는 실행 시간에 !var!이 변수 var을<BR> 확장하도록 허용합니다. var 구문은 입력 시간에<BR> 변수를 확장하는데 이것은 FOR 루프 안에 있는 경우와<BR> 매우 다릅니다.<BR>/V:OFF 지연된 환경 확장을 할 수 없습니다.<BR><BR>명령 구분 기호 '&&'로 구분되는 다중 명령어는<BR>앞뒤에 따옴표가 있는 경우에만 문자열로 처리됩니다.<BR>또한 호환성을 위해 /X와 /E:ON, /Y와 /E:OFF, /R과/C는<BR>동일한 기능을 갖습니다. 다른 스위치는 무시됩니다.<BR><BR>/C 또는 /K가 지정되면, 스위치 뒤의 나머지 명령줄은<BR>다음 내용과 같이 따옴표(") 문자를 처리하도록<BR>별도의 명령줄로 처리됩니다.<BR><BR> 1. 다음의 모든 조건이 만족되면,<BR> 명령 줄에 있는 따옴표가 유지됩니다.<BR><BR> - /S 스위치 없음<BR> - 정확히 두 개의 따옴표 문자가 있음<BR> - 따옴표 문자 사이에 다음과 같은 특수 문자가 없음<BR> 특수 문자: &<>()@^|<BR> - 따옴표 사이에 하나 이상의 공백 문자가 있음<BR> - 따옴표 사이에 실행 파일 이름이 있음<BR><BR> 2. 그렇지 않으면, 이전의 방식대로 첫 문자가 따옴표인지 확인하고<BR> 만약 따옴표라면, 시작 및 끝 따옴표를 제거하고 따옴표 뒤에 있는<BR> 문자를 유지합니다.<BR><BR>명령 줄에 /D가 사용되지 않으면 CMD.EXE가 시작할 때,<BR>다음 REG_SZ/REG_EXPAND_SZ 레지스트리 변수를 찾습니다.<BR>다음 중 하나 또는 모두가 있으면 우선적으로 실행합니다.<BR><BR> HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun<BR><BR> 및/또는<BR><BR> HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun<BR><BR><BR>명령 확장은 기본적으로 사용하도록 설정되어 있습니다. 그렇지만<BR>/E:OFF 스위치 사용하면 명령 확장을 사용하지 않을 수도 있습니다.<BR>REGEDT32.EXE를 사용하여 레지스트리에 있는 REG_DWORD 중에서<BR>하나 또는 모든 값을 설정(0x1 또는 0x0)함으로써 컴퓨터 및/또는<BR>사용자 로그온 세션에 있는 CMD.EXE에 대해 명령 확장을 사용하도록<BR>또는 사용하지 않도록 설정할 수 있습니다.<BR><BR> HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions<BR><BR> 및/또는<BR><BR> HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions<BR><BR>사용자 설정 내용은 컴퓨터 설정 내용에 대해 우선권을 갖습니다.<BR>명령 줄에 사용된 스위치는 레지스트리 설정에 대해 우선권을<BR>갖습니다.<BR><BR>명령 확장에는 아래 명령에 대한 변경 및/또는 추가 사항이 있습니다.<BR><BR> DEL 또는 ERASE<BR> COLOR<BR> CD 또는 CHDIR<BR> MD 또는 MKDIR<BR> PROMPT<BR> PUSHD<BR> POPD<BR> SET<BR> SETLOCAL<BR> ENDLOCAL<BR> IF<BR> FOR<BR> CALL<BR> SHIFT<BR> GOTO<BR> START (또한, 외부 명령 호출에 대한 변경 사항도 있습니다.)<BR> ASSOC<BR> FTYPE<BR><BR>자세한 정보를 얻으려면 "명령 이름 /?"를 입력하고 내용을 확인하십시오.<BR><BR>지연된 환경 변수 확장은 기본적으로 사용하지 않도록 설정되어<BR>있습니다. /V:ON 또는 /V:OFF 스위치를 사용하여 CMD.EXE에<BR>지연된 환경 변수 확장을 사용하거나 사용하지 않을 수 있습니다.<BR>REGEDT32.EXE를 사용하여 레지스트리에 있는 REG_DWORD 중에서<BR>하나 또는 모든 값을 설정(0x1 또는 0x0)함으로써 컴퓨터 및/또는<BR>사용자 로그온 세션에 있는 CMD.EXE에 대해 사용하도록<BR>또는 사용하지 않도록 설정할 수 있습니다.<BR><BR> HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansion<BR><BR> 및/또는<BR><BR> HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansion<BR><BR>사용자 설정 내용은 컴퓨터 설정 내용에 대해 우선권을 갖습니다.<BR>명령 줄에 사용된 스위치는 레지스트리 설정에 대해 우선권을<BR>갖습니다.<BR><BR>지연된 환경 변수 확장을 사용하도록 설정하면<BR>실행 시간동안 환경 변수의 값을 대신할 수<BR>있습니다.<BR><BR><BR>파일과 디렉터리 이름 완성은 기본적으로 사용하지 않도록<BR>설정되어 있습니다. /F:ON 또는 /F:OFF 스위치를 사용하여<BR>CMD.EXE에 대한 파일 이름 완성을 사용하거나 사용하지<BR>않을 수 있습니다. REGEDT32.EXE를 사용하여 레지스트리에 있는<BR>REG_DWORD 중에서 하나 또는 모든 값을 설정(아래 참고)함으로써<BR>컴퓨터 및/또는 사용자 로그온 세션에 있는 CMD.EXE에 대해<BR>사용하도록 또는 사용하지 않도록 설정할 수 있습니다.<BR><BR> HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar<BR> HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar<BR><BR> 및/또는<BR><BR> HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar<BR> HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar<BR><BR>위의 레지스트리 값에는 특정 기능에 대해 사용할 제어 문자의<BR>16진수 값을 사용합니다. (예: 0x4은 Ctrl-D이고 0x6은 Ctrl-F입니다.)<BR>사용자 설정 내용은 컴퓨터 설정 내용에 대해 우선권을 갖습니다.<BR>명령 줄에 사용된 스위치는 레지스트리 설정에 대해 우선권을<BR>갖습니다.<BR><BR>/F:ON 스위치를 사용하여 이름 완성 기능을 사용하면<BR>두 개의 제어 문자를 사용할 수 있으며, 디렉터리 이름<BR>완성에는 Ctrl-D를, 파일 이름 완성에는 Ctrl-F를 사용할 수<BR>있습니다. 레지스트리에 있는 특정 완성 문자를 사용할 수<BR>없도록 설정하려면 올바른 제어 문자가 아닌<BR>공백(0x20) 값을 사용하십시오.<BR><BR><BR>두 개의 제어 문자 중에서 하나를 입력할 때 이름 완성이<BR>실행됩니다. 완성 기능은 일치하는 경로의 목록을 만들지 않았거나<BR>또는 아무 경로가 없는 경우, 와일드카드 문자를 덧붙이는 커서의<BR>왼쪽에 경로 문자열을 위치시킵니다. 그리고 일치하는 첫 번째<BR>경로를 표시합니다. 일치하는 경로가 없으면 경고음을 내고 화면에<BR>표시합니다. 이후에도 같은 제어 문자를 반복해서 누르면<BR>일치하는 경로의 목록 전체를 순환합니다. 제어 문자와 함께<BR><Shift> 키를 누르면 목록을 반대로 작업합니다. 해당 행을 편집하고<BR>제어 문자를 다시 누르면 저장된 일치하는 경로 목록이 삭제되고<BR>새로운 목록을 만듭니다. 파일과 디렉터리 이름 완성 작업 간에도<BR>동일합니다. 두 개의 제어 문자 사이에 유일하게 다른 점은<BR>디렉터리 완성 문자는 디렉터리 이름과 일치하는 반면<BR>파일 완성 문자는 파일과 디렉터리 이름 양 쪽 모두와 일치한다는<BR>것입니다. 파일 완성이 기본 제공 디렉터리 명령어(CD, MD, RD) 중<BR>어떤 명령어에 사용되면 디렉터리 완성이 실행됩니다.<BR><BR>완성 코드는 공백이 있거나 일치하는 경로의 주위에 따옴표가 있는<BR>특수 문자를 갖는 파일 이름과 올바르게 작동합니다.<BR>또한 백업을 하는 경우, 행에서 완성 기능을 실행하십시오.<BR>완성이 실행된 지점의 커서 오른편에 있는 문자열은 제거됩니다.<BR><p><strong><a href="https://youngsam.net/entry/cmdexe-%EB%AA%85%EB%A0%B9-%EB%8F%84%EC%9B%80%EB%A7%90?commentInput=true#entry1042WriteComment">댓글 쓰기</a></strong></p>lftp 이용한 파일 다운로드 , 업로드openkrhttps://youngsam.net/entry/lftp-%EC%9D%B4%EC%9A%A9%ED%95%9C-%ED%8C%8C%EC%9D%BC-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EC%97%85%EB%A1%9C%EB%93%9C2010-03-10T21:00:18+09:002010-03-10T21:00:18+09:00리눅스 서버간 파일 복사할 때 <BR>보통 scp 등으로 명령어 라인에서 간단하게 복사하는데 <BR>방화벽이나 관리자가 scp 명령어를 막아서 못쓸 경우 <BR>lftp 로 간단하게 옮길 수 있습니다. <BR>.. <BR>lftp 는 옛날 ncftp 를 기능적으로 대체하는 ftp 클라이언트 인데 <BR>최근 리눅스 배포판에는 ncftp 가 빠지고 lftp 가 들어가 있습니다. <BR><BR><BR>[[ 사용법 ]] <BR><BR><BR>## 파일 가져올 때 : home.co.kr 서버의 nonots 계정에 있는 *.tgz 파일들을 <BR>내 컴퓨터로 가져올 때 <BR><BR>lftp home.co.kr -u nonots,mypwd -e "mget *.tgz;exit" <BR><BR><BR><BR>## 여러파일 업로드 할 때 : home.co.kr 서버의 nonots 계정으로 *.log 파일들을 <BR>업로드 할때 <BR><BR>lftp home.co.kr -u nonots,mypwd -e "mput ./*.log;exit" <BR>lftp home4.co.kr -u nonots,mypwd -e "put ./aaa.tgz;exit" <BR><BR><BR><BR>## 방화벽 등으로 패시브 모드 전환 필요할 때 ( set ftp:passive-mode 0 혹은 1 ) <BR><BR>lftp home7.co.kr -u nonots,mypwd -e "set ftp:passive-mode 0;put ./aaa.tgz;exit" <BR><p><strong><a href="https://youngsam.net/entry/lftp-%EC%9D%B4%EC%9A%A9%ED%95%9C-%ED%8C%8C%EC%9D%BC-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EC%97%85%EB%A1%9C%EB%93%9C?commentInput=true#entry1022WriteComment">댓글 쓰기</a></strong></p>Cygwin bash prompt 모양 바꾸기.openkrhttps://youngsam.net/entry/Cygwin-bash-prompt-%EB%AA%A8%EC%96%91-%EB%B0%94%EA%BE%B8%EA%B8%B02009-10-14T15:48:32+09:002009-10-14T15:46:55+09:00<P>리눅스에서 흔히 볼수 있는 [guest@zgd home]$ 식의 프롬프트를 이용하고 싶다면싶다면 <BR>profile 파일을 수정해줘야 합니다.<BR>profile 파일을 이해하고 프롬프트 설정 부분만 찾아서찾아서 변경해주면 참 좋겠으나<BR>저처럼 초보인 경우엔 단순한 쉘스크립트도 복잡해보입니다.<BR>그래서 마지막 줄에 추가하는 식으로 설명 해놨습니다.</P>
<P>일단일단 자신의 홈디랙토리에 .bash_profile 파일이 있나 확인해봅니다.</P>
<P>없다면,</P>
<P>cp /etc/profile ~/.bash_profile</P>
<P><BR>하시고,하시고, </P>
<P><BR>복사된 .bash_profile 제일 마지막 줄에 아래의 코드를 입력하면 흔히흔히 보던 프롬프트 모양으로 바뀔 것입니다.</P>
<P><BR>export PS1='[\u@\h \W]\$ '</P>
<P><BR>export PS1='[\u@\h \W]\$ '<BR>[master@nox ~]$ </P>
<P><BR>덧 , 새로운 환경변수에 적용되기 위해서는 재접속 하셔야 합니다.<BR></P><p><strong><a href="https://youngsam.net/entry/Cygwin-bash-prompt-%EB%AA%A8%EC%96%91-%EB%B0%94%EA%BE%B8%EA%B8%B0?commentInput=true#entry979WriteComment">댓글 쓰기</a></strong></p>Cygwin 한글 입출력 원활히 사용하기.openkrhttps://youngsam.net/entry/Cygwin-%ED%95%9C%EA%B8%80-%EC%9E%85%EC%B6%9C%EB%A0%A5-%EC%9B%90%ED%99%9C%ED%9E%88-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B02009-10-14T15:47:43+09:002009-10-14T15:45:36+09:00<DIV class=entry-content>
<P>Cygwin 기본설정 상태에서는 한글입출력이 불가능 합니다.<BR />몇가지 환경설정을 해줘야 <SPAN class=copyAngel_nowdac_LinkUp original="http://nowdac.com/2460697" entryid="2460697"><A style="DISPLAY: inline" class=copyAngel_nowdac_LinkUp_remote href="http://nowdac.com/2460697?t=c&i=0">한글</A><SPAN style="DISPLAY: none" class=copyAngel_nowdac_LinkUp_local>한글</SPAN></SPAN> 입출력이 가능해 집니다.</P>
<P>자신의 홈 디렉토리의<BR />.inputrc 파일을 생성하여 <SPAN class=copyAngel_nowdac_LinkUp original="http://nowdac.com/2460697" entryid="2460697"><A style="DISPLAY: inline" class=copyAngel_nowdac_LinkUp_remote href="http://nowdac.com/2460697?t=c&i=0">다음의</A><SPAN style="DISPLAY: none" class=copyAngel_nowdac_LinkUp_local>다음의</SPAN></SPAN> 내용을 추가하여 줍니다.</P>
<DIV style="PADDING-BOTTOM: 10px; BACKGROUND-COLOR: #e4e4e4; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; PADDING-TOP: 10px">set meta-flag <STRONG>on</STRONG><BR />set convert-meta <STRONG>off</STRONG><BR />set output-meta <STRONG>on</STRONG></DIV>
<P>마찬가지로 홈 디렉토리의<BR /><SPAN class=copyAngel_nowdac_LinkUp original="http://nowdac.com/2460697" entryid="2460697"><A style="DISPLAY: inline" class=copyAngel_nowdac_LinkUp_remote href="http://nowdac.com/2460697?t=c&i=0">.bashrc</A><SPAN style="DISPLAY: none" class=copyAngel_nowdac_LinkUp_local>.bashrc</SPAN></SPAN> 파일을 생성하여 다음의 내용을 추가하여 줍니다.</P>
<DIV style="PADDING-BOTTOM: 10px; BACKGROUND-COLOR: #e4e4e4; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; PADDING-TOP: 10px">alias ls='ls -F --color=auto <STRONG>--show-control-char</STRONG>'<BR />alias l.='ls -dl .[a-zA-Z]*'<BR />alias ll='ls -al'<BR />alias cp='cp -i'<BR />alias mv='mv -i'<BR />alias rm='rm -i'</DIV>
<P><SPAN class=copyAngel_nowdac_LinkUp original="http://nowdac.com/2460697" entryid="2460697"><A style="DISPLAY: inline" class=copyAngel_nowdac_LinkUp_remote href="http://nowdac.com/2460697?t=c&i=0">마지막으로</A><SPAN style="DISPLAY: none" class=copyAngel_nowdac_LinkUp_local>마지막으로</SPAN></SPAN> .bash_profile 맨 마지막에</P>
<DIV style="PADDING-BOTTOM: 10px; BACKGROUND-COLOR: #e4e4e4; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; PADDING-TOP: 10px">if [ -f /etc/bash.bashrc ] ; then<BR />source /etc/bash.bashrc<BR />fi<BR /><BR />if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then<BR />INPUTRC=/etc/inputrc<BR />fi</DIV>
<P>를 추가해줍니다.</P></DIV><p><strong><a href="https://youngsam.net/entry/Cygwin-%ED%95%9C%EA%B8%80-%EC%9E%85%EC%B6%9C%EB%A0%A5-%EC%9B%90%ED%99%9C%ED%9E%88-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0?commentInput=true#entry978WriteComment">댓글 쓰기</a></strong></p>wget 사용법 2openkrhttps://youngsam.net/entry/wget-%EC%82%AC%EC%9A%A9%EB%B2%95-22009-10-13T13:08:12+09:002009-10-13T13:08:12+09:00<H3 class=posttitle><A class=con_link title="wget 사용법" name=1288476 target=_blank>wget 사용법</A> 2</H3>
<DIV class=content>* 이 글은 유닉스 관련 운영체제의 경험이 별로 없는 사람을 위한 wget 의 간단한 지침서입니다. <BR><BR><STRONG>1. wget ?</STRONG><BR><BR>코맨드 라인에서 파일 다운로드를 쉽게 할 수 있는 유틸리티이다. 요즘의 대부분의 리눅스 배포판에는 기본적으로 설치되어 있다. <BR><BR><STRONG>2. Windows 버전의 wget</STRONG> <BR><BR>* win32 에서 사용가능한 바이너리도 존재한다. <A class=con_link href="http://users.ugent.be/~bpuype/wget/" target=_blank>여기</A>를 참조.<BR><BR>- 위의 바이너리를 다운로드하고 윈도우 환경변수에서 PATH에 잡혀 있는 폴더로 복사해 둔다. <BR>- "<SPAN style="COLOR: #cc0000">어떻게 윈도우에서 PATH를 잡나요?</SPAN>" 라고 생각하시는 분이라면 <A class=con_link href="http://medialab.egloos.com/1273794" target=_blank>여기</A>를 참조할 것.<BR>- "<SPAN style="COLOR: #ff0000">PATH가 뭐지요?"</SPAN> 라고 생각하는 분이라면 걍 C:Windows 폴더로 복사한다. -.-;;; <BR><BR><STRONG>3. 기본적인 사용법</STRONG><BR> <BR>- PATH가 걸린 상태에서 '명령 프롬프트' 를 부르고 'wget' 을 입력한다.<BR>* 보다 명령 프롬프트를 쉽게 사용하려면 <A class=con_link href="http://medialab.egloos.com/1273646" target=_blank>여기</A>를 참조. <BR><BR>- "wget --help" 라고 하면 사용할 수 있는 옵션이 출력된다. <BR><BR><BR><STRONG>4. 중요한 옵션 및 사용예</STRONG><BR> <BR><STRONG>- r </STRONG>: 지정된 디렉토리의 하위 디렉토리의 내용을 몽땅 다운로드한다.<BR><BR>사용예 : wget -r <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/blast/db/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/blast/db/</A> <BR>설명 : 이렇게 하면 <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/blast/db/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/blast/db/</A> 의 디렉토리 구조를 유지한 채로 모든 파일을 불러온다.<BR><BR><STRONG>- nd</STRONG> : 디렉토리를 만들지 않는다. 계층적으로 나열된 웹 사이트의 디렉토리의 내용을 한 디렉토리로 불러올 때 편리하다. -r 옵션과 같이 사용하면 매우 유용하다. <BR><BR>사용예 : wget -nd -r <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/blast/db/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/blast/db/</A> <BR>설명 : 이렇게 하면 <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/blast/db/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/blast/db/</A> 내의 내용물을 현재 폴더에 몽땅 다운로드받는다.<BR><BR><STRONG>-A, --accept=</STRONG><STRONG>: </STRONG>지정된 확장자의 파일만을 받아온다. <BR><BR>사용예 : wget -nd -r --accept=fna <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/</A><BR><BR>설명 : 이렇게 하면 <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria</A> 에서 확장자가 .fna 인 파일만을 받아서 현재 디렉토리에 저장한다. (물론 -nd 옵션을 빼면 폴더 구조가 그대로 유지된다)<BR><BR><BR><STRONG>-R, --reject=: </STRONG>지정된 확장자의 파일만을 빼고 받아온다. <BR><BR>사용예 : wget -nd -r --accept=fna <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/</A><BR><BR>설명 : 이렇게 하면 <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria</A> 에서 확장자가 .fna 인 파일만 빼고 받아서 현재 디렉토리에 저장한다. <BR><BR><STRONG>-l , --level= : </STRONG>-r 옵션, 즉 하위 디렉토리 받아오기를 사용하였을 때 다운로드받을 최대 단계를 지정할 때 사용한다. <BR><BR>사용예 : wget -nd -r --accept=fna --level=3 <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/</A> <BR>설명 : <A class=con_link href="ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria" target=_blank>ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria</A> 에서 확장자가 .fna 인 파일만 빼고 받고 3단계까지 거슬러 올라서 다운로드를 수행한다. <BR><BR><STRONG>-N </STRONG>: 현재 다운로드 받을 위치에 있는 파일이 현재 내 하드에 있는 파일보다 새로운 파일일때만 다운로드를 수행한다<BR><BR><STRONG>-m</STRONG> : 미러 명령. 즉, 특정한 웹사이트의 내용을 그대로 폴더 구조채 긁어오되, 새로 업데이트한 내용만을 다운받고 싶을 때 사용한다. <BR><BR><STRONG>ftp id, password 지정 : </STRONG>wget <A class=con_link href="ftp://id:password@website/" target=_blank>ftp://<STRONG>id:password</STRONG>@website</A><BR><BR><BR><BR>이런 식으로 id와 password를 지정하면 된다 <BR><BR>이 정도면 많이 사용하는 옵션에 대해서는 설명했을 것이다. 기타 명령어에 대해서는 wget --help 를 입력하면 자세한 설명이 나와 있다. <BR><BR><BR><STRONG>5. 기타</STRONG><BR> <BR>- 쉘 스크립트나 배치 파일을 이용하여 자동화하면 매우 편리하다. <BR><BR>가령 유닉스 계열이라면<BR><BR>#!/bin/bash<BR>wget -nd -r <A class=con_link href="ftp://id:password@website/$1/" target=_blank>ftp://<STRONG>id:password</STRONG>@website/$1/</A><BR>.<BR>.<BR>.<BR><BR><BR>과 같은 식으로 간단한 쉘 스크립트를 작성하여 적당한 이름으로 저장한 후, Path가 걸린 위치에 넣고 실행 권한 (chmod +x <파일이름>) 을 주면 매우 편리하다. <BR><BR>윈도우라면 <BR><BR>echo off<BR>wget -nd -r <A class=con_link href="ftp://id:password@website/%1/" target=_blank>ftp://<STRONG>id:password</STRONG>@website/%1/</A><BR>.<BR>.<BR>.<BR><BR>과 같은 식으로 배치 파일을 만들고 *.bat 으로 저장한다. <BR></DIV><p><strong><a href="https://youngsam.net/entry/wget-%EC%82%AC%EC%9A%A9%EB%B2%95-2?commentInput=true#entry976WriteComment">댓글 쓰기</a></strong></p>간단 배치파일 작성openkrhttps://youngsam.net/entry/%EA%B0%84%EB%8B%A8-%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EC%9E%91%EC%84%B12009-09-30T03:35:25+09:002009-09-30T03:35:25+09:00<P>⑴ 배치파일이란?<BR><BR>자주 사용되는 일련의 명령들을 하나의 그룹으로 묶은 후 배치파일명만 입력하면 여러 명령이 한번에 수행되도록 한 파일로, 일괄처리파일이라고도 함 <BR><BR><BR>⑵ 배치파일 작성<BR><BR>'COPY CON 파일명'을 이용하거나 각종 에디터(Editor) 또는 워드프로세서를 통해 작성 <BR>배치파일을 확장자 : BAT <BR>배치파일에서 사용 가능한 명령 : 내부 및 외부 명령어, 배치 전용 명령 등 <BR>10개 이상의 명령을 실행시키기 위해 %0~%9까지 10개의 파라미터를 사용 <BR>일괄처리 파일의 실행 : 파일명을 입력한 후 Enter<BR>(예) 다음과정을 수행하는 배치파일 작성<BR>화면을 삭제<BR>파일 현재 디렉토리 목록을 확인<BR>A 드라이브를 검사<BR>A 드라이브 디스크 복사<BR><BR><BR>⑶ AUTOEXEC.BAT<BR><BR>배치파일의 특수한 경우로 컴퓨터가 부팅될 때 자동으로 실행되는 파일을 말하며, 주로 컴퓨터를 사용할 때 매번 설정하는 초기 명령 등을 기입함 <BR>자동실행 배치파일에는 일반 배치파일에서 사용하는 각종 명령어(내부/외부 명령어, 배치파일 전용 명령어)를 모두 사용할 수 있음 <BR>AUTOEXEC.BAT 파일은 루트 디렉토리에 존재해야 부팅시 정해진 처리를 하게 됨 <BR><BR><BR>⑷ 배치 전용 명령<BR><BR>ECHO ON : 명령어를 화면에 표시 <BR>ECHO OFF : 명령어를 화면에 표시하지 않음 <BR>GOTO : 특정 레이블로 분기하고자 할 경우 사용 <BR>IF : 조건에 따른 수행을 하고자 할 때 사용 <BR>PAUSE : 배치파일의 수행을 일시 정지 <BR>Shift : 가상의 파라미터를 이동 <BR>FOR : 실행을 반복 <BR>CALL : 다른 배치 파일 호출 <BR>※ ECHO 명령 사용시 ECHO OFF라는 명령조차 나타나는 것을 막기 위해서는 ECHO 명령 앞에 '@' 기호를 붙여주면 됨</P><BR><BR>
<P>샘플파일 aaa.bat </P>
<P>-----------------</P>
<P>@echo<BR>cd d:\temp\<BR>del *.*;</P>
<P>del /Q *.*; <--- 묻지 않고 삭제하기.</P>
<P>------------------</P><BR>
<P>@echo<BR>cd C:\kkk<BR>REM call rexpis_stop.bat <----- 주석 , 설명<BR>cd C:\kkk\data\autoretry<BR>del /Q *.*;<BR>rm -rf ./ <--- 해당 폴더 하위의 폴더를 삭제 , 에러무시해도 됨.<BR>del /Q *.*;<BR>cd C:\XMapper\data\xmldoc\mapin<BR>sqlplus a<A href="mailto:a/a@ORCL" target=_blank><FONT color=#ff6600>/a@ORCL</FONT></A> <-- 바로 sqlplus 로 접속 ( @a.txt a.txt 파일을 열어서 바로 스크립트 실행 )<BR>copy aaa.txt c:\kkk\bbb.txt<BR>cd C:\kkk<BR>REM call abc.bat</P><p><strong><a href="https://youngsam.net/entry/%EA%B0%84%EB%8B%A8-%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EC%9E%91%EC%84%B1?commentInput=true#entry934WriteComment">댓글 쓰기</a></strong></p>wget 사용법openkrhttps://youngsam.net/entry/wget-%EC%82%AC%EC%9A%A9%EB%B2%952018-08-04T15:54:56+09:002009-05-14T17:59:39+09:00<p>3 사용법사용방법은 간단합니다. <br /># wget -h</p>
<p>하면 간략한 설명을 볼 수 있고,</p>
<p># man wget</p>
<p>하면 좀더 많은 설명을 볼 수 있습니다. 먼저, 예를 들어서 홈페이지 youngsam.kr을 복사해 온다고 합시다. 그러면 ppp 접속이 되어 있는 상태에서</p>
<p><br /># wget <a href="http://youngsam.net/index.html">http://youngsam.net/index.html</a></p>
<p>이라고 명령하면 됩니다. 'http://'는 생략해도 됩니다. 'index.html' 부분도 생략하면 알아서 먼저 'index.html' 또는 'index.htm'을 찾으므로</p>
<p><br /># wget youngsam.net/</p>
<p>라고 해도 됩니다. 그러면 명령을 내린 현재 디렉토리에 'index.html'을 복사합니다. 자, 그러면 index.html에 링크되어 있는 것까지 찾아오려면 어떻게 할까요. '-r' 옵션을 사용합니다. 즉,</p>
<p># wget -r youngsam.net/</p>
<p>이렇게 사용합니다. 'r'은 '재귀적'을 의미하는 'recursive'의 줄임이겠지요. 디렉토리 구조와 파일을 그대로 복사해 옵니다.</p>
<p>재귀적 탐색의 깊이레벨은 기본값이 '5'로 되어있습니다. '-l depth' 옵션을 사용하면 바꿀 수 있습니다. 그러니까 기본값은 '-l 5'란 이야기겠죠. 이 레벨이 증가함에 따라 복사해오는 파일은 지수함수적으로 증가하게 됩니다.</p>
<p><br />만약 홈페이지 전체가 아니라 특정 페이지와 링크되어 있는 것만 받아오려면 어떻게 할까요. 예를 들어</p>
<p><br /># wget -r youngsam.net/doc/lecture/lecture.html</p>
<p>이라고 하면 'lecture.html'과 이것에 링크된 파일들을 복사해 오게 됩니다. 이 과정에서 링크된 파일 중 상위 디렉토리에 있는 것도 있는데 이것들은 빼고 원하는 파일이 있는 디렉토리와 그 이하에서만 받아 오려면</p>
<p># wget -r -np youngsam.net/doc/lecture/lecture.html</p>
<p>이렇게 '-np' 옵션을 사용합니다. 'np'는 'no-parent'를 의미합니다.</p>
<p>자, 홈페이지에서 그림이나 오디오파일 등은 빼고 HTML 문서만 복사해오려고 한다면</p>
<p><br /># wget -r -np -A html,htm youngsam.net/</p>
<p>처럼 '-A' 옵션을 사용합니다. 'A'는 'accept'를 의미합니다. 위의 예처럼 원하는 파일의 형식을 나열하면 됩니다. 반대로 일부 파일을 제외하고 싶으면 '-R' 옵션을 사용합니다. 'R'은 'reject'를 의미합니다. 예를 들어</p>
<p># wget -r -R gif,jpg,jpeg youngsam.net/</p>
<p>라고 하면 파일의 뒷부분의 문자열이 'gif','jpg','jpeg'인 파일들은 제외하고 나머지 파일들만 불러옵니다.</p>
<p>뭐, 이정도만 하면 충분히 잘 사용할 수 있습니다. 그러나 그외 몇가지만 더 설명드리겠습니다.</p>
<p><br />'-L' 옵션을 사용하면 상대주소를 이용한 링크들만 불러 옵니다. 다른 호스트에 있는 자료는 당연히 불러오지 않습니다. 그런데 대부분의 HTML 내의 링크는 상대주소를 이용할 것으로 생각되기 때문에 (제 생각에) 크게 중요하지는 않을 것 같습니다. 'L'은 'reLative'를 의미합니다. 아래의 예처럼 사용할 수 있겠죠.</p>
<p><br /># wget -r -L youngsam.net/</p>
<p>만약 다른 호스트의 자료까지 재귀적 탐색의 대상에 넣으려면 '-H' 옵션을 씁니다. 이는 'span-hosts'를 의미합니다.</p>
<p>wget을 실행시켜 보시면 메세지가 장황하게 나옵니다. 메세지를 전혀 나오지 않게 하려면 'quiet'를 의미하는 '-q' 옵션을, 쬐끔만 나오게 하려면 'non-verbose'를 의미하는 '-nv' 옵션을 사용하십시오.</p>
<p><br />wget은 파일을 불러올 때 컴퓨터 내에 같은 이름의 파일이 존재하면 기존의 파일은 그대로 두고 기존의 이름의 끝에 'original.file.1', 'original.file.2', 이런 식으로 숫자를 붙인 이름으로 복사합니다. 만약, 같은 이름의 파일이 있을 경우 복사해 오지 않게 하려면 'not-clobber'를 의미하는 '-nc' 옵션을 사용하면 됩니다.</p>
<p><br />매번 같은 옵션을 커맨드라인에서 사용하기는 번거롭겠죠? 자신의 홈디렉토리에다 '.wgetrc'라는 파일을 만들고 필요한 옵션들을 기록하면 매번 옵션을 주지 않아도 됩니다. 저의 것을 예로 들겠습니다.</p>
<br />
<p>1 accept = htm,html <br />2 #reject = <br />3 recursive = on <br />4 #reclevel = 5 <br />5 no_parent = on <br />6 #relative_only = on <br />7 #verbose = on/off <br />8 span_hosts = on/off <br />9 #noclobber = on/off <br />10 #quiet = on/off</p>
<p>앞의 번호는 편의를 위하여 붙여놓은 것입니다. '#'로 시작하는 행은 주석이므로 무시됩니다. 필요시 '#'를 제거하면 됩니다. '변수 = 값'으로 표현되며 대부분 원하는 값은 on 또는 off가 되고 일부분만 숫자 또는 문자열을 값으로 주게 됩니다. 각 행에 대해 간략히 설명합니다.</p>
<p>1: 원하는 파일의 형식을 나열 <br />2: 배제하기를 원하는 파일의 형식을 나열 <br />3: 재귀적 탐색 여부 <br />4: 재귀적 탐색의 깊이레벨 <br />5: 상위 디렉토리의 파일 배제의 여부 <br />6: 상대주소만 포함시킬 것인지의 여부 <br />7: 자세한 설명을 표시할 것인지의 여부 <br />8: 다른 호스트도 탐색할 것인지의 여부 <br />9: 같은 이름의 파일을 복사해 오지 않을 것인지의 여부 <br />10: 메세지를 전혀 보내지 않을 것인지의 여부</p>
<p><br />4 discussion위에서 설명한 옵션을 잘 활용하면 홈페이지에 갱신되는 내용을 웹 브라우저로 접근하지 않고서도 가져올 수 있다. 예를 들어, 만약 내가 잘 가는 무료 porn 사이트에 링크된 url에 올려져 있는 동영상을 보고 싶다고 하자. 다음과 같이 wget 명령을 사용한다.</p>
<p># wget -A mpg,mpeg,avi,asf -r -H -l 2 -nd -t 1 <a href="http://url.you.like">http://url.you.like</a></p>
<p>-A, -r, -H은 위에서 설명했고, 설명이 안된 옵션을 살펴보면, <br />-l 2 : Recursive depth. 재귀 검색의 깊이 레벨을 지정해준다. 2로 지정해주면, 메인 페이지에서 url을 따라가고 그 url에 링크된 비디오 파일을 가져오도록 한다.</p>
<p><br />-nd : No directories. 로칼에 다운받을 때 디렉토리를 생성하지 않고 모든 파일을 같은 디렉토리 안에 넣는다.</p>
<p><br />-t 1 : Retries. link된 url로 서버를 찾지 못할 때 retry 횟수를 지정한다. 여기서는 1번 시도를 하도록 지정했다.</p><p><strong><a href="https://youngsam.net/entry/wget-%EC%82%AC%EC%9A%A9%EB%B2%95?commentInput=true#entry446WriteComment">댓글 쓰기</a></strong></p>Vim, GVIM, 울트라에디트를 윈도우 기본 편집기로 만들기openkrhttps://youngsam.net/entry/Vim-GVIM-%EC%9A%B8%ED%8A%B8%EB%9D%BC%EC%97%90%EB%94%94%ED%8A%B8%EB%A5%BC-%EC%9C%88%EB%8F%84%EC%9A%B0-%EA%B8%B0%EB%B3%B8-%ED%8E%B8%EC%A7%91%EA%B8%B0%EB%A1%9C-%EB%A7%8C%EB%93%A4%EA%B8%B02009-05-13T00:04:37+09:002009-05-13T00:04:37+09:00윈도우 탐색기 등에서, 예를 들어 test.txt 같은 ".txt" 확장자의 텍스트 파일을 클릭하면 기본적으로 메모장이 실행됩니다. 윈도우XP에서 울트라에디트 <SPAN class=us-italic><EM><FONT face="Times New Roman">UltraEdit</FONT></EM></SPAN> 나, GVIM (Vim의 그래픽 모드 버전) 을 윈도우 기본 편집기로 만들려면 다음과 같이 합니다.<BR><BR>* test.txt 등의 아무 "텍스트 문서"를 하나 선택한 후, 그 파일을 마우스 우측 버튼으로 클릭하고<BR><BR>연결 프로그램 > <STRONG>프로그램 선택</STRONG><BR><BR>을 선택<BR><BR>* "연결 프로그램"이라는 대화상자가 나옴. 목록에서, 편집기로 사용할 프로그램을 고르거나, 또는 "찾아보기" 버튼을 눌러서 편집기의 실행파일을 직접 지정해 줍니다.<BR><BR>Gvim의 경로와 실행파일명은 대체로 "C:\Program Files\Vim\gvim.exe" 이렇고<BR><BR>울트에디트는 대체로 "C:\Program Files\IDM Computer Solutions\UltraEdit\uedit32.exe" 이렇습니다. 버전에 따라 조금 다릅니다.<BR><BR>* 대화상자에서 <STRONG>이 종류의 파일을 열 때 항상 선택된 프로그램 사용</STRONG> 이라는 곳에 체크해 줍니다. 그런 후 "확인" 버튼을 누릅니다.<BR><BR>* 이제 .txt 확장자 의 파일을 클릭하면, 메모장이 아닌 Gvim이나 울트라에디트가 실행될 것입니다. txt 확장자에 대한 "기본 편집기"가 된 것입니다.<BR><BR>예를 들어 .c 확장자의 C소스 파일을 Gvim에서 열려면, ".c" 라는 확장자의 파일을 선택하고 위의 작업을 해줍니다.<BR><BR>
<HR>
<BR>그런데 울트라에디트 내부에 있는 "파일 연결 기능"으로 txt 등의 특정 확장자와 울트라에디터를 연결해 주면 좀 복잡한 문제가 생기더군요. 파일 아이콘을 사용자 정의할 수 없다든지 하는... 그래서 위의 방법으로 지정하는 것이 좋습니다.<BR><p><strong><a href="https://youngsam.net/entry/Vim-GVIM-%EC%9A%B8%ED%8A%B8%EB%9D%BC%EC%97%90%EB%94%94%ED%8A%B8%EB%A5%BC-%EC%9C%88%EB%8F%84%EC%9A%B0-%EA%B8%B0%EB%B3%B8-%ED%8E%B8%EC%A7%91%EA%B8%B0%EB%A1%9C-%EB%A7%8C%EB%93%A4%EA%B8%B0?commentInput=true#entry440WriteComment">댓글 쓰기</a></strong></p>BAK 파일 삭제 배치 파일; 백업파일 지우기 BATopenkrhttps://youngsam.net/entry/BAK-%ED%8C%8C%EC%9D%BC-%EC%82%AD%EC%A0%9C-%EB%B0%B0%EC%B9%98-%ED%8C%8C%EC%9D%BC-%EB%B0%B1%EC%97%85%ED%8C%8C%EC%9D%BC-%EC%A7%80%EC%9A%B0%EA%B8%B0-BAT2009-05-13T00:03:32+09:002009-05-13T00:03:32+09:00".BAK" 확장자의 파일은 "백업파일"입니다. 백업파일이란, 어떤 파일을 편집/수정했을 때, 만일의 경우를 대비해 원래의 원본을 따로 보관해 둔 파일입니다. 편집한 파일에 문제가 있을 때는, 백업파일을 찾아서 원래대로 돌릴 수 있습니다. 예를 들어 test.txt 라는 파일을 에디터로 편집했을 경우, "test.bak" 또는 "test.txt.bak" 이라는 파일명으로 백업파일이 생성됩니다. 그러나 전문적인 편집기가 아닌 메모장 등에서는 백업파일을 만들지 않습니다.<BR><BR>다음 배치 파일을 ".bak" 확장자에 연결해 두면, 이제 .bak 확장자의 어떤 파일 1개를 클릭하면 그 폴더의 모든 .bak 파일들이 삭제됩니다.<BR><BR>
<H3>BAK 파일 자동 지우기 배치</H3><BR>배치파일명: bak.bat<BR>(이 파일을 패스(Path) 가 걸린 폴더에 넣어두면 편리합니다.)<BR>
<DIV class=wasabi-code-box>@echo off<BR>if exist *.bak del *.bak<BR><BR></DIV><BR><BR><p><strong><a href="https://youngsam.net/entry/BAK-%ED%8C%8C%EC%9D%BC-%EC%82%AD%EC%A0%9C-%EB%B0%B0%EC%B9%98-%ED%8C%8C%EC%9D%BC-%EB%B0%B1%EC%97%85%ED%8C%8C%EC%9D%BC-%EC%A7%80%EC%9A%B0%EA%B8%B0-BAT?commentInput=true#entry439WriteComment">댓글 쓰기</a></strong></p>도스에서 텍스트 파일 보기 명령어; DOS Text File Vieweropenkrhttps://youngsam.net/entry/%EB%8F%84%EC%8A%A4%EC%97%90%EC%84%9C-%ED%85%8D%EC%8A%A4%ED%8A%B8-%ED%8C%8C%EC%9D%BC-%EB%B3%B4%EA%B8%B0-%EB%AA%85%EB%A0%B9%EC%96%B4-DOS-Text-File-Viewer2009-05-13T00:02:09+09:002009-05-13T00:02:09+09:00도스(MS-DOS)나 윈도우의 도스창(명령프롬프트)에서 텍스트 파일의 내용을 화면에 출력하는 명령어는 <STRONG>type</STRONG> 입니다. 하드에 test.txt 라는 파일이 있을 때 도스에서<BR><BR><STRONG>type test.txt</STRONG><BR><BR>이런 명령을 입력하면 test.txt 파일의 내용이 도스 화면에 출력됩니다. 또는<BR><BR>
<DIV class="wasabi-box wasabi-code">type test.txt | more<BR></DIV><BR>이렇게 뒤에 파이프(|)기호와 more 명령을 추가하면, 1페이지씩 나누어서 화면에 출력됩니다. 이때 키보드의 <STRONG>q (큐)</STRONG> 키를 누르면 읽다가 중간에서 중지할 수 있습니다. 파이프(|)기호란, 키보드의 Shift키를 누르면서 백슬래쉬(\) 기호를 누르면 입력되는 수직선 문자입니다.<BR><BR>그리고<BR><BR><STRONG>edit test.txt</STRONG><BR><BR>라는 명령으로는, 텍스트 파일을 도스에서 편집할 수 있는 도스용 편집기(에디터)가 실행됩니다.<p><strong><a href="https://youngsam.net/entry/%EB%8F%84%EC%8A%A4%EC%97%90%EC%84%9C-%ED%85%8D%EC%8A%A4%ED%8A%B8-%ED%8C%8C%EC%9D%BC-%EB%B3%B4%EA%B8%B0-%EB%AA%85%EB%A0%B9%EC%96%B4-DOS-Text-File-Viewer?commentInput=true#entry438WriteComment">댓글 쓰기</a></strong></p>도스 PKZIP 폴더 압축 옵션, 디렉토리까지 압축하기 방법; Folder Directoryopenkrhttps://youngsam.net/entry/%EB%8F%84%EC%8A%A4-PKZIP-%ED%8F%B4%EB%8D%94-%EC%95%95%EC%B6%95-%EC%98%B5%EC%85%98-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC%EA%B9%8C%EC%A7%80-%EC%95%95%EC%B6%95%ED%95%98%EA%B8%B0-%EB%B0%A9%EB%B2%95-Folder-Directory2009-05-13T00:01:12+09:002009-05-13T00:01:12+09:00PKZIP 이라는 것은 도스(순수한 16비트 MS-DOS)용 ZIP 압축 프로그램입니다. PKZIP.EXE 라는 파일로 되어 있습니다. 그런데 지금 윈도우에서는 PKZIP 이 거의 사용되지 않고 WinZip(윈집)이나 WinRAR(윈라) 로 ZIP 파일을 다룹니다.<BR><BR>아무튼 PKZIP 에서 파일을 압축할 때, "하위 디렉토리까지" 즉 "하위 폴더까지 압축"하려면 "-rp" 라는 옵션을 붙입니다. "마이너스 + 소문자R + 소문자P" 입니다. 예를 들어<BR><BR>
<DIV class="wasabi-box wasabi-code">pkzip -rp test<BR></DIV><BR>이렇게 입력하면, 현재 디렉토리(폴더)에 있는 파일들과, 하위 디렉토리까지 모두 TEST.ZIP 이라는 파일명으로 압축됩니다.<BR><BR><BR>
<H3>pkunzip: 디렉터리까지 압축 풀기 명령</H3><BR>
<DIV class="wasabi-box wasabi-code">pkunzip -d test<BR></DIV><BR><SPAN style="COLOR: red">주의!</SPAN>:<BR>zip 압축을 풀 때에는 pkunzip 명령으로 푸는데, 이때 반드시 -d 옵션을 붙여야 합니다. -d 옵션이 없으면 풀 때, 원래의 폴더를 다시 생성해 주지 않고 현재 디렉토리에 모든 파일들을 한꺼번에 다 풀어버립니다.<BR><p><strong><a href="https://youngsam.net/entry/%EB%8F%84%EC%8A%A4-PKZIP-%ED%8F%B4%EB%8D%94-%EC%95%95%EC%B6%95-%EC%98%B5%EC%85%98-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC%EA%B9%8C%EC%A7%80-%EC%95%95%EC%B6%95%ED%95%98%EA%B8%B0-%EB%B0%A9%EB%B2%95-Folder-Directory?commentInput=true#entry437WriteComment">댓글 쓰기</a></strong></p>배치파일, 도스(DOS)에서 파일 삭제, 디렉토리 지우기 명령어; Delete Fileopenkrhttps://youngsam.net/entry/%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EB%8F%84%EC%8A%A4DOS%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EC%82%AD%EC%A0%9C-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EC%A7%80%EC%9A%B0%EA%B8%B0-%EB%AA%85%EB%A0%B9%EC%96%B4-Delete-File2009-05-13T00:00:14+09:002009-05-13T00:00:14+09:00도스창(명령 프롬프트)이나, 배치 파일 (Batch File) 에서, 불필요한 파일을 지우기 위해서는 <STRONG>del</STRONG> 이라는 명령어를 사용합니다.<BR><BR><BR>
<H3>지정한 파일 하나만 삭제하는 명령</H3><BR>
<DIV class="wasabi-box wasabi-code">del 0.obj<BR></DIV><BR>예를 들어 0.obj 라는 파일을 지우려면 위와 같이 합니다.<BR><BR><BR>
<H3>지정한 확장자의 파일들만 지우기 명령</H3><BR>
<DIV class="wasabi-box wasabi-code">del *.bak<BR></DIV><BR>.bak 확장자를 가진 모든 파일을 한꺼번에 지웁니다.<BR><BR><BR><BR>
<H3>읽기전용 파일 삭제</H3><BR>del /f 0.obj<BR>이런 식으로 /f 옵션을 붙여야 합니다. 그렇지 않으면 <STRONG>액세스가 거부되었습니다.</STRONG>라고 나오며 지워지지 않습니다.<BR><BR><BR>
<H3>숨김 속성 파일 (히든파일) 삭제</H3><BR>del /a 0.obj<BR>이렇게 /a 옵션을 붙입니다. 그렇지 않으면 <STRONG>D:\Y\0.obj을(를) 찾을 수 없습니다.</STRONG>라는 에러가 나고 지워지지 않습니다.<BR><BR><BR>
<H3>현재 디렉토리(폴더)의 모든 파일 한꺼번에 지우는 명령</H3><BR>
<DIV class="wasabi-box wasabi-code">del .<BR></DIV><BR>현재 디렉토리의 모든 파일을 지우려면 위와 같이 합니다. 위험한 작업이기에 도스가 우선 <STRONG>D:\Y\*, 계속하시겠습니까(Y/N)?</STRONG> 이렇게 물어봅니다. Y 키를 누르면 파일이 모두 지워집니다.<BR><BR>참고로 마침표(.)는 현재 디렉토리를 의미합니다.<BR><BR><BR>
<HR>
<BR><BR><BR>
<H3>하위 디렉토리(폴더) 지우기 명령</H3><BR>파일이 아닌 디렉토리를 지우려면 <STRONG>rmdir</STRONG> 이라는 명령어를 사용합니다.<BR>
<DIV class="wasabi-box wasabi-code">rmdir 000<BR></DIV><BR>현재 디렉토리 밑의 "000" 이라는 이름의 디렉토리를 위와 같은 방법으로 지울 수 있습니다.<BR><BR>다만 그 디렉토리 안에 파일이 들어 있으면 <STRONG>디렉터리가 비어 있지 않습니다.</STRONG> 이런 에러가 나고 지워지지 않습니다.<BR><BR>이때는<BR><STRONG>rmdir /s 000</STRONG><BR>이렇게 /s 옵션을 붙이면, 디렉토리가 비어 있지 않더라도 지워집니다. <SPAN style="COLOR: red">굉장히 위험한 옵션이니 주의가 필요합니다.</SPAN><BR><BR><BR><BR>
<HR>
<BR><SPAN style="COLOR: red">추가 사항:<BR>윈도 탐색기와 달리, 명령프롬프트(도스창)에서 파일을 지우면, 휴지통으로 들어가지 않고 곧바로 지워지기에 복구가 힘들거나 불가능합니다.<BR></SPAN><p><strong><a href="https://youngsam.net/entry/%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EB%8F%84%EC%8A%A4DOS%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EC%82%AD%EC%A0%9C-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EC%A7%80%EC%9A%B0%EA%B8%B0-%EB%AA%85%EB%A0%B9%EC%96%B4-Delete-File?commentInput=true#entry436WriteComment">댓글 쓰기</a></strong></p>배치파일로 디렉토리 생성 명령어, 폴더 만들기 방법; BAT Make Directory, Folderopenkrhttps://youngsam.net/entry/%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC%EB%A1%9C-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EC%83%9D%EC%84%B1-%EB%AA%85%EB%A0%B9%EC%96%B4-%ED%8F%B4%EB%8D%94-%EB%A7%8C%EB%93%A4%EA%B8%B0-%EB%B0%A9%EB%B2%95-BAT-Make-Directory-Folder2009-05-12T23:59:47+09:002009-05-12T23:59:47+09:00md 라는 명령을 사용하면, 배치파일 안에서나 도스 프롬프트에서나, 디렉토리(폴더)를 생성할 수 있습니다. md 뒤에 폴더 이름을 적어주면 간단히 생성됩니다. 다음 예제와 같습니다.<BR><BR>
<H3>BAT File에서, 폴더 생성하는 법</H3><BR>예제 배치파일 명: example.bat<BR>
<DIV class=wasabi-code-box>@echo off<BR><BR>:: 현재 디렉토리(폴더)에 AAA 라는 하위 디렉토리 생성하기<BR>md AAA<BR><BR><BR>:: ㅠㅠ 라는 폴더를 하나 만들고 그 속에<BR>:: 또 ㅎㅎ 라는 폴더를 만들고, ㅎㅎ 라는 폴더 속에<BR>:: ㅋㅋ 라는 폴더를 만드는 것입니다.<BR>:: 예를 들어 현재 디렉토리가 D:\Z 라면<BR>:: D:\Z\ㅠㅠ\ㅎㅎ\ㅋㅋ<BR>:: 이런 중첩된 폴더들이 한꺼번에 생성됩니다.<BR>:: 다만 윈도우98이나 MS-DOS에서는 이런 한꺼번에 생성하기가<BR>:: 되지 않을 것입니다.<BR>md ㅠㅠ\ㅎㅎ\ㅋㅋ<BR><BR></DIV><BR><BR><p><strong><a href="https://youngsam.net/entry/%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC%EB%A1%9C-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EC%83%9D%EC%84%B1-%EB%AA%85%EB%A0%B9%EC%96%B4-%ED%8F%B4%EB%8D%94-%EB%A7%8C%EB%93%A4%EA%B8%B0-%EB%B0%A9%EB%B2%95-BAT-Make-Directory-Folder?commentInput=true#entry435WriteComment">댓글 쓰기</a></strong></p>배치파일 명령어, 현재시간, 현재날짜, 현재시각 출력 방법; BATCH Time Dateopenkrhttps://youngsam.net/entry/%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EB%AA%85%EB%A0%B9%EC%96%B4-%ED%98%84%EC%9E%AC%EC%8B%9C%EA%B0%84-%ED%98%84%EC%9E%AC%EB%82%A0%EC%A7%9C-%ED%98%84%EC%9E%AC%EC%8B%9C%EA%B0%81-%EC%B6%9C%EB%A0%A5-%EB%B0%A9%EB%B2%95-BATCH-Time-Date2009-05-12T23:58:30+09:002009-05-12T23:58:30+09:00도스 명령어 중에 date 나 time 이라는 명령을 사용하면, 현재 날짜와 시간을 보거나 맞출 수 있습니다. 배치파일 안에서 현재 시각 등을 출력하려면 환경변수를 사용하는 것이 편리합니다. 다만, 윈도우2000이나 윈도우XP이상의 도스창에서만 되고, 16비트 MS-DOS나 윈도우98의 도스창에서는 안됩니다.<BR><BR>배치파일에서 현재 시간이나 현재 날짜를 화면에 출력하려면 DATE 와 TIME 이라는 기본 환경 변수를 사용하면 됩니다, 그 환경변수 속에 현재 날짜와 현재 시각이 실시간으로 항상 들어가 있습니다.<BR><BR>예를 들어<BR><STRONG>echo %date%</STRONG><BR>이렇게 하면 오늘 날짜가 "금 2007-11-16" 이런 식으로 화면에 출력됩니다.<BR><BR><BR><STRONG>echo %time%</STRONG><BR>이렇게 하면 현재 시각이 "14:18:03.95" 이렇게 24시간제로 표시됩니다.<BR><BR><BR><STRONG>echo %date% %time%</STRONG><BR>이렇게 하면 "금 2007-11-16 14:18:52.62" 이렇게 날짜와 시간이 합쳐져서 한꺼번에 출력됩니다.<BR><p><strong><a href="https://youngsam.net/entry/%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EB%AA%85%EB%A0%B9%EC%96%B4-%ED%98%84%EC%9E%AC%EC%8B%9C%EA%B0%84-%ED%98%84%EC%9E%AC%EB%82%A0%EC%A7%9C-%ED%98%84%EC%9E%AC%EC%8B%9C%EA%B0%81-%EC%B6%9C%EB%A0%A5-%EB%B0%A9%EB%B2%95-BATCH-Time-Date?commentInput=true#entry434WriteComment">댓글 쓰기</a></strong></p>도스에서 확장자 변환 방법; DOS에서 File Ext 바꾸는 법, 명령어openkrhttps://youngsam.net/entry/%EB%8F%84%EC%8A%A4%EC%97%90%EC%84%9C-%ED%99%95%EC%9E%A5%EC%9E%90-%EB%B3%80%ED%99%98-%EB%B0%A9%EB%B2%95-DOS%EC%97%90%EC%84%9C-File-Ext-%EB%B0%94%EA%BE%B8%EB%8A%94-%EB%B2%95-%EB%AA%85%EB%A0%B9%EC%96%B42009-05-12T23:57:54+09:002009-05-12T23:57:54+09:00도스에서 파일의 확장자만 변경하는 방법입니다. 예를 들어 test.txt 라는 파일의 확장자를 test.doc 으로 바꾸려면 다음과 같이 ren 명령을 사용하면 됩니다. ren은 파일명을 바꾸는 명령인데, 확장자도 파일명의 일부이기에 당연히 ren으로 변경할 수 있습니다.<BR><BR><STRONG>ren test.txt test.doc</STRONG><BR><BR>위와 같이 하면 이제, 현재 디렉토리(폴더)에 있는 test.txt 파일이 test.doc 으로 확장자만 변경되었을 것입니다.<BR><BR><BR>만약, 모든 .txt 확장자 파일들을 "한꺼번에" .doc 확장자로 변경하려면<BR><BR><STRONG>ren *.txt *.doc</STRONG><BR><BR>이렇게 하면 됩니다. 파일명 부분을 *(별표) 라는 와일드카드로 대체한 것입니다. 배치파일 안에서도 위의 명령들을 사용할 수 있습니다.<BR><BR><BR>그런데 도스창에서 실행한 명령의 결과는 취소가 되지 않습니다. 그래서 오타 등을 좀 주의를 해야 합니다.<BR><BR>반면, 윈도우 탐색기에서 F2키를 눌러 파일명이나 확장자를 변경했다면, Ctrl+Z키로 쉽게 취소할 수 있습니다.<p><strong><a href="https://youngsam.net/entry/%EB%8F%84%EC%8A%A4%EC%97%90%EC%84%9C-%ED%99%95%EC%9E%A5%EC%9E%90-%EB%B3%80%ED%99%98-%EB%B0%A9%EB%B2%95-DOS%EC%97%90%EC%84%9C-File-Ext-%EB%B0%94%EA%BE%B8%EB%8A%94-%EB%B2%95-%EB%AA%85%EB%A0%B9%EC%96%B4?commentInput=true#entry433WriteComment">댓글 쓰기</a></strong></p>갱신파일 찾는 도스 배치파일 예제; A Attrib File만 찾기 Dir 옵션openkrhttps://youngsam.net/entry/%EA%B0%B1%EC%8B%A0%ED%8C%8C%EC%9D%BC-%EC%B0%BE%EB%8A%94-%EB%8F%84%EC%8A%A4-%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EC%98%88%EC%A0%9C-A-Attrib-File%EB%A7%8C-%EC%B0%BE%EA%B8%B0-Dir-%EC%98%B5%EC%85%982009-05-12T23:56:33+09:002009-05-12T23:56:33+09:00갱신파일이란, 마지막 백업 이후로, 수정된 파일을 의미합니다. <STRONG>A</STRONG> 라는 "저장 속성"이 부여되어 있습니다. <STRONG>A</STRONG> 라는 "저장 속성"이 부여되어 있다는 이야기는, 수정된 이후로 백업을 아직 하지 않았으니 백업 대상에 추가하라는 뜻입니다.<BR><BR>백업을 한 후에는 <STRONG>A</STRONG> 라는 "저장 속성"을 OFF 시켜 주는 것이 원칙입니다. 그래야, 백업 이후로 수정이 되었는지 알 수 있습니다. 예를 들어 test.txt 라는 파일이 있을 때, 백업 프로그램이 이 파일을 CD-ROM 등에 백업한 후, A속성을 제거합니다. 그런 후 사용자가 메모장 등에서 test.txt 라는 파일을 다시 편집하고 저장하면 그 순간 <STRONG>A</STRONG> 속성이 다시 부여됩니다. test.txt 라는 파일이 갱신되었다는 사실을 알 수 있게 해 줍니다.<BR><BR>아무튼 하드에서, A속성이 있는 즉 갱신된 파일만 찾으려면, dir 명령에 옵션을 붙여 주면 됩니다. attrib 명령은 파일의 속성을 보거나 수정하는 명령어인데, 특정 속성의 파일만 찾을 수 있는 기능은 없더군요.<BR><BR><STRONG>dir /a:a</STRONG><BR><BR>이렇게 하면 A속성이 있는, 즉 내용이 갱신된 파일만 찾아서 목록을 보여 줍니다.<BR><BR><BR><STRONG>dir /a:a /s /b</STRONG><BR>이 경우 /s 옵션은 하위디렉토리까지 모두 찾으라는 뜻이고, /b 는 간략히 출력하라는 뜻입니다.<BR><BR>다음은 도스에서 attrib 명령을 실행하고, A속성의 갱신파일만 찾는 예제 화면입니다.<BR><BR>
<DIV class=wasabi-console-box>D:\Z>attrib<BR>A D:\Z\example.html<BR>A H D:\Z\새 ACDSee BMP Image.bmp<BR> D:\Z\새 WinZip File.ZIP<BR> D:\Z\새 텍스트 문서 (2).txt<BR>A D:\Z\새 텍스트 문서.txt<BR><BR>D:\Z><BR>D:\Z><BR>D:\Z><BR>D:\Z>dir /a:a /s /b<BR>D:\Z\example.html<BR>D:\Z\새 ACDSee BMP Image.bmp<BR>D:\Z\새 텍스트 문서.txt<BR>D:\Z\새 폴더\새 ACDSee PSD Image.psd<BR><BR>D:\Z><BR></DIV><BR><BR>"새 WinZip File.ZIP"과 "새 텍스트 문서 (2).txt" 파일에는 A속성이 없기 때문에, dir에서는 나오지 않았습니다. 즉 dir이, A속성이 있는 갱신된 파일만 찾아서 보여주고 있습니다.<BR><p><strong><a href="https://youngsam.net/entry/%EA%B0%B1%EC%8B%A0%ED%8C%8C%EC%9D%BC-%EC%B0%BE%EB%8A%94-%EB%8F%84%EC%8A%A4-%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EC%98%88%EC%A0%9C-A-Attrib-File%EB%A7%8C-%EC%B0%BE%EA%B8%B0-Dir-%EC%98%B5%EC%85%98?commentInput=true#entry432WriteComment">댓글 쓰기</a></strong></p>BAT 파일 반복 시키기 배치파일 문법openkrhttps://youngsam.net/entry/BAT-%ED%8C%8C%EC%9D%BC-%EB%B0%98%EB%B3%B5-%EC%8B%9C%ED%82%A4%EA%B8%B0-%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EB%AC%B8%EB%B2%95-12009-05-12T23:55:50+09:002009-05-12T23:55:50+09:00배치파일 문법에서는 어떤 부분을 반복하려면 라벨을 만든 후에 goto문을 사용하면 됩니다. 아래 예제 소스에서 :REDO 라는 부분이 라벨인데, 콜론(:) 뒤에 REDO 등의 적당한 이름을 지정하면 라벨이 됩니다.<BR><BR>아래 예제 소스는, "문자열 출력 작업"이라는 글자들을 도스창 화면에 출력시킨 후 대기 상태로 들어가는 일을 무한 반복합니다.<BR><BR><STRONG>무한 반복 시키기</STRONG><BR>배치 파일명: example.bat<BR>
<DIV class=wasabi-code-box>@echo off<BR><BR>:REDO<BR><BR>echo 문자열 출력 작업<BR>pause<BR><BR>goto REDO<BR><BR></DIV><BR><BR>위의 파일을 도스창을 열고 실행시키면, 다음 화면처럼 REDO... 사이의 부분이 무한 반복으로 실행됩니다. 키보드의 CTRL+C키를 눌러야만 중지됩니다.<BR><BR>
<DIV class=wasabi-console-box>Microsoft Windows XP [Version 5.1.2600]<BR>(C) Copyright 1985-2001 Microsoft Corp.<BR><BR>D:\Z>example.bat<BR>문자열 출력 작업<BR>계속하려면 아무 키나 누르십시오 . . .<BR>문자열 출력 작업<BR>계속하려면 아무 키나 누르십시오 . . .<BR>문자열 출력 작업<BR>계속하려면 아무 키나 누르십시오 . . .<BR>문자열 출력 작업<BR>계속하려면 아무 키나 누르십시오 . . .<BR>문자열 출력 작업<BR>계속하려면 아무 키나 누르십시오 . . .<BR>일괄 작업을 끝내시겠습니까 (Y/N)? y<BR><BR>D:\Z><BR></DIV><BR><BR>"계속하려면 아무 키나 누르십시오 . . ."라는 부분이 나오지 않고, 무작정 반복시키려면, 예제 소스에서 pause 라는 중지문을 삭제하면 됩니다.<BR><p><strong><a href="https://youngsam.net/entry/BAT-%ED%8C%8C%EC%9D%BC-%EB%B0%98%EB%B3%B5-%EC%8B%9C%ED%82%A4%EA%B8%B0-%EB%B0%B0%EC%B9%98%ED%8C%8C%EC%9D%BC-%EB%AC%B8%EB%B2%95-1?commentInput=true#entry431WriteComment">댓글 쓰기</a></strong></p>반복되는 명령 실행: 윈도우 도스창 / 리눅스 - Repeat Commandsopenkrhttps://youngsam.net/entry/%EB%B0%98%EB%B3%B5%EB%90%98%EB%8A%94-%EB%AA%85%EB%A0%B9-%EC%8B%A4%ED%96%89-%EC%9C%88%EB%8F%84%EC%9A%B0-%EB%8F%84%EC%8A%A4%EC%B0%BD-%EB%A6%AC%EB%88%85%EC%8A%A4-Repeat-Commands2009-05-12T23:54:44+09:002009-05-12T23:54:44+09:00윈도우의 도스창(명령 프롬프트) 이나 리눅스의 셀에는, 히스토리(History)라는 기능이 있습니다. "역사"라는 뜻이 아니고, 지금까지 입력했던 명령어들이 컴퓨터에 기록되어 있는 것입니다.<BR><BR>만약 dir 이라는 명령어를 방금 전에 실행했다면, 다시 dir 이라고 칠 필요 없이,<BR><BR>키보드의 "위쪽 화살표 키"를 한 번 눌러 주면,<BR><BR>dir 이라는 명령어가 다시 프롬프트에 나타납니다. 이때 Enter키만 치면 dir 명령이 다시 실행됩니다.<BR><BR>상하 화살표키를 여러 번 눌러보면, 한참 전에 입력했던 다른 명령어들도 나올 것입니다.<BR><BR><BR><STRONG>javac Foo.java && java Foo 53 451451 515 353</STRONG><BR>특히 이런 긴 명령어를 쳤다면, 다시 입력하기 힘들 것입니다. 이때는 히스토리 기능이 아주 큰 도움이 됩니다.<BR><BR><BR><BR>
<H3>배치 파일(Batch File)로</H3><BR>매일 일정한 명령어들을 반복 사용한다면, 그 명령어들을 배치 파일로 만들어 두면 편리합니다.<BR><BR><BR>예를 들어,<BR>D:드라이브의 Z폴더의 모든 파일을<BR>D:드라이브의 X폴더로 복사하고<BR>X폴더의 내용을 dir 명령으로 확인하는 작업을 매일 한다면<BR><BR>메모장으로, 다음과 같은 배치 파일을 만들어 두고, 이제 도스창에서 foo 라고만 치면, 복사 작업이 자동화됩니다.<BR><BR>파일명: foo.bat<BR>
<DIV class=wasabi-code-box>@echo off<BR><BR>copy d:\z\*.* d:\x\*.*<BR>dir d:\x<BR></DIV><BR><p><strong><a href="https://youngsam.net/entry/%EB%B0%98%EB%B3%B5%EB%90%98%EB%8A%94-%EB%AA%85%EB%A0%B9-%EC%8B%A4%ED%96%89-%EC%9C%88%EB%8F%84%EC%9A%B0-%EB%8F%84%EC%8A%A4%EC%B0%BD-%EB%A6%AC%EB%88%85%EC%8A%A4-Repeat-Commands?commentInput=true#entry430WriteComment">댓글 쓰기</a></strong></p>