printf와 결합된 TOP 명령

printf와 결합된 TOP 명령

나는 간단하지만 사실인 진술을 가지고 있습니다:

#!/bin/bash
while true; do
    printf -- '-%.0s' {1..100}; echo "" | top -l 1 >> file.txt
    sleep 10
done

내가 직면한 문제는 명령문이 printf파일 내부가 아닌 콘솔에만 출력된다는 것입니다.

내 명령의 예상 결과는 각각의 새로운 상단 사이에 --- 구분 기호가 있는 파일에 상단 명령을 출력하는 것입니다. 이와 같이:

----------------
top output
---------------
top output
etc...

나는 또한 다음을 시도했습니다.

#!/bin/bash
while true; do
    (
    printf -- '-%.0s' {1..100}; echo ""
    top -l 1
    ) >> file.txt
    sleep 10
done

답변1

#!/bin/bash
while true; do
    printf -- '-%.0s' {1..100} >> file.txt 
    echo "" >> file.txt
    top -l 1 >> file.txt
    sleep 10
done

관련 정보