나는 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