Linux command

퇴근 후에도 서버에게 일을 시켜보자 - sleep 명령어

쥴리정 2024. 5. 27. 23:21

 많은 사람들이 모여 일하는 회사에서 업무를 하다 보면 한 명 한 명에게 자세한 업무 스킬을 알려주지 못하는 경우가 많다.

그래서 연차가 꽤나 되었는데도 가끔 "아니, 이 유용한 걸 아직도 모르고 있단 말이야?" 하고 놀라는 일도 있는데 그 중 대표적인 것이 리눅스 명령어 sleep 사용법이 되겠다.

이 명령어를 모르면 당장 서버 앞에 앉아 있을 때에만 서버에 명령어를 실행시킬 수 있는데 사용자 폭증, 라이센스 부족 등의 이유로 당장 실행을 못시킨다면 회의나 퇴근 등 서버 앞에 앉아 있지 못할 때에는 서버도 마냥 놀고 있어야 하는 상황이 되어버린다.

이럴 때 유용하게 사용하는 것이 sleep 명령어이다.

 

sleep 명령어는 뜻 그대로 아무것도 실행하지 말고 가만히 기다리고 있으라는 명령어로 주로 process 실행을 얼마간 대기시킬 때 사용한다.

 

커맨드 창에서

sleep 100

이렇게 타이핑 하면 100초 동안 가만히 있으라는 뜻이 된다.

 

자, 그럼 이 명령어를 어떤 경우에 사용하면 좋은지 예를 들어 보자.

레이아웃의 경우, 낮 근무시간에는 업무를 진행하고 있는 사람이 많기 때문에 검증 툴의 라이센스 잡는 것도 매우 어려울 때가 많다. 레이아웃이 완료된 블럭을 확인하고 싶은데 퇴근시간이 되어서 두시간은 걸려야 결과가 나오는 검증을 어쩔 수 없이 내일로 미뤄야 할 땐 이렇게 사용한다.

 

sleep 4h; calibre -drc designrule.drc

 

이렇게 입력하면 4시간 후에 designrule.drc 룰파일로 drc 검증을 진행하라는 명령어가 된다.

(;은 명령어를 이어서 실행할 때 사용하는 기호이다.)

즉, 내일 업무시간 두 시간을 벌게 되는 것이다.(간혹 뺀질이들은 이렇게 할 수 있는 걸 알면서도 굳이 내일 아침에 돌려 놓고 결과를 기다린다고 두 시간을 놀고 있는 경우도 있다....)

 

또 다른 예로 동시에 이것 저것 해야 할 일이 많을 때에는 레이아웃 완료 후 stream-out을 눌러 놓고 몇 분 후 검증 실행 하는 것을 깜빡 할 수 있다. Stream-out 완료되는 데 5분이면 충분하다 판단이 되면 필자의 경우는 stream-out 눌러 놓고 바로 커맨드 창에 아래와 같이 입력하고 나서 다른 일들을 하곤 한다.

 

sleep 5m; calibre -lvs designrule.lvs

 

이렇게 입력 해 놓으면 내가 잊고 있어도 서버는 5분 후에 알아서 lvs 검증을 돌려 놓는다.

 


sleep 명령어 사용법은 별도의 옵션 없이 sleep 뒤에 숫자만 입력하면 된다.

숫자가 정수이면 초단위로 인식하며, 숫자 뒤에 m을 붙이면 분 단위, h를 붙이면 시간 단위가 된다. 즉,

 

sleep 3600

sleep 60m

sleep 1h

 

위 세 줄은 모두 같은 뜻.

m,h 단위가 붙었을 때에는 아래와 같이 소숫점 표현이 가능하다.

 

sleep 3.5m

sleep 2.5h

 

자, 이제 정말 쉽고 간단한 sleep 명령어로 서버를 밤이건 새벽이건 내가 원하는 시간에 일을 하도록 만들어 보자!