언제 "...|읽을 때..."가 필요합니까?

언제 "...|읽을 때..."가 필요합니까?

나는 foo, bar, baz 세 파일이 중앙에 "+" 기호와 함께 수평으로 연결되어 있는 붙여넣기 명령에 대한 비디오 튜토리얼을 보았습니다.

cat foo
51
33
67

cat bar
10
1
13

cat baz
7
100
15

그래서 그는 붙여넣기 명령을 사용하여 각 줄을 완전한 추가로 처리하고 각 줄을 반복하는 while 루프에 파이프하여 이를 bc 계산기에 넣습니다.

paste -d+ foo bar baz | while read bla;do echo $bla|bc;done

왜 그가 복잡한 while 루프를 사용하는지 혼란스러워요

paste -d+ foo bar baz|bc 

또한 일했고,

하지만 그것은 나를 생각하게 만든다"어떤 경우에는 while 루프에 파이프하는 것이 합리적일까요, 아니면 무언가를 달성하는 유일한 방법일까요?"

답변1

이 경우 현재 진행 상황을 한 줄씩 출력하는 데 사용됩니다. 예를 들어 진행률 표시줄을 표시하는 데 파이프라인 while 루프가 유용한 경우가 있습니다. 진행률 표시줄 예:

for i in $(seq 1 100)
do
sleep 0.1 
echo $i
done | whiptail --title 'Test script' --gauge 'Running...' 6 60 0

관련 정보