컴퓨터는 현존하는 가장 발전된 형태의 반복 기계라는 걸 대부분의 분들은 아실 겁니다. 


저는 윈도우나 리눅스 등을 사용하는데 둘 다 명령어를 특정 시간 마다 반복하는 도구들이 있습니다. 


리눅스에서는 cron 이 있고 윈도우에서는 "예약 작업"이 있습니다. 


그 중에서 오늘은 윈도우 예약 작업에서 batch 파일을 최소화 상태로 실행하는 방법에 대해 소개하려 합니다. 


윈도우 버튼을 누르고 예약 이라고 치면 아래 그림과 같이 예약 작업이라는 프로그램이 검색 됩니다.

해당 프로그램을 실행하면 "작업 스케줄러" 라는 프로그램이 실행되며 정해진 시간에 주기적으로 예약 작업을 실핼 할 수 있죠. 


저는 주기적으로 실행하는 프로그램들은 batch 파일로 만들어서 해당 잡업을 예약 작업으로 실행하곤 합니다. 


그런데 예약 작업이 실행될때마다 batch 파일 화면이 보이게 되니까 불편한 감이 있더군요. 


그래서 batch 파일을 최소화 상태로 실행하는 방법을 찾아보니 아래 주소의 글이 나오더군요. 


https://www.computerhope.com/issues/ch000932.htm


Windows 작업 스케줄러에서 아래와 같이 설정하면 myfile.bat 파일을 최소화 된 상태로 실행하고 종료시 화면도 없어지게 할 수 있습니다. 


cmd.exe /c start /min myfile.bat ^& exit


실제 제가 설정해서 사용하는 모습은 다음과 같습니다.

실행한 프로그램/스크립트 부분에 아래와 같이 cmd.exe 를 설정하고 나머지 argument 들을 인수 추가 부분에 설정 합니다. 


이렇게 하면 배치 파일을 최소화된 상태로 주기적으로 실행하고 실행된 이후에는 자동으로 종료 되게 할 수 있습니다.



오늘은 Synology NAS 에서 스크립트를 실행하는 방법에 대해 소개하려 합니다. 


저는 Synology NAS 를 주로 파일 다운로드 용도로 사용하는데~ 


다운로드 한 파일들 중에서 패턴이 있는 것들은 스크립트를 주기적으로 실행해서 자동으로 분류 하도록 합니다.


윈도우의 예약 작업, 리눅스의 Cron 등과 같이 Synology NAS 에는 "작업 스케쥴러"가 있습니다.


다음과 같이 제어판에서 "작업 스케줄러"를 실행하시면 됩니다. 

다음으로 당연히 스크립트가 있어야 겠고~


제가 주기적으로 실행하는 스크립트 명은 modify_files.sh 입니다. 제 home 폴더에 들어 있고 해당 파일의 절대 경로를 알아야 합니다. 


Synology NAS 의 File Station 에서 해당 파일을 클릭한 후에 오른쪽 클릭 하고 속성을 보면 위치 라는 부분에도 나오고 


터미널을 사용하시는 분들은 다음과 같이 타이핑 하면 절대 경로가 나옵니다.

realpath 파일명

ex) realpath modify_files.sh

이렇게 절대 경로를 알았다면 이제 예약된 작업과 트리거된 작업이 있는데~ 

예약된 작업은 시간에 따라 주기적으로 실행하는 것을 의미하고 트리거된 작업은 Synology NAS 를 시작 할때 또는 종료 할때 실행 되도록 하는 것을 의미 합니다.


저는 modify_files.sh 를 주기적으로 실행할 것이므로 "예약된 작업" 으로 만듭니다. 그리고 사용자 정의 스크립트를 선택합니다. 


다음으로 작업생성의 일반 탭에서 작업의 이름을 설정합니다. 본인이 원하는 이름으로 설정하면 됩니다. 사용자는 제 경험상 그냥 root 로 설정하는게 좋을 것 같습니다. 


다음으로 스케줄 탭에서 실행 주기를 설정 합니다. 


다음으로 작업 설정 탭에서 사용자 정의 스크립트 부분에 아까 위에서 알아낸 스크립트의 절대 경로를 넣습니다. 


이제 다 됐습니다. 


확인을 누른 후에 활성화 됨에 체크가 되어 있다면 정상적으로 실행 될 겁니다. 


해당 스크립트의 실행을 하지 않고 싶다면 활성화 됨 체크를 해제 하시면 되고 


다신 안 쓰고 싶다면 해당 작업을 선택하신 후에 아래와 같이 작업 -> 삭제를 클릭하시면 됩니다. 

Synology NAS 는 서버 입니다. 서버를 사용한다면 당연히 자동화를 많이 하면 많이 할 수록 효율적으로 사용 할 수 있을 겁니다.



  1. 평강줌마 2018.01.10 16:51 신고

    저는 정말 컴퓨터를 인터넷과 한글, 엑셀 작업용으로만 사용하나 봐요.
    처음 알게 되었네요. 꾹 누르고 갑니다.
    즐거운 오후 시간 되세요.

    • 남성 2018.01.10 17:00 신고

      요즘 사진이나 동영상이나 파일들이 많아지다 보니까 나스 많이들 사용하더라구요. 저도 Synology NAS 하나 장만해서 사용해 보고 있습니다. 즐거운 하루 되시고 매번 방문해 주셔서 감사합니다~

  2. 이재영 2019.03.17 11:07

    안녕하세요. 좋은 팁 잘보고갑니다.
    혹시 modify_files.sh 는 어디서 다운이 가능할까요?

    • 남성 2019.03.17 12:08 신고

      본인의 환경에 맞게 작성하셔서 사용하셔야 합니다.

      아래와 같이 파일을 찾아서 옮기는 간단한 스크립트 파일입니다.

      #!/bin/sh
      find /var/services/video/* -maxdepth 1 -name '*초인*가족*' -type f -exec mv {} /var/services/video/drama/초인가족 \;

윈도우를 사용하면서 "예약 작업" 많이들 사용 하시나요?

 

서버를 다루시는 분들이야 당연히 많이들 사용하실거고

 

리눅스를 다루는 분들이야 cron 을 통해 예약 작업들을 많이 사용 하실 겁니다.

 

윈도우 예약 작업은 아래 그림과 같이 작업 스케줄러를 통해서도 설정 할 수 있지만~

 

 

오늘은 간단하게 schtasks 명령을 사용해서 설정해 보겠습니다.

 

Schtasks 의 사용법은 아래 그림과 같이 cmd 창에 schtasks /? 라고 하면 설명이 나옵니다.

 

 

각 매개변수 목록에 대한 설명은 위 그림과 같이 schtasks /Create /? 와 같은 식으로 하면 나오고요~

 

저는 예약작업을 주로 powershell 을 사용해서 설정하는데~ 다음과 같이 하곤 합니다.

 

schtasks  /create  /tn "예약작업이름" /tr "C:\windows\system32\WindowsPowerShell\v1.0\powershell.exe  <Powershell File Path> " /sc 주기 /d 요일 /st 시간 /ru "System"


Ex) schtasks  /create  /tn "WEEKLY_REPORT" /tr "C:\windows\system32\WindowsPowerShell\v1.0\powershell.exe  D:\WEEKLY_REPORT.ps1" /sc weekly /d TUE /st 09:00:00 /ru "System"

 

위에 작성한 예제는 매주 화요일 오전 9시에 시스템 계정으로 WEEKLY_REPORT.ps1 파일을 실행하는 WEEKLY_REPORT 라는 이름의 예약작업을 설정하는 예 입니다.

 

위 명령을 실행하면~ 아래 그림과 같이 메시지가 나오고~


 

아래 그림과 같이 작업 스케줄러에서도 확인 할 수 있습니다.


 

cmd 창을 통해 위에 만들어진 WEEKLY_REPORT 예약 작업을 실행하려면~ 다음과 같이 간단하게 명령을 통해 처리 할 수 있습니다.

 

schtasks /RUN /TN " WEEKLY_REPORT"

  


오늘은 오픈 소스 파일 동기화 프로그램인 FreeFileSync에 대해 소개하려 합니다.

 

컴퓨터를 사용하다 보면 당연히 백업을 해야 하는 경우가 많이 생깁니다.

 

저는 운영체제가 깔려 있는 C:\ 에서 D:\ 로 백업을 주로 하는데~ 아무래도 이래 저래 윈도우를 주로 사용하게 되다 보니 마땅한 백업 툴이 별로 없더군요.

 

그래서 찾아보니 아래 주소의 FreeFileSync 라는 프로그램을 알게 되었습니다.

 

http://www.freefilesync.org/

 

FreeFileSync 는 윈도우뿐만 아니라 리눅스 맥 에서도 돌아가는 Cross-platform 툴 입니다.

 

다운로드는 아래 주소에서 받을 수 있습니다.

 

http://www.freefilesync.org/download.php

설치하면 아래 그림과 같이 생겼는데~

 

사용 방법도 굉장히 심플한데~ 위 그림과 같이 동기화 할 폴더를 설정하고~ 양방향을 할지 미러링을 할지 그냥 업데이트를 할지 설정한 다음에~

 

F9 를 누르거나 동기화 버튼을 누르면 동기화가 됩니다.

 

일괄작업으로 저장을 누르면 작업에 대한 배치 파일도 만들 수 있습니다.

 

예약 작업으로 걸어 놓고~ 운영체제 종료 시 자동으로 백업하게 하는 것도 좋은 방법일 것 같네요~


  1. 야옹야옹 2018.09.19 09:50

    좋은 정보 감사합니다.
    백업프로그램 마땅한거 없어서 애먹었는데...
    땡큐요~

+ Recent posts