![파이프된 출력과 내부 계산의 차이점은 무엇입니까? [복사]](https://linux55.com/image/205117/%ED%8C%8C%EC%9D%B4%ED%94%84%EB%90%9C%20%EC%B6%9C%EB%A0%A5%EA%B3%BC%20%EB%82%B4%EB%B6%80%20%EA%B3%84%EC%82%B0%EC%9D%98%20%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
내 Git 원격 저장소 주소를 수정하려고 하는데 |
파이프()에 대해 혼란스럽습니다.
둘 사이의 차이점은 무엇입니까? 첫 번째 옵션이 작동하지 않는 이유는 무엇입니까?
# Doesn't work
git remote get-url origin | sed 's/old/new/' | git remote set-url origin
# Works
git remote set-url origin $(git remote get-url origin | sed 's/old/new/')
답변1
대답은 git remote set-url
명령줄에 마지막 인수(실제 URL)가 필요하다는 것입니다.아니요표준 입력으로 사용됩니다. 첫 번째 줄(파이프가 있는 줄)은 URL을 표준 입력으로 제공하려고 시도합니다.
두 번째 줄 OTOH는 URL을 명령줄 인수(마지막 항목)로 최상위 명령에 거의 정확하게 삽입합니다.
1 여기서 원치 않는 분할+글로브를 방지하기 위해 명령 대체 주위에 큰따옴표를 잊어버렸습니다.