10 단위로 절전 모드로 전환하는 쉘 스크립트

10 단위로 절전 모드로 전환하는 쉘 스크립트

쉘 스크립트는 10줄 단위로 대기합니다. 나는 10줄을 읽을 때마다 스크립트가 3분 동안 잠자기 상태가 되도록 하고 싶습니다. 그런 다음 마지막 줄부터 시작하십시오. 저는 스크립팅을 잘 못해서 어디서부터 시작해야 할지 모르겠습니다. 누군가 아이디어가 있으면 조언을 주세요. 도움을 주시고 읽어주셔서 감사합니다

답변1

이것은 작동합니다:

#!/bin/bash
while read var
do
    echo $var #here you can do more stuff with $var (this is your line)

    count=$(( $count+1 ))
    if [ "$count" = "10" ]; then
        count=0
        sleep 180
    fi
done

foo.sh그런 다음 이를 실행 파일로 설정한 chmod +x foo.sh후 다음과 같이 실행할 수 있습니다 .

cat your_file.txt | ./foo.sh

스크립트가 수행하는 작업은 입력 줄을 읽고 저장하고 var인쇄한 다음 카운터를 1로 증가시키고 10회 반복(즉, 10줄 읽기)에 도달하면 절전 모드로 전환되고 카운터를 재설정하는 것입니다. 그런 다음 더 이상 입력이 없을 때까지 이와 같이 반복됩니다.

관련 정보