쉘 스크립트는 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줄 읽기)에 도달하면 절전 모드로 전환되고 카운터를 재설정하는 것입니다. 그런 다음 더 이상 입력이 없을 때까지 이와 같이 반복됩니다.