'cat <<<$a’식의 문법은 무슨의미인가요?
<<<란 기능은 bash에 자체내장된 기능인가요? 아니면 bash의 기능이 조합된 형태인건가요?
bash에 새롭게 추가된 Here Strings이란 기능입니다. here documents의 변형입니다.
다른 스크립트 언어(PHP?)에서 유래된걸로 보입니다.
[code:23lro03q]<<<단어[/code:23lro03q]식으로 사용하며, 단어는 표준입력으로 재지향됩니다.
재지향 예제를 올려볼게요.
** 파일 재지향 **
echo "abc" > abc.txt
cat << abc.txt
==> 다음과 동일
cat abc.txt|cat
** Here Document **
cat <<EOF
abc
EOF
** Here String **
cat <<< abc
==>다음과 동일
echo "abc" | cat
** 파이프라인 **
echo "abc" | cat
** 표준에러 파이프라인 **
echo "abc" 1>&2 | cat 2>/dev/null
위의 모든 예제들의 결과는 같습니다.