0
cp 진행을 모니터하기 위해 다음 bash 스크립트를 찾았습니다.유닉스 strace 명령
#!/bin/sh
cp_p()
{
strace -q -ewrite cp -- "${1}" "${2}" 2>&1 \
| awk '{
count += $NF
if (count % 10 == 0) {
percent = count/total_size * 100
printf "%3d%% [", percent
for (i=0;i<=percent;i++)
printf "="
printf ">"
for (i=percent;i<100;i++)
printf " "
printf "]\r"
}
}
END { print "" }' total_size=$(stat -c '%s' "${1}") count=0
}
strace 명령에 "-ewrite"옵션을 이해하지 못합니다. 내가 찾은 가장 가까운 것은
-e 쓰기 = 세트가 지정된 세트에 나와있는 설명 을 파일에 기록 된 모든 데이터의 전체 16 진수 및 ASCII 덤프를 수행입니다 strace를위한 매뉴얼 페이지입니다. 예제의 경우 파일 설명자 3과 5의 모든 출력 활동을 보려면 -e 쓰기 = 3,5를 사용하십시오. 이것은 의 trace (write) 옵션에 의해 제어되는 인 write (2) 시스템 호출의 정상 추적과는 별도로 입니다.
그러나 필자는 -ewrite 옵션이 무엇을하는지 이해하지 못합니다.
당신이 @ http://chris-lamb.co.uk/2008/01/24/can-you-get-cp- 여기에서 코드를 받았어 progress-bar-like-wget /을 사용하고 보안 복사 ** scp **를 사용하여 대체 기술을 시도 했습니까? BTW 당신이 스크립트를 가져온 곳에서 스크립트의 소스를 지정 했어야합니다 ... – t0mm13b
세부 사항 :'strace'는 주로 리눅스이지만 다른 플랫폼에서도 사용할 수 있습니다. Solaris는 'truss'또는 Dtrace 시스템을 사용합니다. HP-UX 및 AIX의 동등 물이 무엇인지 결코 기억할 수 없습니다. –
@ tommieb75 네, 거기에서 대본을 받았습니다. – Albinoswordfish