업데이트하려는 오래된 스크립트가 있습니다. 일부 코드는 다음과 같이 요약됩니다.
export X=`(echo "abc"; echo "def")`
echo $X
예상 출력을 제공합니다.
abc def
이제 인터넷에서 백틱이 나왔다 $()는 것을 알 필요가 있지만 시도 할 때 :
export X=$((echo "abc"; echo "def"))
X 설정되어 있지 않고 오류가 발생합니다.
bash: echo "abc"; echo "def": syntax error: invalid arithmetic operator (error token is ""abc"; echo "def"")
내가 도대체 뭘 잘못하고있는 겁니까?
`...`과$(...)내측이되도록, 어쨌든 서브 쉘을 시작(...)(공정 낭비) 필요하지 않다. 예$( (...); (...) )를 들어 내부 서브 쉘이 필요할 수있는 공간이 필요합니다.