watch는 리눅스에서 주기적으로 출력을 보여주는 명령어입니다.
특정 명령어를 주기적으로 실행해야 할 때 유용한데 이 기능이 윈도우의 cmd나 PowerShell에서는 지원하지 않습니다.
하지만 지금 알려드리는 방법으로 윈도우의 cmd와 PowerShell에서 리눅스의 watch와 유사한 기능을 만들 수 있습니다.
1. Windows cmd에서 nvidia-smi 1초마다 실행하기
nvidia-smi는 현재 그래픽카드의 사용률을 확인할 수 있는 프로그램입니다.
for /l %g in () do @(nvidia-smi & timeout /t 1)
여기서 nvidia-smi 부분을 바꾸면 다른 프로그램을 실행할 수도 있습니다.
그리고 timeout /t 1 부분에서 숫자 부분만 바꾸면 갱신 간격도 변경할 수 있습니다.
그리고 여기서 보시는 것처럼 &로 여러 프로그램을 동시에 실행할 수도 있습니다.
위 코드로는 nvidia-smi의 결과가 계속 누적해서 보이게 됩니다.
그래서 cls 명령어를 조합해서 watch와 유사하게 동작하도록 만들 수 있습니다.
아래처럼 말이죠.
for /l %g in () do @(cls & nvidia-smi & timeout /t 1)
2. Windows PowerShell에서 nvidia-smi 1초마다 실행하기
PowerShell에서는 앞서 이야기한 명령줄이 실행되지 않습니다.
여기서는 아래처럼 사용하시면 됩니다.
while (1) {cls; nvidia-smi; sleep 1}
차이가 보이시나요?
while대신 for를 써도 무방합니다.
sleep대신 앞에서 썼던 timeout /t <n초>를 쓰셔도 됩니다.
자꾸 깜빡이는게 거슬리긴 하지만 갱신 주기를 늘리면 크게 거슬리지는 않으실 거예요.
딥러닝 학습할 때 주로 보게 되는데 윈도우 환경에서 할 때는 watch가 생각날 때마다 한 번씩 입력해서 봤는데 이걸 알게 된 뒤로는 많이 편해졌습니다.
'IT > Tips' 카테고리의 다른 글
[macOS] M1 맥북 path 설정 방법 (0) | 2021.06.13 |
---|---|
[macOS] 맥 터미널에서 사용자 이름 호스트 이름 숨기기 (0) | 2021.05.16 |
[macOS] 맥에서 .DS_Store파일 안 생기게 하는 방법 (2) | 2021.05.16 |
[macOS] 맥북에서 사용자 이름 변경하기 (0) | 2021.05.13 |
[macOS] 맥북 root 패스워드 설정 방법 (0) | 2021.05.12 |
프린터 인쇄 안될 때 오류 해결 방법 (2) | 2021.04.04 |
구글 드라이브 실패 네트워크 오류 해결 (2) | 2021.01.07 |
윈도우10 업데이트 오류 해결 - 장치에 중요한 보안 및 품질 수정이 누락되어 있습니다 (0) | 2020.11.04 |
댓글0