두 가지 매개변수를 사용하는 도구를 찾고 있습니다.
- 실행할 명령 및
- 목표치
그런 다음 도구는 명령을 지속적으로 실행하고 명령 출력에서 숫자를 찾은 다음 해당 숫자가 목표 값에 도달하는 데 걸리는 시간을 추정해야 합니다.
(이미 알고 있었어pv
그리고progress
, 그러나 이는 각각 파이프 및 coreutil 도구를 통해 전송된 데이터로 제한됩니다. 나는 좀 더 일반적인 것을 찾고 있습니다. )
예:파일 전송을 추적하고 싶다고 가정해 보겠습니다 scp
. 그런 다음 송신 측에서 크기를 확인하고 du -b
수신 측에서 계속 실행합니다. 다음과 같습니다.
$ du -bs source_directory
5798324564
$ *sometool* 5798324564 "ssh someserver du -bs destination_directory"
2019-01-28 21:03:10 - 23.2% - ETA 22:15:10 (1h 12m)
2019-01-28 21:03:40 - 26.3% - ETA 22:14:57 (1h 11m)
2019-01-28 21:04:10 - 29.3% - ETA 22:14:49 (1h 10m)
...
<continous output until 100% is reached>
...
2019-01-28 22:15:05 - 100% - done.
$
어떤 의미에서는 주어진 명령을 반복적으로 실행하는 것과 비슷 watch
하지만 차이점은인쇄명령의 출력은 다음과 같습니다.진행 가치 찾기출력에서 ETA를 계산합니다.
답변1
이를 수행하는 도구가 있습니다. 그것은 알려져 있습니다 eta
.
예는 다음과 같습니다.
다음은 몇 가지 리소스입니다.
- 에타 GitHub 저장소(자세한 사용 예는 README.md를 참조하세요)
- 에타 매뉴얼 페이지