!["FOO=bar.cpp meld a/$FOO b/$FOO"가 예상대로 작동하도록 하려면 어떻게 해야 합니까?](https://linux55.com/image/128519/%22FOO%3Dbar.cpp%20meld%20a%2F%24FOO%20b%2F%24FOO%22%EA%B0%80%20%EC%98%88%EC%83%81%EB%8C%80%EB%A1%9C%20%EC%9E%91%EB%8F%99%ED%95%98%EB%8F%84%EB%A1%9D%20%ED%95%98%EB%A0%A4%EB%A9%B4%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%ED%95%B4%EC%95%BC%20%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
내가 이해한 바로는, 다른 디렉터리에 있는 동일한 파일을 비교하려면 다음을 수행할 수 있어야 합니다.
FOO=bar.cpp meld a/$FOO b/$FOO
그러나 작동하지 않습니다. 마치 $FOO
빈 문자열과 같습니다. 이는 놀라운 일이 아닙니다.
(FOO=bar.cpp && meld a/$FOO b/$FOO)
내 질문은 첫 번째 예가 작동하지 않는 이유입니다.
답변1
존재하다:
FOO=bar.cpp meld a/$FOO b/$FOO
그것은간단한 명령이므로 FOO=bar.cpp
확장 중에는 실행되지 않습니다.$FOO
존재하다:
FOO=bar.cpp && meld a/$FOO b/$FOO
2가지 명령이 있습니다:
FOO=bar.cpp
그리고:
meld a/$FOO b/$FOO
에서 매개변수 대체를 수행할 때 , meld a/$FOO b/$FOO
가 FOO=bar.cpp
수행되므로 가 FOO
로 설정됩니다 bar.cpp
.