드라이브 루트에 있는 모든 파일이 md5 합계를 계산한 다음 md5sum을 기준으로 출력을 정렬하도록 rsync
두 개의 USB 장치를 비교하고 있습니다 . 예를 들어 전체 명령은 다음으로 확장됩니다. 조급함 때문에 상황이 어떻게 진행되고 있는지, 즉 지금 어떤 파일이 처리되고 있는지 궁금합니다. 다른 명령으로 파이핑하기 때문에 atm을 해싱하는 파일을 볼 수 있는 stdout 또는 stderr이 없습니다. 다른 명령이 수행하는 작업을 보고할 수 있는 명령이 있습니까?md5sum /usb1/* /usb2/* | sort
md5sum /usb1/bigfile1 /usb1/bigfile2 /usb2/bigfile1 /usb2/bigfile2
지금?
"신호"로 표시했지만 신호로 md5sum 프로세스를 쉽게 중단할 수 있는 신호에 대해 충분히 알지 못합니다. dd
진행 상황을 보고하도록 신호를 보내는 것이 가능했던 것으로 기억합니다 .
답변1
당신은 그것을 사용할 수 있습니다progress
이를 위해:
progress -p $(pgrep md5sum)
또는 지속적인 모니터링을 원하는 경우 md5sum
:
progress -m -p $(pgrep md5sum)
md5sum
외부 도구를 사용하지 않고도 현재 Linux에서 어떤 파일에 액세스하고 있는지 나열 하여 /proc/$(pgrep md5sum)/fd
확인할 수 있으며 , .md5sum
/proc/$(pgrep md5sum)/fdinfo
말씀하신 대로 dd
진행 보고서는 수신되는 대로 인쇄되지만 이는 SIGUSR1
일반적인 신호 매개 기능이 아니라 구현된 기능입니다. dd
기본적으로 SIGUSR1
프로세스로 보내면 해당 프로세스가 종료됩니다.
답변2
또 다른 유사한 명령 cat
은 pv
파일 내용을 stdout으로 펌핑한 다음 다른 프로그램(md5sum)으로 파이프하고 stderr을 통해 진행률 표시를 출력합니다. 한 번에 하나의 파일에만 적합하지만. 다음과 같은 것을 사용하십시오pv /usb1/bigfile1 | md5sum