나는 다음과 같은 간단한 bash 스크립트를 사용하여 stdin에서 입력을 받고 입력으로 주어진 세 번째 행을 인쇄합니다. 내가 즉 세 번째 줄 예상 된 결과를 얻고 명령 행에 개별적으로 명령을 입력 할 때Bash 스크립트와 명령 행에서 수동으로 실행하는 명령
#!/bin/bash
var=$(cat)
echo $var | head -n 3 | tail -n 1
이 스크립트의 문제는,이 모든 라인을 출력하지만, 여기에 재미있는 부분이다. 왜이 이상한가? 내가 여기서 뭔가 잘못하고있는거야?
당신은 무엇인가를 입력하고 var에 저장하기 위해'cat'을 사용하고 있습니까? –
이 모든 것을'sed -n '3 {p; q}' '또는 유사하게 축소 할 수 없습니까? –